mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2024-12-29 09:12:07 +00:00
macintosh: Use of_address_to_resource()
Replace open coded reading of "reg" and of_translate_address() calls with single call to of_address_to_resource(). Signed-off-by: Rob Herring <robh@kernel.org> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://msgid.link/20230319163226.226583-1-robh@kernel.org
This commit is contained in:
parent
bc1cf75027
commit
93cfa6fb9f
@ -235,8 +235,7 @@ int __init find_via_cuda(void)
|
|||||||
int __init find_via_cuda(void)
|
int __init find_via_cuda(void)
|
||||||
{
|
{
|
||||||
struct adb_request req;
|
struct adb_request req;
|
||||||
phys_addr_t taddr;
|
struct resource res;
|
||||||
const u32 *reg;
|
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
if (vias)
|
if (vias)
|
||||||
@ -245,17 +244,12 @@ int __init find_via_cuda(void)
|
|||||||
if (!vias)
|
if (!vias)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
reg = of_get_property(vias, "reg", NULL);
|
err = of_address_to_resource(vias, 0, &res);
|
||||||
if (reg == NULL) {
|
if (err) {
|
||||||
printk(KERN_ERR "via-cuda: No \"reg\" property !\n");
|
printk(KERN_ERR "via-cuda: Error getting \"reg\" property !\n");
|
||||||
goto fail;
|
goto fail;
|
||||||
}
|
}
|
||||||
taddr = of_translate_address(vias, reg);
|
via = ioremap(res.start, 0x2000);
|
||||||
if (taddr == 0) {
|
|
||||||
printk(KERN_ERR "via-cuda: Can't translate address !\n");
|
|
||||||
goto fail;
|
|
||||||
}
|
|
||||||
via = ioremap(taddr, 0x2000);
|
|
||||||
if (via == NULL) {
|
if (via == NULL) {
|
||||||
printk(KERN_ERR "via-cuda: Can't map address !\n");
|
printk(KERN_ERR "via-cuda: Can't map address !\n");
|
||||||
goto fail;
|
goto fail;
|
||||||
|
@ -286,8 +286,9 @@ static char *pbook_type[] = {
|
|||||||
int __init find_via_pmu(void)
|
int __init find_via_pmu(void)
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_PPC_PMAC
|
#ifdef CONFIG_PPC_PMAC
|
||||||
|
int err;
|
||||||
u64 taddr;
|
u64 taddr;
|
||||||
const u32 *reg;
|
struct resource res;
|
||||||
|
|
||||||
if (pmu_state != uninitialized)
|
if (pmu_state != uninitialized)
|
||||||
return 1;
|
return 1;
|
||||||
@ -295,16 +296,12 @@ int __init find_via_pmu(void)
|
|||||||
if (vias == NULL)
|
if (vias == NULL)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
reg = of_get_property(vias, "reg", NULL);
|
err = of_address_to_resource(vias, 0, &res);
|
||||||
if (reg == NULL) {
|
if (err) {
|
||||||
printk(KERN_ERR "via-pmu: No \"reg\" property !\n");
|
printk(KERN_ERR "via-pmu: Error getting \"reg\" property !\n");
|
||||||
goto fail;
|
|
||||||
}
|
|
||||||
taddr = of_translate_address(vias, reg);
|
|
||||||
if (taddr == OF_BAD_ADDR) {
|
|
||||||
printk(KERN_ERR "via-pmu: Can't translate address !\n");
|
|
||||||
goto fail;
|
goto fail;
|
||||||
}
|
}
|
||||||
|
taddr = res.start;
|
||||||
|
|
||||||
pmu_has_adb = 1;
|
pmu_has_adb = 1;
|
||||||
|
|
||||||
@ -324,7 +321,6 @@ int __init find_via_pmu(void)
|
|||||||
|| of_device_is_compatible(vias->parent, "K2-Keylargo")) {
|
|| of_device_is_compatible(vias->parent, "K2-Keylargo")) {
|
||||||
struct device_node *gpiop;
|
struct device_node *gpiop;
|
||||||
struct device_node *adbp;
|
struct device_node *adbp;
|
||||||
u64 gaddr = OF_BAD_ADDR;
|
|
||||||
|
|
||||||
pmu_kind = PMU_KEYLARGO_BASED;
|
pmu_kind = PMU_KEYLARGO_BASED;
|
||||||
adbp = of_find_node_by_type(NULL, "adb");
|
adbp = of_find_node_by_type(NULL, "adb");
|
||||||
@ -338,11 +334,8 @@ int __init find_via_pmu(void)
|
|||||||
|
|
||||||
gpiop = of_find_node_by_name(NULL, "gpio");
|
gpiop = of_find_node_by_name(NULL, "gpio");
|
||||||
if (gpiop) {
|
if (gpiop) {
|
||||||
reg = of_get_property(gpiop, "reg", NULL);
|
if (!of_address_to_resource(gpiop, 0, &res))
|
||||||
if (reg)
|
gpio_reg = ioremap(res.start, 0x10);
|
||||||
gaddr = of_translate_address(gpiop, reg);
|
|
||||||
if (gaddr != OF_BAD_ADDR)
|
|
||||||
gpio_reg = ioremap(gaddr, 0x10);
|
|
||||||
of_node_put(gpiop);
|
of_node_put(gpiop);
|
||||||
}
|
}
|
||||||
if (gpio_reg == NULL) {
|
if (gpio_reg == NULL) {
|
||||||
|
Loading…
Reference in New Issue
Block a user