Quoting Russell King - ARM Linux (2015-04-17 03:18:33) > On Fri, Apr 17, 2015 at 11:12:03AM +0200, Sebastian Hesselbarth wrote: > > On 17.04.2015 04:00, Michael Welling wrote: > > >On Fri, Apr 17, 2015 at 01:23:50AM +0200, Sebastian Hesselbarth wrote: > > >>On 17.04.2015 00:09, Michael Welling wrote: > > >>>On Thu, Apr 16, 2015 at 10:37:19PM +0200, Sebastian Hesselbarth wrote: > > >>>>On 16.04.2015 18:17, Michael Welling wrote: > > [...] > > >>>What would be the proper error path? > > >>>What cleanup is required? > > >> > > >>A proper error path would be to release any claimed resource > > >>on any error. If you look at the code, the only resources that > > >>need to be released are the two clocks in question. > > > > > >So for every error return in the probe function and in the of si5351_dt_parse > > >it needs to clk_put first right? > > > > Not quite. The driver should clk_put() every clock that it called a > > [of_]clk_get() for. The thing is that clocks can be passed by > > platform_data and we never claim them. > > I've always said clocks (as in struct clk) should never be passed through > platform data. +1 And for ccf clock drivers Stephen and I plan to change the behavior of clk_register() at some point so that it returns an error code and not a struct clk. This will make clk_dev the only way to get at a struct clk for users of the ccf implementation. Of course it is still possible to clk_get from some place and pass as platform_data, but every little bit helps. Regards, Mike > > -- > FTTC broadband for 0.8mile line: currently at 10.5Mbps down 400kbps up > according to speedtest.net. > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html