ide: remove deprecated use of pci api
Subsystems (3)
PATCH v2 1/1 ide: remove deprecated use of pci api
Replace occurences of the pci api by appropriate call to the dma api.
A simplified version of the semantic patch that finds this problem is as
follows: (http://coccinelle.lip6.fr)
@deprecated@
idexpression id;
position p;
@@
(
pci_dma_supported@p ( id, ...)
|
pci_alloc_consistent@p ( id, ...)
)
@bad1@
idexpression id;
position deprecated.p;
@@
...when != &id->dev
when != pci_get_drvdata ( id )
when != pci_enable_device ( id )
(
pci_dma_supported@p ( id, ...)
|
pci_alloc_consistent@p ( id, ...)
)
@depends on !bad1@
idexpression id;
expression direction;
position deprecated.p;
@@
(
- pci_dma_supported@p ( id,
+ dma_supported ( &id->dev,
...
+ , GFP_ATOMIC
)
|
- pci_alloc_consistent@p ( id,
+ dma_alloc_coherent ( &id->dev,
...
+ , GFP_ATOMIC
)
)
---
Changes since v1:
- fold the two patches into one, GFP_ATOMIC is now replaced by GFP_KERNEL
drivers/ide/cs5520.c | 2 +- drivers/ide/pmac.c | 5 ++--- drivers/ide/setup-pci.c | 2 +- drivers/ide/sgiioc4.c | 4 ++-- 4 files changed, 6 insertions(+), 7 deletions(-)
drivers/ide/cs5520.c +1 -1
@@ -123,7 +123,7 @@ static int cs5520_init_one(struct pci_dereturn -ENODEV ; }pci_set_master (dev); -if (pci_set_dma_mask (dev,DMA_BIT_MASK (32 ))) { +if (dma_set_mask (&dev->dev,DMA_BIT_MASK (32 ))) {printk (KERN_WARNING "%s: No suitable DMA available.\n" , d->name);return -ENODEV ;
drivers/ide/pmac.c +2 -3
@@ -1689,10 +1689,9 @@ static int pmac_ide_init_dma(ide_hwif_t* The +2 is +1 for the stop command and +1 to allow for * aligning the start address to a multiple of 16 bytes. */ - pmif->dma_table_cpu =pci_alloc_consistent ( - dev, + pmif->dma_table_cpu =dma_alloc_coherent (&dev->dev, (MAX_DCMDS +2 ) *sizeof (struct dbdma_cmd ), - &hwif->dmatable_dma); + &hwif->dmatable_dma,GFP_KERNEL );if (pmif->dma_table_cpu =NULL ) {printk (KERN_ERR "%s: unable to allocate DMA command list\n" , hwif->name);
drivers/ide/setup-pci.c +1 -1
@@ -209,7 +209,7 @@ static int ide_pci_enable(struct pci_dev* a DMA mask field to the struct ide_port_info if we need it * (or let lower level driver set the DMA mask) */ - ret =pci_set_dma_mask (dev,DMA_BIT_MASK (32 )); + ret =dma_set_mask (&dev->dev,DMA_BIT_MASK (32 ));if (ret <0 ) {printk (KERN_ERR "%s %s: can't set DMA mask\n" , d->name,pci_name (dev));
drivers/ide/sgiioc4.c +2 -2
@@ -334,8 +334,8 @@ static int ide_dma_sgiioc4(ide_hwif_t *hif (ide_allocate_dma_engine (hwif)) goto dma_pci_alloc_failure; - pad =pci_alloc_consistent (dev,IOC4_IDE_CACHELINE_SIZE , - (dma_addr_t *)&hwif->extra_base); + pad =dma_alloc_coherent (&dev->dev,IOC4_IDE_CACHELINE_SIZE , + (dma_addr_t *)&hwif->extra_base,GFP_KERNEL );if (pad) {ide_set_hwifdata (hwif, pad);return 0 ;
Great. Thanks!
regards,
dan carpenter