[PATCH v2 00/11] dmaengine: kill off dma_slave_config->slave_id

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Arnd Bergmann <arnd@xxxxxxxx>

I recently came across some new uses of the 'slave_id' field that
I had (almost) removed a few years ago. There are no legitimate
uses of this field in the kernel, only a few stale references and
two drivers that abuse the field as a side-channel between the
dmaengine driver and its client.

Let's change the xilinx and qualcomm drivers to use the documented
side-channel (peripheral_data) instead, and remove the remnants of
it to prevent new users from coming in.

I think I got all the necessary Acks on v1 already, so if there are
no further concerns, please merge this through the dmaengine tree
for v5.17, or pull from

git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic.git tags/dma-slave-id-removal

       Arnd

Arnd Bergmann (13):
  ASoC: tegra20-spdif: stop setting slave_id
  ASoC: dai_dma: remove slave_id field
  spi: pic32: stop setting dma_config->slave_id
  mmc: bcm2835: stop setting chan_config->slave_id
  dmaengine: shdma: remove legacy slave_id parsing
  dmaengine: pxa/mmp: stop referencing config->slave_id
  dmaengine: sprd: stop referencing config->slave_id
  dmaengine: qcom-adm: stop abusing slave_id config
  dmaengine: xilinx_dpdma: stop using slave_id field
  dmaengine: tegra20-apb: stop checking config->slave_id
  dmaengine: remove slave_id config field

---
Changes in v2:

 - drop obsolete drivers/staging/patch
 - split tegra change into a separate patch
 - improve some patch descriptions.

 drivers/dma/mmp_pdma.c                 |  6 ---
 drivers/dma/pxa_dma.c                  |  7 ----
 drivers/dma/qcom/qcom_adm.c            | 56 ++++++++++++++++++++++----
 drivers/dma/sh/shdma-base.c            |  8 ----
 drivers/dma/sprd-dma.c                 |  3 --
 drivers/dma/tegra20-apb-dma.c          |  6 ---
 drivers/dma/xilinx/xilinx_dpdma.c      | 17 +++++---
 drivers/gpu/drm/xlnx/zynqmp_disp.c     |  9 ++++-
 drivers/mmc/host/bcm2835.c             |  2 -
 drivers/mtd/nand/raw/qcom_nandc.c      | 14 ++++++-
 drivers/spi/spi-pic32.c                |  2 -
 drivers/tty/serial/msm_serial.c        | 15 ++++++-
 include/linux/dma/qcom_adm.h           | 12 ++++++
 include/linux/dma/xilinx_dpdma.h       | 11 +++++
 include/linux/dmaengine.h              |  4 --
 include/linux/platform_data/asoc-s3c.h |  6 ---
 include/sound/dmaengine_pcm.h          |  4 --
 sound/core/pcm_dmaengine.c             | 26 +-----------
 sound/soc/tegra/tegra20_spdif.c        |  1 -
 27 files changed, 134 insertions(+), 146 deletions(-)
 create mode 100644 include/linux/dma/qcom_adm.h
 create mode 100644 include/linux/dma/xilinx_dpdma.h

-- 
2.29.2

Cc: Andy Gross <agross@xxxxxxxxxx>
Cc: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
Cc: Arnd Bergmann <arnd@xxxxxxxx>
Cc: Baolin Wang <baolin.wang7@xxxxxxxxx>
Cc: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx>
Cc: Chunyan Zhang <zhang.lyra@xxxxxxxxx>
Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
Cc: Hyun Kwon <hyun.kwon@xxxxxxxxxx>
Cc: Jaroslav Kysela <perex@xxxxxxxx>
Cc: Jon Hunter <jonathanh@xxxxxxxxxx>
Cc: Lars-Peter Clausen <lars@xxxxxxxxxx>
Cc: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
Cc: Laxman Dewangan <ldewangan@xxxxxxxxxx>
Cc: Manivannan Sadhasivam <mani@xxxxxxxxxx>
Cc: Mark Brown <broonie@xxxxxxxxxx>
Cc: Michal Simek <michal.simek@xxxxxxxxxx>
Cc: Nicolas Saenz Julienne <nsaenz@xxxxxxxxxx>
Cc: Orson Zhai <orsonzhai@xxxxxxxxx>
Cc: Robert Jarzmik <robert.jarzmik@xxxxxxx>
Cc: Scott Branden <sbranden@xxxxxxxxxxxx>
Cc: Takashi Iwai <tiwai@xxxxxxxx>
Cc: Thierry Reding <thierry.reding@xxxxxxxxx>
Cc: Vinod Koul <vkoul@xxxxxxxxxx>
Cc: alsa-devel@xxxxxxxxxxxxxxxx
Cc: bcm-kernel-feedback-list@xxxxxxxxxxxx
Cc: dmaengine@xxxxxxxxxxxxxxx
Cc: dri-devel@xxxxxxxxxxxxxxxxxxxxx
Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
Cc: linux-arm-msm@xxxxxxxxxxxxxxx
Cc: linux-kernel@xxxxxxxxxxxxxxx
Cc: linux-mmc@xxxxxxxxxxxxxxx
Cc: linux-mtd@xxxxxxxxxxxxxxxxxxx
Cc: linux-rpi-kernel@xxxxxxxxxxxxxxxxxxx
Cc: linux-serial@xxxxxxxxxxxxxxx
Cc: linux-spi@xxxxxxxxxxxxxxx
Cc: linux-staging@xxxxxxxxxxxxxxx
Cc: linux-tegra@xxxxxxxxxxxxxxx




[Index of Archives]     [Linux Driver Development]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux