Hi Steve,

On 11/03/15 14:22, Steve Kipisz wrote:

[...]

> Signed-off-by: Steve Kipisz <s-kipi...@ti.com>
> ---
> v2 Based on:
>  master     a6104737 ARM: at91: sama5: change the environment address to 
> 0x6000
> 
> Build testing: MAKEALL -s omap4 -s omap5 (no warnings/build errors)
>       Boot Testing:
>       am57xx_evm_nodt_config: http://pastebin.ubuntu.com/13039296/
>       beagle_x15_config: http://pastebin.ubuntu.com/13039331/
> 
> Changes in v2 (since v1):
>       - move the board detection code into the new routine
>         do_board_detect
>       - eliminate board.h and move the ix_xxx into board.c
>       - redo commit message to be more clear
> 
> v1:  http://marc.info/?t=144608007900002&r=1&w=2
>      http://marc.info/?t=144608007900004&r=1&w=2
>       (mailing list squashed original submission)

[...]

> +#define is_x15()     board_am_is("BBRDX15_")
> +#define is_am572x_evm()      board_am_is("AM572PM_")

I think board_is_* much more appropriate here...

> +
>  #ifdef CONFIG_DRIVER_TI_CPSW
>  #include <cpsw.h>
>  #endif
> @@ -246,6 +249,54 @@ struct vcores_data beagle_x15_volts = {
>       .iva.pmic               = &tps659038,
>  };
>  
> +#ifdef CONFIG_SPL_BUILD
> +/* No env to setup for SPL */
> +static inline void setup_board_eeprom_env(void) { }
> +
> +/* Override function to read eeprom information */
> +void do_board_detect(void)
> +{
> +     struct ti_am_eeprom *ep;
> +     int rc;
> +
> +     rc = ti_i2c_eeprom_am_get(CONFIG_EEPROM_BUS_ADDRESS,
> +                               CONFIG_EEPROM_CHIP_ADDRESS, &ep);
> +     if (rc)
> +             printf("ti_i2c_eeprom_init failed %d\n", rc);
> +}

Do you really need this in SPL?

> +
> +#else        /* CONFIG_SPL_BUILD */
> +
> +static void setup_board_eeprom_env(void)
> +{
> +     char *name = NULL;

How about:

        char *name = "beagle_x15";

> +     int rc;
> +     struct ti_am_eeprom_printable p;
> +
> +     rc = ti_i2c_eeprom_am_get_print(CONFIG_EEPROM_BUS_ADDRESS,
> +                                     CONFIG_EEPROM_CHIP_ADDRESS, &p);
> +     if (rc) {
> +             printf("Invalid EEPROM data(@0x%p). Default to X15\n",
> +                    TI_AM_EEPROM_DATA);
> +             goto invalid_eeprom;
> +     }
> +
> +     if (is_x15())
> +             name = "beagle_x15";

This will not be needed if the above comment is implemented.

> +     else if (is_am572x_evm())
> +             name = "am57xx_evm";
> +     else
> +             printf("Unidentified board claims %s in eeprom header\n",
> +                    p.name);
> +
> +invalid_eeprom:
> +     set_board_info_env(name, "beagle_x15", p.version, p.serial);

If the above comment is implemented, no more need for the
default_name parameter...

> +}
> +
> +/* Eeprom is alread read by SPL.. nothing more to do here.. */
> +
> +#endif       /* CONFIG_SPL_BUILD */

[...]


-- 
Regards,
Igor.
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to