Message ID | 20171204212832.130100-12-sjg@chromium.org |
---|---|
State | Superseded |
Delegated to: | Alexander Graf |
Headers | show |
Series | efi: Enable basic sandbox support for EFI loader | expand |
On 12/04/2017 10:28 PM, Simon Glass wrote: > This undocumented function relies on arch-specific code to declare a nop Undocumented code is unsatisfactory. Please, add a comment to the function. Best regards Heinrich > weak version. Add the weak function in common code instead to avoid having > to duplicate the same function in each arch. > > Signed-off-by: Simon Glass <sjg@chromium.org> > --- > > Changes in v2: None > > arch/arm/include/asm/u-boot-arm.h | 1 - > arch/x86/include/asm/u-boot-x86.h | 1 - > arch/x86/lib/bootm.c | 4 ---- > common/bootm.c | 4 ++++ > include/bootm.h | 2 ++ > 5 files changed, 6 insertions(+), 6 deletions(-) > > diff --git a/arch/arm/include/asm/u-boot-arm.h b/arch/arm/include/asm/u-boot-arm.h > index ef4fca68ee..73ccf41f8c 100644 > --- a/arch/arm/include/asm/u-boot-arm.h > +++ b/arch/arm/include/asm/u-boot-arm.h > @@ -38,7 +38,6 @@ int arch_early_init_r(void); > > /* board/.../... */ > int board_init(void); > -void board_quiesce_devices(void); > > /* cpu/.../interrupt.c */ > int arch_interrupt_init (void); > diff --git a/arch/x86/include/asm/u-boot-x86.h b/arch/x86/include/asm/u-boot-x86.h > index 187fe5fd8c..d2e1426042 100644 > --- a/arch/x86/include/asm/u-boot-x86.h > +++ b/arch/x86/include/asm/u-boot-x86.h > @@ -85,7 +85,6 @@ static inline __attribute__((no_instrument_function)) uint64_t rdtsc(void) > /* board/... */ > void timer_set_tsc_base(uint64_t new_base); > uint64_t timer_get_tsc(void); > -void board_quiesce_devices(void); > > void quick_ram_check(void); > > diff --git a/arch/x86/lib/bootm.c b/arch/x86/lib/bootm.c > index e548cdbed5..60ae043f24 100644 > --- a/arch/x86/lib/bootm.c > +++ b/arch/x86/lib/bootm.c > @@ -33,10 +33,6 @@ int arch_fixup_fdt(void *blob) > return 0; > } > > -__weak void board_quiesce_devices(void) > -{ > -} > - > void bootm_announce_and_cleanup(void) > { > printf("\nStarting kernel ...\n\n"); > diff --git a/common/bootm.c b/common/bootm.c > index 9493a306cd..9fba0472ac 100644 > --- a/common/bootm.c > +++ b/common/bootm.c > @@ -47,6 +47,10 @@ static const void *boot_get_kernel(cmd_tbl_t *cmdtp, int flag, int argc, > char * const argv[], bootm_headers_t *images, > ulong *os_data, ulong *os_len); > > +__weak void board_quiesce_devices(void) > +{ > +} > + > #ifdef CONFIG_LMB > static void boot_start_lmb(bootm_headers_t *images) > { > diff --git a/include/bootm.h b/include/bootm.h > index 49813772ce..76b6ab42e6 100644 > --- a/include/bootm.h > +++ b/include/bootm.h > @@ -73,4 +73,6 @@ int bootm_decomp_image(int comp, ulong load, ulong image_start, int type, > void *load_buf, void *image_buf, ulong image_len, > uint unc_len, ulong *load_end); > > +void board_quiesce_devices(void); > + > #endif >
On 12/04/2017 11:41 PM, Heinrich Schuchardt wrote: > > > On 12/04/2017 10:28 PM, Simon Glass wrote: >> This undocumented function relies on arch-specific code to declare a nop > > Undocumented code is unsatisfactory. Please, add a comment to the function. Sorry I missed you put that in a separate patch (12/16). BR > > Best regards > > Heinrich > >> weak version. Add the weak function in common code instead to avoid >> having >> to duplicate the same function in each arch. >> >> Signed-off-by: Simon Glass <sjg@chromium.org> >> --- >> >> Changes in v2: None >> >> arch/arm/include/asm/u-boot-arm.h | 1 - >> arch/x86/include/asm/u-boot-x86.h | 1 - >> arch/x86/lib/bootm.c | 4 ---- >> common/bootm.c | 4 ++++ >> include/bootm.h | 2 ++ >> 5 files changed, 6 insertions(+), 6 deletions(-) >> >> diff --git a/arch/arm/include/asm/u-boot-arm.h >> b/arch/arm/include/asm/u-boot-arm.h >> index ef4fca68ee..73ccf41f8c 100644 >> --- a/arch/arm/include/asm/u-boot-arm.h >> +++ b/arch/arm/include/asm/u-boot-arm.h >> @@ -38,7 +38,6 @@ int arch_early_init_r(void); >> /* board/.../... */ >> int board_init(void); >> -void board_quiesce_devices(void); >> /* cpu/.../interrupt.c */ >> int arch_interrupt_init (void); >> diff --git a/arch/x86/include/asm/u-boot-x86.h >> b/arch/x86/include/asm/u-boot-x86.h >> index 187fe5fd8c..d2e1426042 100644 >> --- a/arch/x86/include/asm/u-boot-x86.h >> +++ b/arch/x86/include/asm/u-boot-x86.h >> @@ -85,7 +85,6 @@ static inline >> __attribute__((no_instrument_function)) uint64_t rdtsc(void) >> /* board/... */ >> void timer_set_tsc_base(uint64_t new_base); >> uint64_t timer_get_tsc(void); >> -void board_quiesce_devices(void); >> void quick_ram_check(void); >> diff --git a/arch/x86/lib/bootm.c b/arch/x86/lib/bootm.c >> index e548cdbed5..60ae043f24 100644 >> --- a/arch/x86/lib/bootm.c >> +++ b/arch/x86/lib/bootm.c >> @@ -33,10 +33,6 @@ int arch_fixup_fdt(void *blob) >> return 0; >> } >> -__weak void board_quiesce_devices(void) >> -{ >> -} >> - >> void bootm_announce_and_cleanup(void) >> { >> printf("\nStarting kernel ...\n\n"); >> diff --git a/common/bootm.c b/common/bootm.c >> index 9493a306cd..9fba0472ac 100644 >> --- a/common/bootm.c >> +++ b/common/bootm.c >> @@ -47,6 +47,10 @@ static const void *boot_get_kernel(cmd_tbl_t >> *cmdtp, int flag, int argc, >> char * const argv[], bootm_headers_t *images, >> ulong *os_data, ulong *os_len); >> +__weak void board_quiesce_devices(void) >> +{ >> +} >> + >> #ifdef CONFIG_LMB >> static void boot_start_lmb(bootm_headers_t *images) >> { >> diff --git a/include/bootm.h b/include/bootm.h >> index 49813772ce..76b6ab42e6 100644 >> --- a/include/bootm.h >> +++ b/include/bootm.h >> @@ -73,4 +73,6 @@ int bootm_decomp_image(int comp, ulong load, ulong >> image_start, int type, >> void *load_buf, void *image_buf, ulong image_len, >> uint unc_len, ulong *load_end); >> +void board_quiesce_devices(void); >> + >> #endif >> >
diff --git a/arch/arm/include/asm/u-boot-arm.h b/arch/arm/include/asm/u-boot-arm.h index ef4fca68ee..73ccf41f8c 100644 --- a/arch/arm/include/asm/u-boot-arm.h +++ b/arch/arm/include/asm/u-boot-arm.h @@ -38,7 +38,6 @@ int arch_early_init_r(void); /* board/.../... */ int board_init(void); -void board_quiesce_devices(void); /* cpu/.../interrupt.c */ int arch_interrupt_init (void); diff --git a/arch/x86/include/asm/u-boot-x86.h b/arch/x86/include/asm/u-boot-x86.h index 187fe5fd8c..d2e1426042 100644 --- a/arch/x86/include/asm/u-boot-x86.h +++ b/arch/x86/include/asm/u-boot-x86.h @@ -85,7 +85,6 @@ static inline __attribute__((no_instrument_function)) uint64_t rdtsc(void) /* board/... */ void timer_set_tsc_base(uint64_t new_base); uint64_t timer_get_tsc(void); -void board_quiesce_devices(void); void quick_ram_check(void); diff --git a/arch/x86/lib/bootm.c b/arch/x86/lib/bootm.c index e548cdbed5..60ae043f24 100644 --- a/arch/x86/lib/bootm.c +++ b/arch/x86/lib/bootm.c @@ -33,10 +33,6 @@ int arch_fixup_fdt(void *blob) return 0; } -__weak void board_quiesce_devices(void) -{ -} - void bootm_announce_and_cleanup(void) { printf("\nStarting kernel ...\n\n"); diff --git a/common/bootm.c b/common/bootm.c index 9493a306cd..9fba0472ac 100644 --- a/common/bootm.c +++ b/common/bootm.c @@ -47,6 +47,10 @@ static const void *boot_get_kernel(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[], bootm_headers_t *images, ulong *os_data, ulong *os_len); +__weak void board_quiesce_devices(void) +{ +} + #ifdef CONFIG_LMB static void boot_start_lmb(bootm_headers_t *images) { diff --git a/include/bootm.h b/include/bootm.h index 49813772ce..76b6ab42e6 100644 --- a/include/bootm.h +++ b/include/bootm.h @@ -73,4 +73,6 @@ int bootm_decomp_image(int comp, ulong load, ulong image_start, int type, void *load_buf, void *image_buf, ulong image_len, uint unc_len, ulong *load_end); +void board_quiesce_devices(void); + #endif
This undocumented function relies on arch-specific code to declare a nop weak version. Add the weak function in common code instead to avoid having to duplicate the same function in each arch. Signed-off-by: Simon Glass <sjg@chromium.org> --- Changes in v2: None arch/arm/include/asm/u-boot-arm.h | 1 - arch/x86/include/asm/u-boot-x86.h | 1 - arch/x86/lib/bootm.c | 4 ---- common/bootm.c | 4 ++++ include/bootm.h | 2 ++ 5 files changed, 6 insertions(+), 6 deletions(-)