linux/drivers/media/pci
Christophe JAILLET 00ae4ebc2d media: pci: cx88: switch from 'pci_' to 'dma_' API
The wrappers in include/linux/pci-dma-compat.h should go away.

The patch has been generated with the coccinelle script below and has been
hand modified to replace GFP_ with a correct flag.
It has been compile tested.

Only 2 functions allocate some memory. They are both in cx88-core.c

When memory is allocated in 'cx88_risc_buffer()', GFP_KERNEL can be
used because its 2 callers end up to '.buf_prepare' functions in 'vb2_ops'
structures.
The call chains are:

  .buf_prepare                   (cx88-vbi.c)
    --> buffer_prepare           (cx88-vbi.c)
      --> cx88_risc_buffer

  .buf_prepare                   (cx88-video.c)
    --> buffer_prepare           (cx88-video.c)
      --> cx88_risc_buffer

When memory is allocated in 'cx88_risc_databuffer()', GFP_KERNEL can be
used because its 2 callers end up to 'snd_cx88_hw_params' which already
uses GFP_KERNEL and '.buf_prepare' functions in 'vb2_ops' structures.
The call chains are:

  snd_cx88_hw_params                   (cx88-alsa.c)
    --> cx88_risc_databuffer

  .buf_prepare                         (cx88-blackbird.c)
    --> buffer_prepare                 (cx88-blackbird.c)
      --> cx8802_buf_prepare           (cx88-mpeg.c)
        --> cx88_risc_databuffer

  .buf_prepare                         (cx88-dvb.c)
    --> buffer_prepare                 (cx88-dvb.c)
      --> cx8802_buf_prepare           (cx88-mpeg.c)
        --> cx88_risc_databuffer

@@ @@
-    PCI_DMA_BIDIRECTIONAL
+    DMA_BIDIRECTIONAL

@@ @@
-    PCI_DMA_TODEVICE
+    DMA_TO_DEVICE

@@ @@
-    PCI_DMA_FROMDEVICE
+    DMA_FROM_DEVICE

@@ @@
-    PCI_DMA_NONE
+    DMA_NONE

@@
expression e1, e2, e3;
@@
-    pci_alloc_consistent(e1, e2, e3)
+    dma_alloc_coherent(&e1->dev, e2, e3, GFP_)

@@
expression e1, e2, e3;
@@
-    pci_zalloc_consistent(e1, e2, e3)
+    dma_alloc_coherent(&e1->dev, e2, e3, GFP_)

@@
expression e1, e2, e3, e4;
@@
-    pci_free_consistent(e1, e2, e3, e4)
+    dma_free_coherent(&e1->dev, e2, e3, e4)

@@
expression e1, e2, e3, e4;
@@
-    pci_map_single(e1, e2, e3, e4)
+    dma_map_single(&e1->dev, e2, e3, e4)

@@
expression e1, e2, e3, e4;
@@
-    pci_unmap_single(e1, e2, e3, e4)
+    dma_unmap_single(&e1->dev, e2, e3, e4)

@@
expression e1, e2, e3, e4, e5;
@@
-    pci_map_page(e1, e2, e3, e4, e5)
+    dma_map_page(&e1->dev, e2, e3, e4, e5)

@@
expression e1, e2, e3, e4;
@@
-    pci_unmap_page(e1, e2, e3, e4)
+    dma_unmap_page(&e1->dev, e2, e3, e4)

@@
expression e1, e2, e3, e4;
@@
-    pci_map_sg(e1, e2, e3, e4)
+    dma_map_sg(&e1->dev, e2, e3, e4)

@@
expression e1, e2, e3, e4;
@@
-    pci_unmap_sg(e1, e2, e3, e4)
+    dma_unmap_sg(&e1->dev, e2, e3, e4)

@@
expression e1, e2, e3, e4;
@@
-    pci_dma_sync_single_for_cpu(e1, e2, e3, e4)
+    dma_sync_single_for_cpu(&e1->dev, e2, e3, e4)

@@
expression e1, e2, e3, e4;
@@
-    pci_dma_sync_single_for_device(e1, e2, e3, e4)
+    dma_sync_single_for_device(&e1->dev, e2, e3, e4)

