diff options
author | Grant Likely <grant.likely@secretlab.ca> | 2010-04-13 19:12:59 -0400 |
---|---|---|
committer | Grant Likely <grant.likely@secretlab.ca> | 2010-05-22 02:10:40 -0400 |
commit | cb6dc512b745292eaf123fedf437c211e27fb680 (patch) | |
tree | 56177ae8f827c346b9180aad8723be8e04b50153 /arch | |
parent | 58f9b0b02414062eaff46716bc04b47d7e79add5 (diff) |
arch/powerpc: Move dma_mask from of_device into pdev_archdata
By moving dma_mask into pdev_archdata, and adding archdata to
struct of_device, it makes it possible to substitute of_device
with struct platform_device, which is a stepping stone to
removing the of_platform bus entirely.
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/powerpc/include/asm/device.h | 1 | ||||
-rw-r--r-- | arch/powerpc/include/asm/of_device.h | 2 | ||||
-rw-r--r-- | arch/powerpc/kernel/of_device.c | 2 | ||||
-rw-r--r-- | arch/powerpc/kernel/of_platform.c | 2 |
4 files changed, 4 insertions, 3 deletions
diff --git a/arch/powerpc/include/asm/device.h b/arch/powerpc/include/asm/device.h index f23f8d8bd68d..a3954e4fcbe2 100644 --- a/arch/powerpc/include/asm/device.h +++ b/arch/powerpc/include/asm/device.h | |||
@@ -28,6 +28,7 @@ struct dev_archdata { | |||
28 | }; | 28 | }; |
29 | 29 | ||
30 | struct pdev_archdata { | 30 | struct pdev_archdata { |
31 | u64 dma_mask; | ||
31 | }; | 32 | }; |
32 | 33 | ||
33 | #endif /* _ASM_POWERPC_DEVICE_H */ | 34 | #endif /* _ASM_POWERPC_DEVICE_H */ |
diff --git a/arch/powerpc/include/asm/of_device.h b/arch/powerpc/include/asm/of_device.h index 8b26f96b9f9e..444e97e2982e 100644 --- a/arch/powerpc/include/asm/of_device.h +++ b/arch/powerpc/include/asm/of_device.h | |||
@@ -12,8 +12,8 @@ | |||
12 | */ | 12 | */ |
13 | struct of_device | 13 | struct of_device |
14 | { | 14 | { |
15 | u64 dma_mask; /* DMA mask */ | ||
16 | struct device dev; /* Generic device interface */ | 15 | struct device dev; /* Generic device interface */ |
16 | struct pdev_archdata archdata; | ||
17 | }; | 17 | }; |
18 | 18 | ||
19 | extern struct of_device *of_device_alloc(struct device_node *np, | 19 | extern struct of_device *of_device_alloc(struct device_node *np, |
diff --git a/arch/powerpc/kernel/of_device.c b/arch/powerpc/kernel/of_device.c index 20b3474b6f6b..df78e0236a02 100644 --- a/arch/powerpc/kernel/of_device.c +++ b/arch/powerpc/kernel/of_device.c | |||
@@ -70,7 +70,7 @@ struct of_device *of_device_alloc(struct device_node *np, | |||
70 | return NULL; | 70 | return NULL; |
71 | 71 | ||
72 | dev->dev.of_node = of_node_get(np); | 72 | dev->dev.of_node = of_node_get(np); |
73 | dev->dev.dma_mask = &dev->dma_mask; | 73 | dev->dev.dma_mask = &dev->archdata.dma_mask; |
74 | dev->dev.parent = parent; | 74 | dev->dev.parent = parent; |
75 | dev->dev.release = of_release_dev; | 75 | dev->dev.release = of_release_dev; |
76 | 76 | ||
diff --git a/arch/powerpc/kernel/of_platform.c b/arch/powerpc/kernel/of_platform.c index 1c747c474415..218853466510 100644 --- a/arch/powerpc/kernel/of_platform.c +++ b/arch/powerpc/kernel/of_platform.c | |||
@@ -74,7 +74,7 @@ struct of_device* of_platform_device_create(struct device_node *np, | |||
74 | if (!dev) | 74 | if (!dev) |
75 | return NULL; | 75 | return NULL; |
76 | 76 | ||
77 | dev->dma_mask = 0xffffffffUL; | 77 | dev->archdata.dma_mask = 0xffffffffUL; |
78 | dev->dev.coherent_dma_mask = DMA_BIT_MASK(32); | 78 | dev->dev.coherent_dma_mask = DMA_BIT_MASK(32); |
79 | 79 | ||
80 | dev->dev.bus = &of_platform_bus_type; | 80 | dev->dev.bus = &of_platform_bus_type; |