[U-Boot] [PATCH v4 07/27] Introduce generic global_data

Graeme Russ graeme.russ at gmail.com
Thu Mar 15 03:35:22 CET 2012


Hi Simon,

On Thu, Mar 15, 2012 at 1:16 PM, Simon Glass <sjg at chromium.org> wrote:
> We want to unify the global_data structure. Most fields are common across
> architectures, but there are a fair number of SOC-specific additions. It
> isn't clear how best to deal with these, but for now we just use #ifdef.
>
> Checkpatch warnings here might be unavoidable:
>
> warning: include/asm-generic/global_data.h,43: do not add new typedefs
> warning: include/asm-generic/global_data.h,117: Use of volatile is usually wrong: see Documentation/volatile-considered-harmful.txt
> warning: include/asm-generic/global_data.h,121: storage class should be at the beginning of the declaration
>
> Signed-off-by: Simon Glass <sjg at chromium.org>
> ---
>

> +#ifdef CONFIG_AT91FAMILY
> +       /* "static data" needed by at91's clock.c */
> +       unsigned long   cpu_clk_rate_hz;
> +       unsigned long   main_clk_rate_hz;
> +       unsigned long   mck_rate_hz;
> +       unsigned long   plla_rate_hz;
> +       unsigned long   pllb_rate_hz;
> +       unsigned long   at91_pllb_usb_init;
> +#endif
> +#ifdef CONFIG_ARM
> +       /* "static data" needed by most of timer.c on ARM platforms */
> +       unsigned long   timer_rate_hz;
> +       unsigned long   tbl;
> +       unsigned long   tbu;
> +       unsigned long long      timer_reset_value;
> +       unsigned long   lastinc;
> +#endif

IMHO, global data should contain only globally common members and an arch-
specific struct and ditch (most of) the #ifdefs

Regards,

Graeme


More information about the U-Boot mailing list