On Fri, Jul 14, 2017 at 11:57:35AM +0200, Ulf Hansson wrote: > >>> + if (host->use_new_timings) { > >>> + ret = sunxi_ccu_set_mmc_timing_mode(host->clk_mmc, true); > >> > >> Can't this be solved through some other generic API/interface? > > > > The old discussion is here: https://lkml.org/lkml/2017/5/5/77 > > > > It is possible to piggy back on existing API, but as Maxime mentioned > > back in the discussion, it is confusing. > > > > IIRC Mike said (via Maxime) an SoC specific call was the easy way > > to handle this. I don't think there's anything generic about this. > > Even if you could have a _set_mode callback for the clks, the modes > > would be SoC specific anyway. > > Right. But it would benefit that we can keep drivers generic, as they > are using generic APIs/interfaces. I prefer that. > > Anyway, let me try to dig up the earlier discussion. There's really not any generic way to support that. Even if we reuse some other function (clk_set_phase/clk_get_phase was suggested), and use error codes and / or values to differentiate between two modes, this will be very much implementation-specific as well, and any other SoC that in theory would be using that will very likely to not implement the same behaviour for its clocks. And this driver is only used on one SoC family, so it's not really a big deal anyway. Maxime -- Maxime Ripard, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
Attachment:
signature.asc
Description: PGP signature