diff options
author | Linus Walleij <linus.walleij@linaro.org> | 2020-01-12 13:04:49 +0100 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2020-01-12 21:59:53 +0100 |
commit | f458ac479777c627c9b92ab640afec3bfa150660 (patch) | |
tree | 0e01d6af77d9021d30dc2e1acd5cc4df2349d810 /arch/arm/mach-ixp4xx/fsg-setup.c | |
parent | net: ehernet: ixp4xx: Use netdev_* messages (diff) | |
download | linux-f458ac479777c627c9b92ab640afec3bfa150660.tar.xz linux-f458ac479777c627c9b92ab640afec3bfa150660.zip |
ARM/net: ixp4xx: Pass ethernet physical base as resource
In order to probe this ethernet interface from the device tree
all physical MMIO regions must be passed as resources. Begin
this rewrite by first passing the port base address as a
resource for all platforms using this driver, remap it in
the driver and avoid using any reference of the statically
mapped virtual address in the driver.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'arch/arm/mach-ixp4xx/fsg-setup.c')
-rw-r--r-- | arch/arm/mach-ixp4xx/fsg-setup.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/arch/arm/mach-ixp4xx/fsg-setup.c b/arch/arm/mach-ixp4xx/fsg-setup.c index 648932d8d7a8..507ee3878769 100644 --- a/arch/arm/mach-ixp4xx/fsg-setup.c +++ b/arch/arm/mach-ixp4xx/fsg-setup.c @@ -132,6 +132,22 @@ static struct platform_device fsg_leds = { }; /* Built-in 10/100 Ethernet MAC interfaces */ +static struct resource fsg_eth_npeb_resources[] = { + { + .start = IXP4XX_EthB_BASE_PHYS, + .end = IXP4XX_EthB_BASE_PHYS + 0x0fff, + .flags = IORESOURCE_MEM, + }, +}; + +static struct resource fsg_eth_npec_resources[] = { + { + .start = IXP4XX_EthC_BASE_PHYS, + .end = IXP4XX_EthC_BASE_PHYS + 0x0fff, + .flags = IORESOURCE_MEM, + }, +}; + static struct eth_plat_info fsg_plat_eth[] = { { .phy = 5, @@ -151,12 +167,16 @@ static struct platform_device fsg_eth[] = { .dev = { .platform_data = fsg_plat_eth, }, + .num_resources = ARRAY_SIZE(fsg_eth_npeb_resources), + .resource = fsg_eth_npeb_resources, }, { .name = "ixp4xx_eth", .id = IXP4XX_ETH_NPEC, .dev = { .platform_data = fsg_plat_eth + 1, }, + .num_resources = ARRAY_SIZE(fsg_eth_npec_resources), + .resource = fsg_eth_npec_resources, } }; |