Re: [PATCH v3 0/2] Introduce spl_soc_init() for SoC specific initialization
Hi, pá 3. 5. 2024 v 8:10 odesílatel Lukas Funke napsal: > > Hi Michal, > > On 10.04.2024 09:06, Michal Simek wrote: > > Hi, > > > > On 4/8/24 14:59, Michal Simek wrote: > >> > >> > >> On 3/27/24 13:11, lukas.funke-...@weidmueller.com wrote: > >>> From: Lukas Funke > >>> > >>> > >>> Currently some vendors use spl_board_init() for their SoC > >>> specific initialization. This prohibits board developers from adding > >>> board init code using said function. This series introduces a new > >>> function in order to separate SoC init code from board init code. > >>> > >>> > >>> Changes in v3: > >>> - Rephrase Kconfig description and correct minor typo > >>> > >>> Changes in v2: > >>> - Change spl_arch_init() to spl_soc_init() > >>> > >>> Lukas Funke (2): > >>>spl: Introduce SoC specific init function > >>>arm64: zynq(mp): Rename spl_board_init() to spl_soc_init() > >>> > >>> arch/arm/Kconfig | 4 ++-- > >>> arch/arm/mach-zynq/spl.c | 4 ++-- > >>> arch/arm/mach-zynqmp/spl.c | 4 ++-- > >>> common/spl/Kconfig | 7 +++ > >>> common/spl/spl.c | 3 +++ > >>> include/spl.h | 8 > >>> 6 files changed, 24 insertions(+), 6 deletions(-) > >>> > >> > >> Applied. > > > > Actually I need to drop these two patches. > > I pushed it to CI and got this error. > > > > Building current source for 1 boards (1 thread, 32 jobs per thread) > > riscv64: + sifive_unleashed > > +In file included from board/sifive/unleashed/spl.c:17: > > +include/asm/arch/spl.h:12:5: error: conflicting types for > > 'spl_soc_init'; have 'int(void)' > > + 12 | int spl_soc_init(void); > > + | ^~~~ > > +In file included from board/sifive/unleashed/spl.c:10: > > +include/spl.h:825:6: note: previous declaration of 'spl_soc_init' with > > type 'void(void)' > > + 825 | void spl_soc_init(void); > > + | ^~~~ > > +make[3]: *** [scripts/Makefile.build:257: > > spl/board/sifive/unleashed/spl.o] Error 1 > > +make[2]: *** [scripts/Makefile.spl:533: spl/board/sifive/unleashed] > > Error 2 > > +make[1]: *** [Makefile:2055: spl/u-boot-spl] Error 2 > > +make: *** [Makefile:177: sub-make] Error 2 > > > > And it is valid because Risc-V guys are already using it. > > The issue should be fixed on master. The function name was changed from > spl_soc_init to spl_dram_init. The patch should apply now. Could you > give it another try? Looks good now. Applied. M --- Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91 w: www.monstr.eu p: +42-0-721842854 Maintainer of Linux kernel - Xilinx Microblaze Maintainer of Linux kernel - Xilinx Zynq ARM and ZynqMP ARM64 SoCs U-Boot custodian - Xilinx Microblaze/Zynq/ZynqMP/Versal SoCs
Re: [PATCH v3 0/2] Introduce spl_soc_init() for SoC specific initialization
Hi Michal, On 10.04.2024 09:06, Michal Simek wrote: Hi, On 4/8/24 14:59, Michal Simek wrote: On 3/27/24 13:11, lukas.funke-...@weidmueller.com wrote: From: Lukas Funke Currently some vendors use spl_board_init() for their SoC specific initialization. This prohibits board developers from adding board init code using said function. This series introduces a new function in order to separate SoC init code from board init code. Changes in v3: - Rephrase Kconfig description and correct minor typo Changes in v2: - Change spl_arch_init() to spl_soc_init() Lukas Funke (2): spl: Introduce SoC specific init function arm64: zynq(mp): Rename spl_board_init() to spl_soc_init() arch/arm/Kconfig | 4 ++-- arch/arm/mach-zynq/spl.c | 4 ++-- arch/arm/mach-zynqmp/spl.c | 4 ++-- common/spl/Kconfig | 7 +++ common/spl/spl.c | 3 +++ include/spl.h | 8 6 files changed, 24 insertions(+), 6 deletions(-) Applied. Actually I need to drop these two patches. I pushed it to CI and got this error. Building current source for 1 boards (1 thread, 32 jobs per thread) riscv64: + sifive_unleashed +In file included from board/sifive/unleashed/spl.c:17: +include/asm/arch/spl.h:12:5: error: conflicting types for 'spl_soc_init'; have 'int(void)' + 12 | int spl_soc_init(void); + | ^~~~ +In file included from board/sifive/unleashed/spl.c:10: +include/spl.h:825:6: note: previous declaration of 'spl_soc_init' with type 'void(void)' + 825 | void spl_soc_init(void); + | ^~~~ +make[3]: *** [scripts/Makefile.build:257: spl/board/sifive/unleashed/spl.o] Error 1 +make[2]: *** [scripts/Makefile.spl:533: spl/board/sifive/unleashed] Error 2 +make[1]: *** [Makefile:2055: spl/u-boot-spl] Error 2 +make: *** [Makefile:177: sub-make] Error 2 And it is valid because Risc-V guys are already using it. The issue should be fixed on master. The function name was changed from spl_soc_init to spl_dram_init. The patch should apply now. Could you give it another try? $ git grep spl_soc_init arch/arm/mach-zynq/spl.c:36:void spl_soc_init(void) arch/arm/mach-zynqmp/spl.c:61:void spl_soc_init(void) arch/riscv/cpu/fu540/spl.c:10:int spl_soc_init(void) arch/riscv/cpu/fu740/spl.c:13:int spl_soc_init(void) arch/riscv/cpu/jh7110/spl.c:31:int spl_soc_init(void) arch/riscv/include/asm/arch-fu540/spl.h:12:int spl_soc_init(void); arch/riscv/include/asm/arch-fu740/spl.h:12:int spl_soc_init(void); arch/riscv/include/asm/arch-jh7110/spl.h:10:int spl_soc_init(void); board/sifive/unleashed/spl.c:30: ret = spl_soc_init(); board/sifive/unmatched/spl.c:137: ret = spl_soc_init(); board/starfive/visionfive2/spl.c:214: ret = spl_soc_init(); common/spl/Kconfig:279: spl_soc_init() from board_init_r(). This function should be common/spl/spl.c:715: spl_soc_init(); include/spl.h:820: * spl_soc_init() - Do architecture-specific init in SPL include/spl.h:825:void spl_soc_init(void); It means please take a look at it and send v4. Thanks, Michal Best regards - Lukas
Re: [PATCH v3 0/2] Introduce spl_soc_init() for SoC specific initialization
Hi, On 4/8/24 14:59, Michal Simek wrote: On 3/27/24 13:11, lukas.funke-...@weidmueller.com wrote: From: Lukas Funke Currently some vendors use spl_board_init() for their SoC specific initialization. This prohibits board developers from adding board init code using said function. This series introduces a new function in order to separate SoC init code from board init code. Changes in v3: - Rephrase Kconfig description and correct minor typo Changes in v2: - Change spl_arch_init() to spl_soc_init() Lukas Funke (2): spl: Introduce SoC specific init function arm64: zynq(mp): Rename spl_board_init() to spl_soc_init() arch/arm/Kconfig | 4 ++-- arch/arm/mach-zynq/spl.c | 4 ++-- arch/arm/mach-zynqmp/spl.c | 4 ++-- common/spl/Kconfig | 7 +++ common/spl/spl.c | 3 +++ include/spl.h | 8 6 files changed, 24 insertions(+), 6 deletions(-) Applied. Actually I need to drop these two patches. I pushed it to CI and got this error. Building current source for 1 boards (1 thread, 32 jobs per thread) riscv64: + sifive_unleashed +In file included from board/sifive/unleashed/spl.c:17: +include/asm/arch/spl.h:12:5: error: conflicting types for 'spl_soc_init'; have 'int(void)' + 12 | int spl_soc_init(void); + | ^~~~ +In file included from board/sifive/unleashed/spl.c:10: +include/spl.h:825:6: note: previous declaration of 'spl_soc_init' with type 'void(void)' + 825 | void spl_soc_init(void); + | ^~~~ +make[3]: *** [scripts/Makefile.build:257: spl/board/sifive/unleashed/spl.o] Error 1 +make[2]: *** [scripts/Makefile.spl:533: spl/board/sifive/unleashed] Error 2 +make[1]: *** [Makefile:2055: spl/u-boot-spl] Error 2 +make: *** [Makefile:177: sub-make] Error 2 And it is valid because Risc-V guys are already using it. $ git grep spl_soc_init arch/arm/mach-zynq/spl.c:36:void spl_soc_init(void) arch/arm/mach-zynqmp/spl.c:61:void spl_soc_init(void) arch/riscv/cpu/fu540/spl.c:10:int spl_soc_init(void) arch/riscv/cpu/fu740/spl.c:13:int spl_soc_init(void) arch/riscv/cpu/jh7110/spl.c:31:int spl_soc_init(void) arch/riscv/include/asm/arch-fu540/spl.h:12:int spl_soc_init(void); arch/riscv/include/asm/arch-fu740/spl.h:12:int spl_soc_init(void); arch/riscv/include/asm/arch-jh7110/spl.h:10:int spl_soc_init(void); board/sifive/unleashed/spl.c:30:ret = spl_soc_init(); board/sifive/unmatched/spl.c:137: ret = spl_soc_init(); board/starfive/visionfive2/spl.c:214: ret = spl_soc_init(); common/spl/Kconfig:279: spl_soc_init() from board_init_r(). This function should be common/spl/spl.c:715: spl_soc_init(); include/spl.h:820: * spl_soc_init() - Do architecture-specific init in SPL include/spl.h:825:void spl_soc_init(void); It means please take a look at it and send v4. Thanks, Michal
Re: [PATCH v3 0/2] Introduce spl_soc_init() for SoC specific initialization
On 3/27/24 13:11, lukas.funke-...@weidmueller.com wrote: From: Lukas Funke Currently some vendors use spl_board_init() for their SoC specific initialization. This prohibits board developers from adding board init code using said function. This series introduces a new function in order to separate SoC init code from board init code. Changes in v3: - Rephrase Kconfig description and correct minor typo Changes in v2: - Change spl_arch_init() to spl_soc_init() Lukas Funke (2): spl: Introduce SoC specific init function arm64: zynq(mp): Rename spl_board_init() to spl_soc_init() arch/arm/Kconfig | 4 ++-- arch/arm/mach-zynq/spl.c | 4 ++-- arch/arm/mach-zynqmp/spl.c | 4 ++-- common/spl/Kconfig | 7 +++ common/spl/spl.c | 3 +++ include/spl.h | 8 6 files changed, 24 insertions(+), 6 deletions(-) Applied. M
[PATCH v3 0/2] Introduce spl_soc_init() for SoC specific initialization
From: Lukas Funke Currently some vendors use spl_board_init() for their SoC specific initialization. This prohibits board developers from adding board init code using said function. This series introduces a new function in order to separate SoC init code from board init code. Changes in v3: - Rephrase Kconfig description and correct minor typo Changes in v2: - Change spl_arch_init() to spl_soc_init() Lukas Funke (2): spl: Introduce SoC specific init function arm64: zynq(mp): Rename spl_board_init() to spl_soc_init() arch/arm/Kconfig | 4 ++-- arch/arm/mach-zynq/spl.c | 4 ++-- arch/arm/mach-zynqmp/spl.c | 4 ++-- common/spl/Kconfig | 7 +++ common/spl/spl.c | 3 +++ include/spl.h | 8 6 files changed, 24 insertions(+), 6 deletions(-) -- 2.30.2