diff options
| author | Nishanth Aravamudan <nacc@us.ibm.com> | 2010-10-26 13:35:11 -0400 |
|---|---|---|
| committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2010-11-28 23:48:21 -0500 |
| commit | f6aedd8606ae673f8e1f4d972fc86c451fbc8ba7 (patch) | |
| tree | c3f6316b887847c5e0a77d73a47237be4d15d562 | |
| parent | a8daac8a517dacfea951424f67c1f07e1f76b2ad (diff) | |
powerpc/macio: Ensure all dma routines get copied over
Also add a comment to dev_archdata, indicating that changes there need
to be verified against the driver code.
Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| -rw-r--r-- | arch/powerpc/include/asm/device.h | 6 | ||||
| -rw-r--r-- | drivers/macintosh/macio_asic.c | 7 |
2 files changed, 9 insertions, 4 deletions
diff --git a/arch/powerpc/include/asm/device.h b/arch/powerpc/include/asm/device.h index a3954e4fcbe2..16d25c0974be 100644 --- a/arch/powerpc/include/asm/device.h +++ b/arch/powerpc/include/asm/device.h | |||
| @@ -9,6 +9,12 @@ | |||
| 9 | struct dma_map_ops; | 9 | struct dma_map_ops; |
| 10 | struct device_node; | 10 | struct device_node; |
| 11 | 11 | ||
| 12 | /* | ||
| 13 | * Arch extensions to struct device. | ||
| 14 | * | ||
| 15 | * When adding fields, consider macio_add_one_device in | ||
| 16 | * drivers/macintosh/macio_asic.c | ||
| 17 | */ | ||
| 12 | struct dev_archdata { | 18 | struct dev_archdata { |
| 13 | /* DMA operations on that device */ | 19 | /* DMA operations on that device */ |
| 14 | struct dma_map_ops *dma_ops; | 20 | struct dma_map_ops *dma_ops; |
diff --git a/drivers/macintosh/macio_asic.c b/drivers/macintosh/macio_asic.c index b6e7ddc09d76..4daf9e5a7736 100644 --- a/drivers/macintosh/macio_asic.c +++ b/drivers/macintosh/macio_asic.c | |||
| @@ -387,11 +387,10 @@ static struct macio_dev * macio_add_one_device(struct macio_chip *chip, | |||
| 387 | /* Set the DMA ops to the ones from the PCI device, this could be | 387 | /* Set the DMA ops to the ones from the PCI device, this could be |
| 388 | * fishy if we didn't know that on PowerMac it's always direct ops | 388 | * fishy if we didn't know that on PowerMac it's always direct ops |
| 389 | * or iommu ops that will work fine | 389 | * or iommu ops that will work fine |
| 390 | * | ||
| 391 | * To get all the fields, copy all archdata | ||
| 390 | */ | 392 | */ |
| 391 | dev->ofdev.dev.archdata.dma_ops = | 393 | dev->ofdev.dev.archdata = chip->lbus.pdev->dev.archdata; |
| 392 | chip->lbus.pdev->dev.archdata.dma_ops; | ||
| 393 | dev->ofdev.dev.archdata.dma_data = | ||
| 394 | chip->lbus.pdev->dev.archdata.dma_data; | ||
| 395 | #endif /* CONFIG_PCI */ | 394 | #endif /* CONFIG_PCI */ |
| 396 | 395 | ||
| 397 | #ifdef DEBUG | 396 | #ifdef DEBUG |
