Re: [PATCH v2 3/6] mv643xx.c: Add basic device tree support.
From: Arnd Bergmann <arnd@arndb.de>
Date: 2012-07-31 18:23:54
Also in:
linux-arm-kernel
On Tuesday 31 July 2012, Ian Molton wrote:
quoted hunk ↗ jump to hunk
@@ -33,6 +34,10 @@ struct of_dev_auxdata kirkwood_auxdata_lookup[] __initdata = { OF_DEV_AUXDATA("marvell,orion-wdt", 0xf1020300, "orion_wdt", NULL), OF_DEV_AUXDATA("marvell,orion-sata", 0xf1080000, "sata_mv.0", NULL), OF_DEV_AUXDATA("marvell,orion-nand", 0xf4000000, "orion_nand", NULL), + OF_DEV_AUXDATA("marvell,mv643xx", 0xf1072000, MV643XX_ETH_NAME ".0", + NULL), + OF_DEV_AUXDATA("marvell,mv643xx", 0xf1076000, MV643XX_ETH_NAME ".1", + NULL), {}, };
Please don't do string concatenation like this, it just makes it harder to grep for the strings.
quoted hunk ↗ jump to hunk
@@ -2654,15 +2677,22 @@ static int mv643xx_eth_shared_probe(struct platform_device *pdev) /* * Check whether the error interrupt is hooked up. */ - res = platform_get_resource(pdev, IORESOURCE_IRQ, 0); - if (res != NULL) { + if (pdev->dev.of_node) { + irq = irq_of_parse_and_map(pdev->dev.of_node, 0); + } else { + res = platform_get_resource(pdev, IORESOURCE_IRQ, 0); + if (res) + irq = res->start; + } +
Why is this necessary? In theory, the old code should be the same as the new one, unless something goes wrong in the domain registration. Arnd