Commit e0508b15 authored by Corey Minyard's avatar Corey Minyard Committed by Benjamin Herrenschmidt

powerpc: Add coherent_dma_mask to mv64x60 devices

DMA ops requires that coherent_dma_mask be set properly for a device,
but this was not being done for devices on the MV64x60 that use DMA.
Both the serial and ethernet devices need this or they won't be able
to allocate memory.
Signed-off-by: default avatarCorey Minyard <cminyard@mvista.com>
Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
parent ec144a81
...@@ -16,6 +16,7 @@ ...@@ -16,6 +16,7 @@
#include <linux/mv643xx.h> #include <linux/mv643xx.h>
#include <linux/platform_device.h> #include <linux/platform_device.h>
#include <linux/of_platform.h> #include <linux/of_platform.h>
#include <linux/dma-mapping.h>
#include <asm/prom.h> #include <asm/prom.h>
...@@ -189,6 +190,7 @@ static int __init mv64x60_mpsc_device_setup(struct device_node *np, int id) ...@@ -189,6 +190,7 @@ static int __init mv64x60_mpsc_device_setup(struct device_node *np, int id)
pdev = platform_device_alloc(MPSC_CTLR_NAME, port_number); pdev = platform_device_alloc(MPSC_CTLR_NAME, port_number);
if (!pdev) if (!pdev)
return -ENOMEM; return -ENOMEM;
pdev->dev.coherent_dma_mask = DMA_BIT_MASK(32);
err = platform_device_add_resources(pdev, r, 5); err = platform_device_add_resources(pdev, r, 5);
if (err) if (err)
...@@ -302,6 +304,7 @@ static int __init mv64x60_eth_device_setup(struct device_node *np, int id, ...@@ -302,6 +304,7 @@ static int __init mv64x60_eth_device_setup(struct device_node *np, int id,
if (!pdev) if (!pdev)
return -ENOMEM; return -ENOMEM;
pdev->dev.coherent_dma_mask = DMA_BIT_MASK(32);
err = platform_device_add_resources(pdev, r, 1); err = platform_device_add_resources(pdev, r, 1);
if (err) if (err)
goto error; goto error;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment