Hi Tom, Thanks for the excellent review.
[...] >> +static struct async_emif_config default_async_emif_config[NUM_CS] = { >> + { /* CS0 */ >> + .mode = ASYNC_EMIF_MODE_NAND, >> + .select_strobe = ASYNC_EMIF_CS0_SELECT_STROBE, >> + .extend_wait = ASYNC_EMIF_CS0_EXTEND_WAIT, >> + .wr_setup = ASYNC_EMIF_CS0_WR_SETUP, >> + .wr_strobe = ASYNC_EMIF_CS0_WR_STROBE, >> + .wr_hold = ASYNC_EMIF_CS0_WR_HOLD, >> + .rd_setup = ASYNC_EMIF_CS0_RD_SETUP, >> + .rd_strobe = ASYNC_EMIF_CS0_RD_STROBE, >> + .rd_hold = ASYNC_EMIF_CS0_RD_HOLD, >> + .turn_around = ASYNC_EMIF_CS0_TURN_AROUND, >> + .width = ASYNC_EMIF_CS0_WIDTH, >> + }, [...] > A better place for all the preceding code would be in an arch *.h > The NUM_CS should likely be a CONFIG_ paramter. I have moved this over to board code instead, since the board should determine these based on the connected device's timings. [...] >> +static const struct pll_init_data plls[] = { >> + [SYS_PLL] = { >> + .config_enable = CONFIG_PLL_SYS_CONFIG, >> + .pll = SYS_PLL, >> + .internal_osc = CONFIG_PLL_SYS_INT_OSC, >> + .external_freq = CONFIG_PLL_SYS_EXT_FREQ, >> +#if (CONFIG_PLL_SYS_CONFIG) >> + .pll_freq = CONFIG_PLL_SYS_PLL_FREQ, >> + .div_freq = { >> + CONFIG_PLL_SYS_ARM1176_CLK, >> + CONFIG_PLL_SYS_DSP_CLK, >> + CONFIG_PLL_SYS_DDR_CLK, >> + CONFIG_PLL_SYS_FULL_CLK, >> + CONFIG_PLL_SYS_LCD_CLK, >> + CONFIG_PLL_SYS_VLYNQ_REF_CLK, >> + CONFIG_PLL_SYS_TSC_CLK, >> + CONFIG_PLL_SYS_HALF_CLK, >> + }, >> +#endif >> + }, [...] > Similar to above, the preceeding code is better placed in an arch *.h > Please move. Again, moved these initializations to board code instead. Some boards may opt to run at different rates. [...] >> +static const struct pin_config pin_table[] = { >> + TNETV107X_MUX_CFG(0, 0, MUX_MODE_1), >> + TNETV107X_MUX_CFG(0, 0, MUX_MODE_2), > > Change these immedates '0, 0' into #defines > Apply globally These are register indices and bit shifts, not really amenable to macro definition. I have put in a comment for the column contents. Regards Cyril. _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot