14 Jul, 2016
1 commit
-
This patch enables IFC NAND support on ARM layerscape platform.
It fixes the dependency to enable NAND. The include files are being modified
to ensure complilation for both PowerPC and ARM architectures.Signed-off-by: Raghav Dogra
Acked-by: Scott Wood
Signed-off-by: Brian Norris
20 Apr, 2016
1 commit
-
The new IFC controller version 2.0 has a different memory map page.
Upto IFC 1.4 PAGE size is 4 KB and from IFC2.0 PAGE size is 64KB.
This patch segregates the IFC global and runtime registers to appropriate
PAGE sizes.Signed-off-by: Jaiprakash Singh
Signed-off-by: Raghav Dogra
Acked-by: Li Yang
Signed-off-by: Raghav Dogra
Acked-by: Scott Wood
Acked-by: Brian Norris
Signed-off-by: Boris Brezillon
02 Feb, 2016
1 commit
-
Replacing the NO_IRQ macro with 0. If there is no interrupt,
returned value will be 0 regardless of what NO_IRQ is defined.Signed-off-by: Raghav Dogra
Signed-off-by: Brian Norris
16 Dec, 2015
1 commit
-
Need to include sched.h to fix the following compilation error
if FSL_IFC is enabled on ARM64 machine.In file included from include/linux/mmzone.h:9:0,
from include/linux/gfp.h:5,
from include/linux/kmod.h:22,
from include/linux/module.h:13,
from drivers/memory/fsl_ifc.c:22:
drivers/memory/fsl_ifc.c: In function ‘check_nand_stat’:
include/linux/wait.h:165:35: error: ‘TASK_NORMAL’ undeclared (first use in this function)
#define wake_up(x) __wake_up(x, TASK_NORMAL, 1, NULL)
^
drivers/memory/fsl_ifc.c:136:3: note: in expansion of macro ‘wake_up’
wake_up(&ctrl->nand_wait);
^
include/linux/wait.h:165:35: note: each undeclared identifier is reported only once for each function it appears in
#define wake_up(x) __wake_up(x, TASK_NORMAL, 1, NULL)
^
drivers/memory/fsl_ifc.c:136:3: note: in expansion of macro ‘wake_up’
wake_up(&ctrl->nand_wait);
^Analysis is as follows:
I put some instrumental code and get the
following .h files inclusion sequence:In file included from ./arch/arm64/include/asm/compat.h:25:0,
from ./arch/arm64/include/asm/stat.h:23,
from include/linux/stat.h:5,
from include/linux/module.h:10,
from drivers/memory/fsl_ifc.c:23:
include/linux/sched.h:113:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘struct’
struct sched_attr {
^CONFIG_COMPAT=y is enabled while 39 and 48 bit VA is selected.
When 42 bit VA is selected, it does not enable CONFIG_COMPAT=yIn ./arch/arm64/include/asm/stat.h:23, it has
"#ifdef CONFIG_COMPAT"
"#include "
"..."
"#endif"Since ./arch/arm64/include/asm/stat.h does not
include ./arch/arm64/include/asm/compat.h,
then it will not include include/linux/sched.h
Hence we have to manually add "#include "
in drivers/memory/fsl_ifc.cSigned-off-by: Lijun Pan
Signed-off-by: Arnd Bergmann
08 Aug, 2015
1 commit
-
IFC IO accressor are set at run time based
on IFC IP registers endianness.IFC node in
DTS file contains information about
endianness.Signed-off-by: Jaiprakash Singh
Signed-off-by: Scott Wood
Acked-by: Brian Norris
06 Nov, 2014
1 commit
-
Freescale's QorIQ T Series processors support 8 IFC chip selects
within a memory map backward compatible with previous P Series
processors which supported only 4 chip selects.Signed-off-by: Aaron Sierra
Signed-off-by: Brian Norris
19 Feb, 2014
1 commit
-
Freescale IFC controller has been used for mpc8xxx. It will be used
for ARM-based SoC as well. This patch moves the driver to driver/memory
and fix the header file includes.Also remove module_platform_driver() and instead call
platform_driver_register() from subsys_initcall() to make sure this module
has been loaded before MTD partition parsing starts.Signed-off-by: Prabhakar Kushwaha
Acked-by: Arnd Bergmann
Signed-off-by: Greg Kroah-Hartman