]> git.baikalelectronics.ru Git - kernel.git/commit
clk: iproc: Do not rely on node name for correct PLL setup
authorFlorian Fainelli <f.fainelli@gmail.com>
Mon, 5 Sep 2022 16:15:03 +0000 (09:15 -0700)
committerStephen Boyd <sboyd@kernel.org>
Thu, 29 Sep 2022 01:33:08 +0000 (18:33 -0700)
commit87f871dd40ed4ec554ea55eda066b8bf715662be
treec386b2398736156e954af760d19397691e256587
parentb8b567aa2d395a29121b1faa184bbb1ec88a8831
clk: iproc: Do not rely on node name for correct PLL setup

After commit 4f9987076450 ("ARM: dts: BCM5301X: update CRU block
description") a warning from clk-iproc-pll.c was generated due to a
duplicate PLL name as well as the console stopped working. Upon closer
inspection it became clear that iproc_pll_clk_setup() used the Device
Tree node unit name as an unique identifier as well as a parent name to
parent all clocks under the PLL.

BCM5301X was the first platform on which that got noticed because of the
DT node unit name renaming but the same assumptions hold true for any
user of the iproc_pll_clk_setup() function.

The first 'clock-output-names' property is always guaranteed to be
unique as well as providing the actual desired PLL clock name, so we
utilize that to register the PLL and as a parent name of all children
clock.

Fixes: e1adcbc42886 ("clk: iproc: add initial common clock support")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Rafał Miłecki <rafal@milecki.pl>
Link: https://lore.kernel.org/r/20220905161504.1526-1-f.fainelli@gmail.com
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
drivers/clk/bcm/clk-iproc-pll.c