From: Olof Johansson Date: Thu, 10 May 2007 04:00:20 +0000 (-0500) Subject: pata_platform: don't use generic ata_port_start X-Git-Tag: v2.6.22-rc1~19^2 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=b9a3b4d1453689f2927668fcdc4827fdccf44d1b;p=~emulex%2Finfiniband.git pata_platform: don't use generic ata_port_start I have a system where I have a simple IDE controller that sits on a local bus without bus master dma capability, and thus no dma_mapping ops defined for the device/bus. pata_platform works great for me, with the exception of using the generic ata_port_start which tries to do a dmam_alloc_coherent. Looks like it doesn't need to allocate a prd table at all, so replace it with a dummy function instead. Signed-off-by: Olof Johansson Signed-off-by: Jeff Garzik --- diff --git a/drivers/ata/pata_platform.c b/drivers/ata/pata_platform.c index a0a650c7f27..1f6384895a4 100644 --- a/drivers/ata/pata_platform.c +++ b/drivers/ata/pata_platform.c @@ -48,6 +48,8 @@ static int pata_platform_set_mode(struct ata_port *ap, struct ata_device **unuse return 0; } +static int ata_dummy_ret0(struct ata_port *ap) { return 0; } + static struct scsi_host_template pata_platform_sht = { .module = THIS_MODULE, .name = DRV_NAME, @@ -91,7 +93,7 @@ static struct ata_port_operations pata_platform_port_ops = { .irq_on = ata_irq_on, .irq_ack = ata_irq_ack, - .port_start = ata_port_start, + .port_start = ata_dummy_ret0, }; static void pata_platform_setup_port(struct ata_ioports *ioaddr,