clocksource/drivers/timer-ti-dm: Use of_address_to_resource()

Replace of_get_address() and of_translate_address() calls with single
call to of_address_to_resource().

Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Link: https://lore.kernel.org/r/20230319163220.226273-1-robh@kernel.org
This commit is contained in:
Rob Herring 2023-03-19 11:32:20 -05:00 committed by Daniel Lezcano
parent f68a40ee47
commit 0fabf9f3a0

View file

@ -251,24 +251,22 @@ static void __init dmtimer_systimer_assign_alwon(void)
counter_32k = -ENODEV;
for_each_matching_node(np, dmtimer_match_table) {
struct resource res;
if (!dmtimer_is_preferred(np))
continue;
if (of_property_read_bool(np, "ti,timer-alwon")) {
const __be32 *addr;
if (!of_property_read_bool(np, "ti,timer-alwon"))
continue;
addr = of_get_address(np, 0, NULL, NULL);
pa = of_translate_address(np, addr);
if (pa) {
/* Quirky omap3 boards must use dmtimer12 */
if (quirk_unreliable_oscillator &&
pa == 0x48318000)
continue;
if (of_address_to_resource(np, 0, &res))
continue;
of_node_put(np);
break;
}
}
/* Quirky omap3 boards must use dmtimer12 */
if (quirk_unreliable_oscillator && res.start == 0x48318000)
continue;
of_node_put(np);
break;
}
/* Usually no need for dmtimer clocksource if we have counter32 */
@ -285,24 +283,22 @@ static void __init dmtimer_systimer_assign_alwon(void)
static u32 __init dmtimer_systimer_find_first_available(void)
{
struct device_node *np;
const __be32 *addr;
u32 pa = 0;
for_each_matching_node(np, dmtimer_match_table) {
struct resource res;
if (!dmtimer_is_preferred(np))
continue;
addr = of_get_address(np, 0, NULL, NULL);
pa = of_translate_address(np, addr);
if (pa) {
if (pa == clocksource || pa == clockevent) {
pa = 0;
continue;
}
if (of_address_to_resource(np, 0, &res))
continue;
of_node_put(np);
break;
}
if (res.start == clocksource || res.start == clockevent)
continue;
pa = res.start;
of_node_put(np);
break;
}
return pa;
@ -812,7 +808,7 @@ err_out_free:
*/
static int __init dmtimer_systimer_init(struct device_node *np)
{
const __be32 *addr;
struct resource res;
u32 pa;
/* One time init for the preferred timer configuration */
@ -826,8 +822,9 @@ static int __init dmtimer_systimer_init(struct device_node *np)
return -EINVAL;
}
addr = of_get_address(np, 0, NULL, NULL);
pa = of_translate_address(np, addr);
of_address_to_resource(np, 0, &res);
pa = (u32)res.start;
if (!pa)
return -EINVAL;