diff options
author | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2009-12-01 14:36:27 +0000 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2009-12-08 16:02:52 +1100 |
commit | 128b4a0ef74e8d48033513e41a413087ba30e36b (patch) | |
tree | 9fe76b544808404892dbe1c8259a02a3cbf9e422 | |
parent | 7fb19ea054a0cdf1a4d935e68d51bde4d3725414 (diff) | |
download | kernel_samsung_crespo-128b4a0ef74e8d48033513e41a413087ba30e36b.zip kernel_samsung_crespo-128b4a0ef74e8d48033513e41a413087ba30e36b.tar.gz kernel_samsung_crespo-128b4a0ef74e8d48033513e41a413087ba30e36b.tar.bz2 |
powerpc/macio: Add dma_parms support to macio
This adds dma_parms to macio devices and initializes them with
default values. This will allow pata_macio to setup the appropriate
max segment size for the block layer.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
-rw-r--r-- | arch/powerpc/include/asm/macio.h | 1 | ||||
-rw-r--r-- | drivers/macintosh/macio_asic.c | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/arch/powerpc/include/asm/macio.h b/arch/powerpc/include/asm/macio.h index 2b7b392..86d5fed 100644 --- a/arch/powerpc/include/asm/macio.h +++ b/arch/powerpc/include/asm/macio.h @@ -39,6 +39,7 @@ struct macio_dev struct macio_bus *bus; /* macio bus this device is on */ struct macio_dev *media_bay; /* Device is part of a media bay */ struct of_device ofdev; + struct device_dma_parameters dma_parms; /* ide needs that */ int n_resources; struct resource resource[MACIO_DEV_COUNT_RESOURCES]; int n_interrupts; diff --git a/drivers/macintosh/macio_asic.c b/drivers/macintosh/macio_asic.c index 5200acf..26a303a 100644 --- a/drivers/macintosh/macio_asic.c +++ b/drivers/macintosh/macio_asic.c @@ -379,6 +379,11 @@ static struct macio_dev * macio_add_one_device(struct macio_chip *chip, dev->ofdev.dev.parent = parent; dev->ofdev.dev.bus = &macio_bus_type; dev->ofdev.dev.release = macio_release_dev; + dev->ofdev.dev.dma_parms = &dev->dma_parms; + + /* Standard DMA paremeters */ + dma_set_max_seg_size(&dev->ofdev.dev, 65536); + dma_set_seg_boundary(&dev->ofdev.dev, 0xffffffff); #ifdef CONFIG_PCI /* Set the DMA ops to the ones from the PCI device, this could be |