Messages in this thread | | | Subject | Re: [PATCH v4 0/9] Rewrite clk parent handling | From | Jeffrey Hugo <> | Date | Mon, 15 Apr 2019 12:05:56 -0600 |
| |
On 4/12/2019 12:31 PM, Stephen Boyd wrote: > There are a couple warts with clk parent handling in the common clk > framework. This patch series addresses one of those warts, parent-child > linkages. We use strings for all parent-child linkages, and this leads > to poorly written code that extracts clk names from struct clk pointers > and makes clk provider drivers use clk consumer APIs. I've converted the > fixed factor clk and I'm looking at converting users of other "basic" > clk types in follow-up patches so we can start moving drivers away from > string matching in the clk namespace. > > Changes from v3: > * Split clkdev patch into two > * New patch to let dev_of_node() accept NULL > * Use dev_of_node() in of_clk_hw_register() to avoid NULL deref > > Changes from v2: > * Dropped patches that got merged into v5.1-rc1 > * Introduced a new function of_clk_hw_register() > * Introduced 'index' into clk_parent_data structure > * Converted fixed-factor basic type to new design > * Fixed some bugs in a recent patch to clkdev, leading to > an essential API for clkdev based lookups working > > Changes from v1: > * Dropped new get_parent_hw, we'll pick it up in a later series > * Rebased to v5.0-rc6 to avoid conflicts with clk-fixes > * Renamed 'fallback' to 'name' and 'name' to 'fw_name' in parent map > * Made sure that clk_hw_get_parent_by_index() never sees an error pointer > so that we don't mistakenly try to defer an error pointer > * Fixed index passing mistake on of_clk_get_hw_from_clkspec() > * Copy over all the data from parent maps and free it correctly too > > Cc: Chen-Yu Tsai <wens@csie.org> > Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> > Cc: Jeffrey Hugo <jhugo@codeaurora.org> > Cc: Jerome Brunet <jbrunet@baylibre.com> > Cc: Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com> > Cc: Michael Turquette <mturquette@baylibre.com> > Cc: Miquel Raynal <miquel.raynal@bootlin.com> > Cc: Rob Herring <robh@kernel.org> > Cc: Russell King <linux@armlinux.org.uk> > > Stephen Boyd (9): > clkdev: Hold clocks_mutex while iterating clocks list > clkdev: Move clk creation outside of 'clocks_mutex' > clk: Prepare for clk registration API that uses DT nodes > driver core: Let dev_of_node() accept a NULL dev > clk: Add of_clk_hw_register() API for early clk drivers > clk: Allow parents to be specified without string names > clk: Look for parents with clkdev based clk_lookups > clk: Allow parents to be specified via clkspec index > clk: fixed-factor: Let clk framework find parent > > drivers/clk/clk-fixed-factor.c | 53 ++++-- > drivers/clk/clk.c | 326 +++++++++++++++++++++++++-------- > drivers/clk/clk.h | 2 + > drivers/clk/clkdev.c | 30 +-- > include/linux/clk-provider.h | 22 +++ > include/linux/device.h | 2 +- > 6 files changed, 327 insertions(+), 108 deletions(-) > > > base-commit: 9e98c678c2d6ae3a17cb2de55d17f69dddaa231b >
Tested-by: Jeffrey Hugo <jhugo@codeaurora.org>
-- Jeffrey Hugo Qualcomm Datacenter Technologies as an affiliate of Qualcomm Technologies, Inc. Qualcomm Technologies, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project.
| |