On Thu, Apr 29, 2010 at 12:23 PM, Mike Rapoport <mike@xxxxxxxxxxxxxx> wrote: > Vimal Singh wrote: >> >> On Wed, Apr 28, 2010 at 9:36 PM, Mike Rapoport <mike@xxxxxxxxxxxxxx> >> wrote: >>> >>> Signed-off-by: Mike Rapoport <mike@xxxxxxxxxxxxxx> >>> + if (gpmc_nand_data->keep_timings) { >>> + gpmc_nand_detect_timings(); >>> + gpmc_nand_data->gpmc_t = &gpmc_default_timings; >>> + } >>> + >> >> I guess moving this part to omap2_nand_gpmc_retime will be a good idea. >> As there, once we get old/default timings we can simply skip the >> rounding part and directly jump to setting the timings. > > This way it would be the same as to pass 'gpmc_nand_data->gpmc_t = > NULL'. If I correctly understood the previous comments ([1]), the > problem with skipping retime is that when L3 clock changes, the gpmc > timings became wrong. So, if we convert old/default timings to > nanoseconds early during startup every time retime is called it will use > the timing settings in nanoseconds thus yielding proper gpmc registers > configuration. OK. Then I think we can at least put __rounding__ code inside an 'if' case, something like: if (!gpmc_nand_data->keep_timings) { ... do rounding for supplied timings from board file. ... } > And, if I'm not terribly mistaken retime should be called each time L3 > frequency changes, though with current kernel it's not yet the case... Yes. This is still left. -- Regards, Vimal Singh -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html