Commit cb6dc512 authored by Grant Likely's avatar Grant Likely

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: default avatarGrant Likely <grant.likely@secretlab.ca>
parent 58f9b0b0
...@@ -28,6 +28,7 @@ struct dev_archdata { ...@@ -28,6 +28,7 @@ struct dev_archdata {
}; };
struct pdev_archdata { struct pdev_archdata {
u64 dma_mask;
}; };
#endif /* _ASM_POWERPC_DEVICE_H */ #endif /* _ASM_POWERPC_DEVICE_H */
...@@ -12,8 +12,8 @@ ...@@ -12,8 +12,8 @@
*/ */
struct of_device struct of_device
{ {
u64 dma_mask; /* DMA mask */
struct device dev; /* Generic device interface */ struct device dev; /* Generic device interface */
struct pdev_archdata archdata;
}; };
extern struct of_device *of_device_alloc(struct device_node *np, extern struct of_device *of_device_alloc(struct device_node *np,
......
...@@ -70,7 +70,7 @@ struct of_device *of_device_alloc(struct device_node *np, ...@@ -70,7 +70,7 @@ struct of_device *of_device_alloc(struct device_node *np,
return NULL; return NULL;
dev->dev.of_node = of_node_get(np); dev->dev.of_node = of_node_get(np);
dev->dev.dma_mask = &dev->dma_mask; dev->dev.dma_mask = &dev->archdata.dma_mask;
dev->dev.parent = parent; dev->dev.parent = parent;
dev->dev.release = of_release_dev; dev->dev.release = of_release_dev;
......
...@@ -74,7 +74,7 @@ struct of_device* of_platform_device_create(struct device_node *np, ...@@ -74,7 +74,7 @@ struct of_device* of_platform_device_create(struct device_node *np,
if (!dev) if (!dev)
return NULL; return NULL;
dev->dma_mask = 0xffffffffUL; dev->archdata.dma_mask = 0xffffffffUL;
dev->dev.coherent_dma_mask = DMA_BIT_MASK(32); dev->dev.coherent_dma_mask = DMA_BIT_MASK(32);
dev->dev.bus = &of_platform_bus_type; dev->dev.bus = &of_platform_bus_type;
......
...@@ -374,8 +374,8 @@ static struct macio_dev * macio_add_one_device(struct macio_chip *chip, ...@@ -374,8 +374,8 @@ static struct macio_dev * macio_add_one_device(struct macio_chip *chip,
dev->bus = &chip->lbus; dev->bus = &chip->lbus;
dev->media_bay = in_bay; dev->media_bay = in_bay;
dev->ofdev.dev.of_node = np; dev->ofdev.dev.of_node = np;
dev->ofdev.dma_mask = 0xffffffffUL; dev->ofdev.archdata.dma_mask = 0xffffffffUL;
dev->ofdev.dev.dma_mask = &dev->ofdev.dma_mask; dev->ofdev.dev.dma_mask = &dev->ofdev.archdata.dma_mask;
dev->ofdev.dev.parent = parent; dev->ofdev.dev.parent = parent;
dev->ofdev.dev.bus = &macio_bus_type; dev->ofdev.dev.bus = &macio_bus_type;
dev->ofdev.dev.release = macio_release_dev; dev->ofdev.dev.release = macio_release_dev;
......
...@@ -221,9 +221,9 @@ static int i2sbus_add_dev(struct macio_dev *macio, ...@@ -221,9 +221,9 @@ static int i2sbus_add_dev(struct macio_dev *macio,
mutex_init(&dev->lock); mutex_init(&dev->lock);
spin_lock_init(&dev->low_lock); spin_lock_init(&dev->low_lock);
dev->sound.ofdev.dma_mask = macio->ofdev.dma_mask; dev->sound.ofdev.archdata.dma_mask = macio->ofdev.archdata.dma_mask;
dev->sound.ofdev.dev.of_node = np; dev->sound.ofdev.dev.of_node = np;
dev->sound.ofdev.dev.dma_mask = &dev->sound.ofdev.dma_mask; dev->sound.ofdev.dev.dma_mask = &dev->sound.ofdev.archdata.dma_mask;
dev->sound.ofdev.dev.parent = &macio->ofdev.dev; dev->sound.ofdev.dev.parent = &macio->ofdev.dev;
dev->sound.ofdev.dev.release = i2sbus_release_dev; dev->sound.ofdev.dev.release = i2sbus_release_dev;
dev->sound.attach_codec = i2sbus_attach_codec; dev->sound.attach_codec = i2sbus_attach_codec;
......
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