diff options
| author | Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> | 2025-11-12 11:28:47 +0100 |
|---|---|---|
| committer | Rob Herring (Arm) <robh@kernel.org> | 2025-11-26 19:41:37 -0600 |
| commit | 6ea891a6dd370ab2600b160c13d95db95976a5c7 (patch) | |
| tree | adfe7d117ebb069b0a16d45c71f29fe53a31778f | |
| parent | 4a93adcbd201aad5ba607810cfe1b19d44e5d171 (diff) | |
cpufreq: dt-platdev: Simplify with of_machine_get_match_data()
Replace open-coded getting root OF node, matching against it and getting
the match data with two new helpers: of_machine_get_match_data() and
of_machine_device_match().
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Tested-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://patch.msgid.link/20251112-b4-of-match-matchine-data-v2-2-d46b72003fd6@linaro.org
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
| -rw-r--r-- | drivers/cpufreq/cpufreq-dt-platdev.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/drivers/cpufreq/cpufreq-dt-platdev.c b/drivers/cpufreq/cpufreq-dt-platdev.c index cd1816a12bb9..1fe527d5e4bf 100644 --- a/drivers/cpufreq/cpufreq-dt-platdev.c +++ b/drivers/cpufreq/cpufreq-dt-platdev.c @@ -218,20 +218,13 @@ static bool __init cpu0_node_has_opp_v2_prop(void) static int __init cpufreq_dt_platdev_init(void) { - struct device_node *np __free(device_node) = of_find_node_by_path("/"); - const struct of_device_id *match; - const void *data = NULL; + const void *data; - if (!np) - return -ENODEV; - - match = of_match_node(allowlist, np); - if (match) { - data = match->data; + data = of_machine_get_match_data(allowlist); + if (data) goto create_pdev; - } - if (cpu0_node_has_opp_v2_prop() && !of_match_node(blocklist, np)) + if (cpu0_node_has_opp_v2_prop() && !of_machine_device_match(blocklist)) goto create_pdev; return -ENODEV; |