clk: qcom: common: fix legacy board-clock registration
Subsystems (5)
PATCH 1/2 clk: qcom: common: fix legacy board-clock registration
Make sure to search only the child nodes of "/clocks", rather than the whole device-tree depth-first starting at "/clocks" when determining whether to register a fixed clock in the legacy board-clock registration helper.
--- drivers/clk/qcom/common.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
drivers/clk/qcom/common.c +4 -2
@@ -133,8 +133,10 @@ static int _qcom_cc_register_board_clk(struct device *dev, const char *path,int ret; clocks_node =of_find_node_by_path ("/clocks" ); -if (clocks_node) - node =of_find_node_by_name (clocks_node, path); +if (clocks_node) { + node =of_get_child_by_name (clocks_node, path); +of_node_put (clocks_node); + }if (!node) { fixed =devm_kzalloc (dev,sizeof (*fixed),GFP_KERNEL );
Signature · 1 line
2.15.0
PATCH 2/2 clk: ti: dra7-atl-clock: fix child-node lookups
Fix child node-lookup during probe, which ended up searching the whole device tree depth-first starting at parent rather than just matching on its children.
Note that the original premature free of the parent node has already been fixed separately, but that fix was apparently never backported to stable.
--- drivers/clk/ti/clk-dra7-atl.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
drivers/clk/ti/clk-dra7-atl.c +1 -2
@@ -274,8 +274,7 @@ static int of_dra7_atl_clk_probe(struct platform_device *pdev)/* Get configuration for the ATL instances */ snprintf (prop,sizeof (prop),"atl%u" , i); -of_node_get (node); - cfg_node =of_find_node_by_name (node, prop); + cfg_node =of_get_child_by_name (node, prop);if (cfg_node) { ret =of_property_read_u32 (cfg_node,"bws" , &cdesc->bws);
Signature · 1 line
2.15.0
Re: [PATCH 2/2] clk: ti: dra7-atl-clock: fix child-node lookups
Quoted 7 lines · Johan Hovold
Fix child node-lookup during probe, which ended up searching the whole device tree depth-first starting at parent rather than just matching on its children.
Note that the original premature free of the parent node has already been fixed separately, but that fix was apparently never backported to stable.
Quoted 25 lines
Fixes 9ac33b0ce81f ("CLK: TI: Driver for DRA7 ATL (Audio Tracking Logic)")Fixes 660e15519399 ("clk: ti: dra7-atl-clock: Fix of_node reference counting")Cc stable <[email protected]> # 3.16: 660e15519399Cc Peter Ujfalusi <[email protected]>Signed-off-by Johan Hovold <[email protected]>--- drivers/clk/ti/clk-dra7-atl.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)drivers/clk/ti/clk-dra7-atl.c +1
-2@@ -274,8 +274,7 @@ static int of_dra7_atl_clk_probe(struct platform_device *pdev)/* Get configuration for the ATL instances */ snprintf (prop,sizeof (prop),"atl%u" , i); -of_node_get (node); - cfg_node =of_find_node_by_name (node, prop); + cfg_node =of_get_child_by_name (node, prop);if (cfg_node) { ret =of_property_read_u32 (cfg_node,"bws" , &cdesc->bws);
Signature · 4 lines
Péter Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki
Stephen Boyd
AppliedRe: [PATCH 2/2] clk: ti: dra7-atl-clock: fix child-node lookups
In reply to Johan HovoldQuoted 8 lines · Johan Hovold
Fix child node-lookup during probe, which ended up searching the whole device tree depth-first starting at parent rather than just matching on its children.
Note that the original premature free of the parent node has already been fixed separately, but that fix was apparently never backported to stable.
Quoted 6 lines
Fixes 9ac33b0ce81f ("CLK: TI: Driver for DRA7 ATL (Audio Tracking Logic)")Fixes 660e15519399 ("clk: ti: dra7-atl-clock: Fix of_node reference counting")Cc stable <[email protected]> # 3.16: 660e15519399Cc Peter Ujfalusi <[email protected]>Signed-off-by Johan Hovold <[email protected]>---
Applied to clk-next
Signature · 2 lines
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project
Stephen Boyd
AppliedQuoted 8 lines · Johan Hovold
Make sure to search only the child nodes of "/clocks", rather than the whole device-tree depth-first starting at "/clocks" when determining whether to register a fixed clock in the legacy board-clock registration helper.
Fixes ee15faffef11 ("clk: qcom: common: Add API to register board clocks backwards compatibly")Signed-off-by Johan Hovold <[email protected]>---
Applied to clk-next
Signature · 2 lines
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project