On 12/26/2011 12:33 PM, Simon Glass wrote: > From: Jimmy Zhang <jimmzh...@nvidia.com> > > Set Seaboard and Harmony to optimal memory settings based on the SOC > in use (T20 or T25). > > Signed-off-by: Simon Glass <s...@chromium.org>
> diff --git a/board/nvidia/common/emc.c b/board/nvidia/common/emc.c ... > +static const struct tegra_emc_table seaboard_emc_tables_hynix_333Mhz[] = { ... > +static const struct tegra_emc_table seaboard_emc_tables_hynix_380Mhz[] = { ... > +void seaboard_emc_init(void) ... > +static struct emc_init board_table[] = { > + { > + .id = MACH_TYPE_HARMONY, > + .init = NULL, > + }, > + { > + .id = MACH_TYPE_SEABOARD, > + .init = seaboard_emc_init, > + }, > +}; Why not just put the Seaboard-specific code into Seaboard's board directory instead of a common location? Then you wouldn't need this table at all, and boards other than Seaboard wouldn't be required to carry the Seaboard EMC tables. There don't appear to be any tables for Harmony, which is inconsistent with the commit description. > +int board_emc_init(void) > +{ > + int i; > + DECLARE_GLOBAL_DATA_PTR; > + > +#ifdef CONFIG_TEGRA_PMU > + /* if voltage has not been set properly, return */ > + if (!pmu_is_voltage_nominal()) > + return -1; > +#endif Why/when would the PMU voltage not be nominal? Can't we error out the compile if the options that cause the PMU voltage to be initialized to nominal are not set, instead of detecting this at runtime? Finally, I don't think there are EMC tables here for all the EMC frequencies that we have BCTs for. Perhaps that's not an issue, and perhaps I should ignore the other BCTs (e.g. 400MHZ EMC) since nobody actually uses them? -- nvpublic _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot