fsl-layerscape: fdt: add IFC fixup if no IFC is avaliable in U-Boot
PATCH v2 1/1 fsl-layerscape: fdt: add IFC fixup if no IFC is avaliable in U-Boot
IFC is considered as a required component in Layerscape platforms' Linux. But if IFC is not enabled in U-Boot on some boards, accessing IFC memory space would cause kernel call trace. So disable IFC node in such cases.
---
V2:
- Revised the title and message.
- Used #ifndef CONFIG_FSL_IFC rather than #ifdef CONFIG_FSL_QSPI.
arch/arm/cpu/armv8/fsl-layerscape/fdt.c | 5 +++++ 1 file changed, 5 insertions(+)
arch/arm/cpu/armv8/fsl-layerscape/fdt.c +5 -0
@@ -98,4 +98,9 @@ void ft_cpu_setup(void *blob, bd_t *bd)#ifdef CONFIG_SYS_DPAA_FMAN fdt_fixup_fman_firmware (blob);#endif + +#ifndef CONFIG_FSL_IFC +do_fixup_by_compat (blob,"fsl,ifc" , +"status" ,"disabled" ,8 +1 ,1 ); +#endif }
Signature · 1 line
2.1.0.27.g96db324
PATCH v2 1/1 fsl-layerscape: fdt: add IFC fixup if no IFC is avaliable in U-Boot
Quoted 30 lines
-----Original Message-----
From: Gong Qianyu [mailto:Qianyu.Gong at nxp.com]
Sent: Thursday, April 28, 2016 2:05 PM
To: u-boot at lists.denx.de; york sun; oss at buserror.net
Cc: Mingkai Hu; Qianyu Gong
Subject: [Patch v2] fsl-layerscape: fdt: add IFC fixup if no IFC is avaliable in U-BootIFC is considered as a required component in Layerscape platforms' Linux. But if IFC is not enabled in U-Boot on some boards, accessing IFC memory space would cause kernel call trace. So disable IFC node in such cases.
Signed-off-by Gong Qianyu <[email protected]>---
V2:
- Revised the title and message.
- Used #ifndefCONFIG_FSL_IFCrather than #ifdefCONFIG_FSL_QSPI.arch/arm/cpu/armv8/fsl-layerscape/fdt.c | 5 +++++ 1 file changed, 5 insertions(+)arch/arm/cpu/armv8/fsl- renamed from arch/arm/cpu/armv8/fsl-layerscape/fdt.c +0
-0
layerscape/fdt.c
index 1e875c4..96dab56 100644arch/arm/cpu/armv8/fsl-layerscape/fdt.c +0
-0@@ -98,4 +98,9 @@ void ft_cpu_setup(void *blob, bd_t *bd) #ifdef
CONFIG_SYS_DPAA_FMAN
arch/arm/cpu/armv8/fsl-layerscape/fdt.c void ft_cpu_setup(void *blob, bd_t *bd) · line 106
Quoted 8 lines
arch/arm/cpu/armv8/fsl-layerscape/fdt.c +5
-0fdt_fixup_fman_firmware (blob);#endif + +#ifndef CONFIG_FSL_IFC +do_fixup_by_compat (blob,"fsl,ifc" , +"status" ,"disabled" ,8 +1 ,1 ); +#endif }
Regards,
Mingkai
PATCH v2 1/1 fsl-layerscape: fdt: add IFC fixup if no IFC is avaliable in U-Boot
In reply to Gong QianyuQuoted 1 line · Gong Qianyu
IFC is considered as a required component in Layerscape platforms' Linux.
What does this mean?
Quoted 2 lines
But if IFC is not enabled in U-Boot on some boards, accessing IFC memory space would cause kernel call trace. So disable IFC node in such cases.
That's the symptom, not the problem. The problem is that the kernel is assuming that U-Boot has done certain initialization, such as the chipselect registers, and clearing SRAM (though Linux really should be doing the latter).
Why is U-Boot being configured without this?
-Scott
PATCH v2 1/1 fsl-layerscape: fdt: add IFC fixup if no IFC is avaliable in U-Boot
Quoted 9 lines
-----Original Message-----
From: U-Boot [mailto:u-boot-bounces at lists.denx.de] On Behalf Of Scott Wood
Sent: Tuesday, May 03, 2016 10:02 AM
To: Qianyu Gong <[email protected]>; u-boot at lists.denx.de; york sun <[email protected]>
Cc: Mingkai Hu <[email protected]>
Subject: Re: [U-Boot] [Patch v2] fsl-layerscape: fdt: add IFC fixup if no IFC is avaliable in U-Boot
Quoted 3 lines
Quoted 1 line · Gong Qianyu
IFC is considered as a required component in Layerscape platforms' Linux.
I don't think IFC is considered as a required component on all SoCs. The LS1012A does not have IFC.
Quoted 11 lines
What does this mean?
Quoted 2 lines
But if IFC is not enabled in U-Boot on some boards, accessing IFC memory space would cause kernel call trace. So disable IFC node in such
cases.
That's the symptom, not the problem. The problem is that the kernel is assuming that U-Boot has done certain initialization, such as the chipselect registers, and clearing SRAM (though Linux really should be doing the latter).
Why is U-Boot being configured without this?
Quoted 6 lines
-Scott
_______________________________________________
U-Boot mailing list
U-Boot at lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot
Calvin
PATCH v2 1/1 fsl-layerscape: fdt: add IFC fixup if no IFC is avaliable in U-Boot
In reply to Gong QianyuQuoted 19 lines · Gong Qianyu
IFC is considered as a required component in Layerscape platforms' Linux. But if IFC is not enabled in U-Boot on some boards, accessing IFC memory space would cause kernel call trace. So disable IFC node in such cases.
Signed-off-by Gong Qianyu <[email protected]>---
V2:
- Revised the title and message.
- Used #ifndefCONFIG_FSL_IFCrather than #ifdefCONFIG_FSL_QSPI.arch/arm/cpu/armv8/fsl-layerscape/fdt.c | 5 +++++ 1 file changed, 5 insertions(+)arch/arm/cpu/armv8/fsl-layerscape/fdt.c +0
-0
arch/arm/cpu/armv8/fsl-layerscape/fdt.c void ft_cpu_setup(void *blob, bd_t *bd) · line 106
Quoted 9 lines
arch/arm/cpu/armv8/fsl-layerscape/fdt.c +5
-0@@ -98,4 +98,9 @@ void ft_cpu_setup(void *blob, bd_t *bd)#ifdef CONFIG_SYS_DPAA_FMAN fdt_fixup_fman_firmware (blob);#endif + +#ifndef CONFIG_FSL_IFC +do_fixup_by_compat (blob,"fsl,ifc" , +"status" ,"disabled" ,8 +1 ,1 ); +#endif }
Qianyu,
For the platforms you are testing, is IFC disabled/enabled at SoC level (eg. RCW) or board level (eg. FPGA)? Can you detect if IFC is enabled by checking registers?
York
PATCH v2 1/1 fsl-layerscape: fdt: add IFC fixup if no IFC is avaliable in U-Boot
Hi York,
Quoted 41 lines
-----Original Message-----
From: York Sun [mailto:york.sun at nxp.com]
Sent: Tuesday, May 17, 2016 12:47 AM
To: Qianyu Gong <[email protected]>; u-boot at lists.denx.de;
oss at buserror.net
Cc: Mingkai Hu <[email protected]>
Subject: Re: [Patch v2] fsl-layerscape: fdt: add IFC fixup if no IFC is avaliable in U- BootQuoted 21 lines · Gong Qianyu
IFC is considered as a required component in Layerscape platforms' Linux. But if IFC is not enabled in U-Boot on some boards, accessing IFC memory space would cause kernel call trace. So disable IFC node in such cases.
Signed-off-by Gong Qianyu <[email protected]>---
V2:
- Revised the title and message.
- Used #ifndefCONFIG_FSL_IFCrather than #ifdefCONFIG_FSL_QSPI.arch/arm/cpu/armv8/fsl-layerscape/fdt.c | 5 +++++ 1 file changed, 5 insertions(+)arch/arm/cpu/armv8/fsl-layerscape/fdt.c +0
-0@@ -98,4 +98,9 @@ void ft_cpu_setup(void *blob, bd_t *bd) #ifdef
CONFIG_SYS_DPAA_FMANarch/arm/cpu/armv8/fsl-layerscape/fdt.c void ft_cpu_setup(void *blob, bd_t *bd) · line 106
Quoted 7 lines
arch/arm/cpu/armv8/fsl-layerscape/fdt.c +4
-0fdt_fixup_fman_firmware (blob);#endif + +#ifndef CONFIG_FSL_IFC +do_fixup_by_compat (blob,"fsl,ifc" , +"status" ,"disabled" ,8 +1 ,1 );#endif }Qianyu,
Quoted 5 lines
For the platforms you are testing, is IFC disabled/enabled at SoC level (eg. RCW) or board level (eg. FPGA)? Can you detect if IFC is enabled by checking registers?
York
For LS1043AQDS, IFC is disabled at board level(at SoC level, only IFC NOR is disabled). Yes, I can detect if IFC is enabled by checking QIXIS registers.
Regards,
Qianyu