@@
expression e1, e2, e3, e4;
@@
-    pci_dma_sync_sg_for_cpu(e1, e2, e3, e4)
+    dma_sync_sg_for_cpu(&e1->dev, e2, e3, e4)

@@
expression e1, e2, e3, e4;
@@
-    pci_dma_sync_sg_for_device(e1, e2, e3, e4)
+    dma_sync_sg_for_device(&e1->dev, e2, e3, e4)

@@
expression e1, e2;
@@
-    pci_dma_mapping_error(e1, e2)
+    dma_mapping_error(&e1->dev, e2)

@@
expression e1, e2;
@@
-    pci_set_dma_mask(e1, e2)
+    dma_set_mask(&e1->dev, e2)

@@
expression e1, e2;
@@
-    pci_set_consistent_dma_mask(e1, e2)
+    dma_set_coherent_mask(&e1->dev, e2)

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-06-17 10:24:41 +02:00
..
b2c2 media: flexcop: avoid -Wempty-body warning 2021-04-09 13:05:01 +02:00
bt8xx media: subdev: disallow ioctl for saa6588/davinci 2021-06-17 10:18:37 +02:00
cobalt media: cobalt: fix race condition in setting HPD 2021-05-19 09:51:39 +02:00
cx18 media: v4l2-subdev: add subdev-wide state struct 2021-06-17 10:01:27 +02:00
cx88 media: pci: cx88: switch from 'pci_' to 'dma_' API 2021-06-17 10:24:41 +02:00
cx23885 media: cx23885: switch from 'pci_' to 'dma_' API 2021-04-06 16:07:10 +02:00
cx25821 media updates for v5.13-rc1 2021-04-28 09:24:36 -07:00
ddbridge treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
dm1105 media: dm1105: switch from 'pci_' to 'dma_' API 2020-11-27 14:10:07 +01:00
dt3155 media: media/pci: use vb2_video_unregister_device() 2020-08-28 15:01:54 +02:00
intel media: v4l2-subdev: add subdev-wide state struct 2021-06-17 10:01:27 +02:00
ivtv media: ivtv: get rid of DVB deprecated ioctls 2021-06-04 08:06:53 +02:00
mantis media: mantis: remove orphan mantis_core.c 2021-03-22 17:27:13 +01:00
meye treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
netup_unidvb media: netup_unidvb: Don't leak SPI master in probe error path 2020-12-07 14:18:57 +00:00
ngene media: ngene: switch from 'pci_' to 'dma_' API 2021-03-11 11:59:46 +01:00
pluto2 treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
pt1 media: media/pci/pt1: Assign value when defining variables 2021-03-22 13:04:05 +01:00
pt3 media: pci: Use dev_get_drvdata where possible 2019-07-25 06:45:10 -04:00
saa7134 media: subdev: disallow ioctl for saa6588/davinci 2021-06-17 10:18:37 +02:00
saa7146 media: saa7146: fix array overflow in vidioc_s_audio() 2020-12-03 07:46:34 +01:00
saa7164 media: pci: saa7164: Rudimentary spelling fixes in the file saa7164-types.h 2021-03-22 11:57:37 +01:00
smipcie media: smipcie: fix interrupt handling and IR timeout 2021-02-05 23:41:25 +01:00
solo6x10 media: solo6x10: Switch to using the new API kobj_to_dev() 2021-03-11 11:59:43 +01:00
sta2x11 media updates for v5.13-rc1 2021-04-28 09:24:36 -07:00
ttpci media: ttpci: switch from 'pci_' to 'dma_' API 2021-06-02 13:16:55 +02:00
tw68 media: tw68: switch from 'pci_' to 'dma_' API 2021-04-06 16:07:42 +02:00
tw686x media: tw686x: switch from 'pci_' to 'dma_' API 2021-04-06 16:07:26 +02:00
tw5864 media: pci: tw5864: avoid usage of some characters 2021-06-04 08:11:12 +02:00
Kconfig Revert "media: Kconfig: better support hybrid TV devices" 2020-04-14 11:00:30 +02:00
Makefile media: zoran: move to staging in preparation for removal 2018-05-25 15:21:36 -04:00