Message ID | cover.1736174204.git.jerome.forissier@linaro.org |
---|---|
Headers | show |
Series | Static initcalls | expand |
On Mon, Jan 06, 2025 at 03:40:12PM +0100, Jerome Forissier wrote: > This series replaces the dynamic initcalls (with function pointers) with > static calls, and gets rid of initcall_run_list(), init_sequence_f, > init_sequence_f_r and init_sequence_r. This makes the code simpler and the > binary slighlty smaller: -2281 bytes/-0.21 % with LTO enabled and -510 > bytes/-0.05 % with LTO disabled (xilinx_zynqmp_kria_defconfig). > > Execution time doesn't seem to change noticeably. There is no impact on > the SPL. This fails in CI unfortunately: https://source.denx.de/u-boot/u-boot/-/pipelines/24241
On 1/17/25 22:46, Tom Rini wrote: > On Mon, Jan 06, 2025 at 03:40:12PM +0100, Jerome Forissier wrote: > >> This series replaces the dynamic initcalls (with function pointers) with >> static calls, and gets rid of initcall_run_list(), init_sequence_f, >> init_sequence_f_r and init_sequence_r. This makes the code simpler and the >> binary slighlty smaller: -2281 bytes/-0.21 % with LTO enabled and -510 >> bytes/-0.05 % with LTO disabled (xilinx_zynqmp_kria_defconfig). >> >> Execution time doesn't seem to change noticeably. There is no impact on >> the SPL. > > This fails in CI unfortunately: > https://source.denx.de/u-boot/u-boot/-/pipelines/24241 I found the problem. It was a silly mistake :-/ diff --git a/common/board_r.c b/common/board_r.c index 74ebbdc7de9..21a8b97d1bc 100644 --- a/common/board_r.c +++ b/common/board_r.c @@ -717,7 +717,7 @@ static void initcall_run_r(void) #endif INITCALL_EVT(EVT_SETTINGS_R); WATCHDOG_RESET(); -#if CONFIG_IS_ENABLED(PCI_INIT_R) && CONFIG_IS_ENABLED(SYS_EARLY_PCI_INIT) +#if CONFIG_IS_ENABLED(PCI_INIT_R) && !CONFIG_IS_ENABLED(SYS_EARLY_PCI_INIT) /* * Do pci configuration */ Shall I sent a v5? Thanks,
On Tue, Jan 21, 2025 at 05:05:58PM +0100, Jerome Forissier wrote: > > > On 1/17/25 22:46, Tom Rini wrote: > > On Mon, Jan 06, 2025 at 03:40:12PM +0100, Jerome Forissier wrote: > > > >> This series replaces the dynamic initcalls (with function pointers) with > >> static calls, and gets rid of initcall_run_list(), init_sequence_f, > >> init_sequence_f_r and init_sequence_r. This makes the code simpler and the > >> binary slighlty smaller: -2281 bytes/-0.21 % with LTO enabled and -510 > >> bytes/-0.05 % with LTO disabled (xilinx_zynqmp_kria_defconfig). > >> > >> Execution time doesn't seem to change noticeably. There is no impact on > >> the SPL. > > > > This fails in CI unfortunately: > > https://source.denx.de/u-boot/u-boot/-/pipelines/24241 > > I found the problem. It was a silly mistake :-/ > > diff --git a/common/board_r.c b/common/board_r.c > index 74ebbdc7de9..21a8b97d1bc 100644 > --- a/common/board_r.c > +++ b/common/board_r.c > @@ -717,7 +717,7 @@ static void initcall_run_r(void) > #endif > INITCALL_EVT(EVT_SETTINGS_R); > WATCHDOG_RESET(); > -#if CONFIG_IS_ENABLED(PCI_INIT_R) && CONFIG_IS_ENABLED(SYS_EARLY_PCI_INIT) > +#if CONFIG_IS_ENABLED(PCI_INIT_R) && !CONFIG_IS_ENABLED(SYS_EARLY_PCI_INIT) > /* > * Do pci configuration > */ > > Shall I sent a v5? Yes please, and push it through CI first ;)