On Tuesday 17 January 2017 05:56 PM, Bartosz Golaszewski wrote: > Register a dummy clock modelling the external SATA oscillator for I would not call it a dummy clock. Its representing something physically present. Just call it "fixed rate clock" ? > da850 DT mode. For non-DT boot we don't register the clock - instead > we rely on the default MPY value defined in the da850 ahci driver (as > is done currently). Here too, like David suggested, it will be nice to register it both for DT and non-DT case. With that I think your driver will be simple too since you dont have to worry about the case when refclkpn is not supplied. > Signed-off-by: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx> > --- > arch/arm/mach-davinci/da8xx-dt.c | 8 ++++++++ > arch/arm/mach-davinci/devices-da8xx.c | 23 +++++++++++++++++++++++ > arch/arm/mach-davinci/include/mach/da8xx.h | 1 + > 3 files changed, 32 insertions(+) > > diff --git a/arch/arm/mach-davinci/da8xx-dt.c b/arch/arm/mach-davinci/da8xx-dt.c > index b83e5d1..13137cb 100644 > --- a/arch/arm/mach-davinci/da8xx-dt.c > +++ b/arch/arm/mach-davinci/da8xx-dt.c > @@ -61,6 +61,14 @@ static void __init da850_init_machine(void) > pr_warn("%s: registering USB 1.1 PHY clock failed: %d", > __func__, ret); > > + if (of_machine_is_compatible("ti,da850-evm") || > + of_machine_is_compatible("ti,da850-lcdk")) { > + ret = da850_register_sata_refclk(100000000); > + if (ret) > + pr_warn("%s: registering SATA_REFCLK clock failed: %d", > + __func__, ret); > + } Since all supported boards use 100 Mhz refclk anyway, I would drop the machine check and just do: /* All existing boards use 100MHz SATA refclkpn */ unsigned long sata_refclkpn = 100 * 1000 * 1000; ret = da850_register_sata_refclk(sata_refclkpn); It should then be easy for the odd board (when it comes) to set sata_refclkpn to a different value. Thanks, Sekhar -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html