diff options
Diffstat (limited to 'drivers/spi')
-rw-r--r-- | drivers/spi/mpc52xx_psc_spi.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/spi/mpc52xx_psc_spi.c b/drivers/spi/mpc52xx_psc_spi.c index 7051e6c5edc3..d398c93195e6 100644 --- a/drivers/spi/mpc52xx_psc_spi.c +++ b/drivers/spi/mpc52xx_psc_spi.c | |||
@@ -330,6 +330,7 @@ static void mpc52xx_psc_spi_cleanup(struct spi_device *spi) | |||
330 | 330 | ||
331 | static int mpc52xx_psc_spi_port_config(int psc_id, struct mpc52xx_psc_spi *mps) | 331 | static int mpc52xx_psc_spi_port_config(int psc_id, struct mpc52xx_psc_spi *mps) |
332 | { | 332 | { |
333 | struct device_node *np; | ||
333 | struct mpc52xx_cdm __iomem *cdm; | 334 | struct mpc52xx_cdm __iomem *cdm; |
334 | struct mpc52xx_gpio __iomem *gpio; | 335 | struct mpc52xx_gpio __iomem *gpio; |
335 | struct mpc52xx_psc __iomem *psc = mps->psc; | 336 | struct mpc52xx_psc __iomem *psc = mps->psc; |
@@ -338,8 +339,12 @@ static int mpc52xx_psc_spi_port_config(int psc_id, struct mpc52xx_psc_spi *mps) | |||
338 | int ret = 0; | 339 | int ret = 0; |
339 | 340 | ||
340 | #if defined(CONFIG_PPC_MERGE) | 341 | #if defined(CONFIG_PPC_MERGE) |
341 | cdm = mpc52xx_find_and_map("mpc5200-cdm"); | 342 | np = of_find_compatible_node(NULL, NULL, "mpc5200-cdm"); |
342 | gpio = mpc52xx_find_and_map("mpc5200-gpio"); | 343 | cdm = of_iomap(np, 0); |
344 | of_node_put(np); | ||
345 | np = of_find_compatible_node(NULL, NULL, "mpc5200-gpio"); | ||
346 | gpio = of_iomap(np, 0); | ||
347 | of_node_put(np); | ||
343 | #else | 348 | #else |
344 | cdm = ioremap(MPC52xx_PA(MPC52xx_CDM_OFFSET), MPC52xx_CDM_SIZE); | 349 | cdm = ioremap(MPC52xx_PA(MPC52xx_CDM_OFFSET), MPC52xx_CDM_SIZE); |
345 | gpio = ioremap(MPC52xx_PA(MPC52xx_GPIO_OFFSET), MPC52xx_GPIO_SIZE); | 350 | gpio = ioremap(MPC52xx_PA(MPC52xx_GPIO_OFFSET), MPC52xx_GPIO_SIZE); |