On Thu, Nov 19, 2015 at 11:26:30AM +0800, Songjun Wu wrote: > Set GCK's parent clock as audio clock, make > sure the GCK's parent clock is audio clock. > + ret = clk_set_parent(dd->gclk, dd->aclk); > + if (ret) { > + dev_err(dev, "failed to set GCK parent clock: %d\n", ret); > + return ret; > + } Why are we doing this in the driver? This should be done by whatever creates the clock tree, not by the driver that uses the clocks - that way if some future SoC has a different clock tree the driver will continue to work.