/linux-6.14.4/drivers/dma/dw-edma/ |
D | dw-edma-v0-core.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (c) 2018-2019 Synopsys, Inc. and/or its affiliates. 11 #include <linux/io-64-nonatomic-lo-hi.h> 13 #include "dw-edma-core.h" 14 #include "dw-edma-v0-core.h" 15 #include "dw-edma-v0-regs.h" 16 #include "dw-edma-v0-debugfs.h" 30 return dw->chip->reg_base; in __dw_regs() 33 #define SET_32(dw, name, value) \ argument 34 writel(value, &(__dw_regs(dw)->name)) [all …]
|
D | dw-hdma-v0-core.c | 1 // SPDX-License-Identifier: GPL-2.0 9 #include <linux/io-64-nonatomic-lo-hi.h> 11 #include "dw-edma-core.h" 12 #include "dw-hdma-v0-core.h" 13 #include "dw-hdma-v0-regs.h" 14 #include "dw-hdma-v0-debugfs.h" 28 return dw->chip->reg_base; in __dw_regs() 35 return &(__dw_regs(dw)->ch[ch].wr); in __dw_ch_regs() 37 return &(__dw_regs(dw)->ch[ch].rd); in __dw_ch_regs() 40 #define SET_CH_32(dw, dir, ch, name, value) \ argument [all …]
|
/linux-6.14.4/sound/soc/codecs/ |
D | audio-iio-aux.c | 1 // SPDX-License-Identifier: GPL-2.0-only 22 const char *name; member 37 struct audio_iio_aux_chan *chan = (struct audio_iio_aux_chan *)kcontrol->private_value; in audio_iio_aux_info_volsw() local 39 uinfo->count = 1; in audio_iio_aux_info_volsw() 40 uinfo->value.integer.min = 0; in audio_iio_aux_info_volsw() 41 uinfo->value.integer.max = chan->max - chan->min; in audio_iio_aux_info_volsw() 42 uinfo->type = (uinfo->value.integer.max == 1) ? in audio_iio_aux_info_volsw() 50 struct audio_iio_aux_chan *chan = (struct audio_iio_aux_chan *)kcontrol->private_value; in audio_iio_aux_get_volsw() local 51 int max = chan->max; in audio_iio_aux_get_volsw() 52 int min = chan->min; in audio_iio_aux_get_volsw() [all …]
|
/linux-6.14.4/drivers/iio/ |
D | inkern.c | 1 // SPDX-License-Identifier: GPL-2.0-only 16 #include <linux/iio/iio-opaque.h> 33 int ret = -ENODEV; in iio_map_array_unregister_locked() 37 if (indio_dev == mapi->indio_dev) { in iio_map_array_unregister_locked() 38 list_del(&mapi->l); in iio_map_array_unregister_locked() 59 ret = -ENOMEM; in iio_map_array_register() 62 mapi->map = &maps[i]; in iio_map_array_register() 63 mapi->indio_dev = indio_dev; in iio_map_array_register() 64 list_add_tail(&mapi->l, &iio_map_list); in iio_map_array_register() 104 *iio_chan_spec_from_name(const struct iio_dev *indio_dev, const char *name) in iio_chan_spec_from_name() argument [all …]
|
D | industrialio-backend.c | 1 // SPDX-License-Identifier: GPL-2.0-only 11 * ------------------------------------------------------- 12 * ------------------ | ------------ ------------ ------- FPGA| 13 * | ADC |------------------------| | ADC CORE |---------| DMA CORE |------| RAM | | 14 * | (Frontend/IIO) | Serial Data (eg: LVDS) | |(backend) |---------| |------| | | 15 * | |------------------------| ------------ ------------ ------- | 16 * ------------------ ------------------------------------------------------- 19 * - Backends should register themselves with devm_iio_backend_register() 20 * - Frontend devices should get backends with devm_iio_backend_get() 27 * the industrialio-backend.c is only left with the really generic stuff. Then, [all …]
|
/linux-6.14.4/drivers/video/fbdev/nvidia/ |
D | nv_i2c.c | 2 * linux/drivers/video/nvidia/nvidia-i2c.c - nVidia i2c 6 * Based on rivafb-i2c.c 30 struct nvidia_i2c_chan *chan = data; in nvidia_gpio_setscl() local 31 struct nvidia_par *par = chan->par; in nvidia_gpio_setscl() 34 val = NVReadCrtc(par, chan->ddc_base + 1) & 0xf0; in nvidia_gpio_setscl() 41 NVWriteCrtc(par, chan->ddc_base + 1, val | 0x01); in nvidia_gpio_setscl() 46 struct nvidia_i2c_chan *chan = data; in nvidia_gpio_setsda() local 47 struct nvidia_par *par = chan->par; in nvidia_gpio_setsda() 50 val = NVReadCrtc(par, chan->ddc_base + 1) & 0xf0; in nvidia_gpio_setsda() 57 NVWriteCrtc(par, chan->ddc_base + 1, val | 0x01); in nvidia_gpio_setsda() [all …]
|
/linux-6.14.4/drivers/dma/ |
D | dmaengine.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Copyright(c) 2004 - 2006 Intel Corporation. All rights reserved. 7 * This code implements the DMA subsystem. It provides a HW-neutral interface 29 * See Documentation/driver-api/dmaengine for more details 35 #include <linux/dma-mapping.h> 63 /* --- debugfs implementation --- */ 71 dma_dev->dbg_dev_root = debugfs_create_dir(dev_name(dma_dev->dev), in dmaengine_debug_register() 73 if (IS_ERR(dma_dev->dbg_dev_root)) in dmaengine_debug_register() 74 dma_dev->dbg_dev_root = NULL; in dmaengine_debug_register() 79 debugfs_remove_recursive(dma_dev->dbg_dev_root); in dmaengine_debug_unregister() [all …]
|
D | txx9dmac.c | 1 // SPDX-License-Identifier: GPL-2.0-only 7 #include <linux/dma-mapping.h> 19 static struct txx9dmac_chan *to_txx9dmac_chan(struct dma_chan *chan) in to_txx9dmac_chan() argument 21 return container_of(chan, struct txx9dmac_chan, chan); in to_txx9dmac_chan() 26 return dc->ch_regs; in __dma_regs() 32 return dc->ch_regs; in __dma_regs32() 35 #define channel64_readq(dc, name) \ argument 36 __raw_readq(&(__dma_regs(dc)->name)) 37 #define channel64_writeq(dc, name, val) \ argument 38 __raw_writeq((val), &(__dma_regs(dc)->name)) [all …]
|
D | of-dma.c | 1 // SPDX-License-Identifier: GPL-2.0-only 7 * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ 24 * of_dma_find_controller - Get a DMA controller in DT DMA helpers list 37 if (ofdma->of_node == dma_spec->np) in of_dma_find_controller() 41 dma_spec->np); in of_dma_find_controller() 47 * of_dma_router_xlate - translation function for router devices 58 struct dma_chan *chan; in of_dma_router_xlate() local 65 route_data = ofdma->of_dma_route_allocate(&dma_spec_target, ofdma); in of_dma_router_xlate() 71 ofdma->dma_router->route_free(ofdma->dma_router->dev, in of_dma_router_xlate() 73 chan = ERR_PTR(-EPROBE_DEFER); in of_dma_router_xlate() [all …]
|
/linux-6.14.4/drivers/media/pci/mgb4/ |
D | mgb4_dma.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2021-2022 Digiteq Automotive 11 #include <linux/dma-direction.h> 17 struct mgb4_dma_channel *chan = param; in chan_irq() local 19 complete(&chan->req_compl); in chan_irq() 26 struct mgb4_dma_channel *chan; in mgb4_dma_transfer() local 28 struct pci_dev *pdev = mgbdev->pdev; in mgb4_dma_transfer() 37 chan = &mgbdev->h2c_chan[channel]; in mgb4_dma_transfer() 42 chan = &mgbdev->c2h_chan[channel]; in mgb4_dma_transfer() 45 ret = dmaengine_slave_config(chan->chan, &cfg); in mgb4_dma_transfer() [all …]
|
/linux-6.14.4/drivers/soc/ti/ |
D | knav_dma.c | 1 // SPDX-License-Identifier: GPL-2.0-only 12 #include <linux/dma-direction.h> 100 char name[32]; member 124 #define chan_number(ch) ((ch->direction == DMA_MEM_TO_DEV) ? \ 125 ch->channel : ch->flow) 136 static bool check_config(struct knav_dma_chan *chan, struct knav_dma_cfg *cfg) in check_config() argument 138 if (!memcmp(&chan->cfg, cfg, sizeof(*cfg))) in check_config() 144 static int chan_start(struct knav_dma_chan *chan, in chan_start() argument 149 spin_lock(&chan->lock); in chan_start() 150 if ((chan->direction == DMA_MEM_TO_DEV) && chan->reg_chan) { in chan_start() [all …]
|
/linux-6.14.4/drivers/gpu/drm/gma500/ |
D | intel_i2c.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright © 2006-2007 Intel Corporation 11 #include <linux/i2c-algo-bit.h> 25 struct gma_i2c_chan *chan = data; in get_clock() local 26 struct drm_device *dev = chan->drm_dev; in get_clock() 29 val = REG_READ(chan->reg); in get_clock() 35 struct gma_i2c_chan *chan = data; in get_data() local 36 struct drm_device *dev = chan->drm_dev; in get_data() 39 val = REG_READ(chan->reg); in get_data() 45 struct gma_i2c_chan *chan = data; in set_clock() local [all …]
|
/linux-6.14.4/drivers/video/fbdev/aty/ |
D | radeon_i2c.c | 1 // SPDX-License-Identifier: GPL-2.0 11 #include <linux/i2c-algo-bit.h> 20 struct radeon_i2c_chan *chan = data; in radeon_gpio_setscl() local 21 struct radeonfb_info *rinfo = chan->rinfo; in radeon_gpio_setscl() 24 val = INREG(chan->ddc_reg) & ~(VGA_DDC_CLK_OUT_EN); in radeon_gpio_setscl() 28 OUTREG(chan->ddc_reg, val); in radeon_gpio_setscl() 29 (void)INREG(chan->ddc_reg); in radeon_gpio_setscl() 34 struct radeon_i2c_chan *chan = data; in radeon_gpio_setsda() local 35 struct radeonfb_info *rinfo = chan->rinfo; in radeon_gpio_setsda() 38 val = INREG(chan->ddc_reg) & ~(VGA_DDC_DATA_OUT_EN); in radeon_gpio_setsda() [all …]
|
/linux-6.14.4/drivers/video/fbdev/riva/ |
D | rivafb-i2c.c | 2 * linux/drivers/video/riva/fbdev-i2c.c - nVidia i2c 8 * Based on radeonfb-i2c.c 29 struct riva_i2c_chan *chan = data; in riva_gpio_setscl() local 30 struct riva_par *par = chan->par; in riva_gpio_setscl() 33 VGA_WR08(par->riva.PCIO, 0x3d4, chan->ddc_base + 1); in riva_gpio_setscl() 34 val = VGA_RD08(par->riva.PCIO, 0x3d5) & 0xf0; in riva_gpio_setscl() 41 VGA_WR08(par->riva.PCIO, 0x3d4, chan->ddc_base + 1); in riva_gpio_setscl() 42 VGA_WR08(par->riva.PCIO, 0x3d5, val | 0x1); in riva_gpio_setscl() 47 struct riva_i2c_chan *chan = data; in riva_gpio_setsda() local 48 struct riva_par *par = chan->par; in riva_gpio_setsda() [all …]
|
/linux-6.14.4/drivers/video/fbdev/i810/ |
D | i810-i2c.c | 1 /*-*- linux-c -*- 2 * linux/drivers/video/i810-i2c.c -- Intel 810/815 I2C support 44 struct i810fb_i2c_chan *chan = data; in i810i2c_setscl() local 45 struct i810fb_par *par = chan->par; in i810i2c_setscl() 46 u8 __iomem *mmio = par->mmio_start_virtual; in i810i2c_setscl() 49 i810_writel(mmio, chan->ddc_base, SCL_DIR_MASK | SCL_VAL_MASK); in i810i2c_setscl() 51 i810_writel(mmio, chan->ddc_base, SCL_DIR | SCL_DIR_MASK | SCL_VAL_MASK); in i810i2c_setscl() 52 i810_readl(mmio, chan->ddc_base); /* flush posted write */ in i810i2c_setscl() 57 struct i810fb_i2c_chan *chan = data; in i810i2c_setsda() local 58 struct i810fb_par *par = chan->par; in i810i2c_setsda() [all …]
|
/linux-6.14.4/drivers/video/fbdev/savage/ |
D | savagefb-i2c.c | 2 * linux/drivers/video/savage/savagefb-i2c.c - S3 Savage DDC2 6 * Based partly on rivafb-i2c.c 47 struct savagefb_i2c_chan *chan = data; in savage4_gpio_setscl() local 50 r = readl(chan->ioaddr + chan->reg); in savage4_gpio_setscl() 55 writel(r, chan->ioaddr + chan->reg); in savage4_gpio_setscl() 56 readl(chan->ioaddr + chan->reg); /* flush posted write */ in savage4_gpio_setscl() 61 struct savagefb_i2c_chan *chan = data; in savage4_gpio_setsda() local 64 r = readl(chan->ioaddr + chan->reg); in savage4_gpio_setsda() 69 writel(r, chan->ioaddr + chan->reg); in savage4_gpio_setsda() 70 readl(chan->ioaddr + chan->reg); /* flush posted write */ in savage4_gpio_setsda() [all …]
|
/linux-6.14.4/drivers/mailbox/ |
D | mailbox-sti.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 36 #define MBOX_BASE(mdev, inst) ((mdev)->base + ((inst) * 4)) 39 * struct sti_mbox_device - STi Mailbox device data 44 * @name: Name of the mailbox 57 const char *name; member 63 * struct sti_mbox_pdata - STi Mailbox platform specific configuration 74 * struct sti_channel - STi Mailbox allocated channel information 86 static inline bool sti_mbox_channel_is_enabled(struct mbox_chan *chan) in sti_mbox_channel_is_enabled() argument 88 struct sti_channel *chan_info = chan->con_priv; in sti_mbox_channel_is_enabled() 89 struct sti_mbox_device *mdev = chan_info->mdev; in sti_mbox_channel_is_enabled() [all …]
|
/linux-6.14.4/drivers/gpu/drm/nouveau/nvkm/engine/fifo/ |
D | chan.c | 24 #include "chan.h" 41 nvkm_chan_cctx_bind(struct nvkm_chan *chan, struct nvkm_engn *engn, struct nvkm_cctx *cctx) in nvkm_chan_cctx_bind() argument 43 struct nvkm_cgrp *cgrp = chan->cgrp; in nvkm_chan_cctx_bind() 44 struct nvkm_runl *runl = cgrp->runl; in nvkm_chan_cctx_bind() 45 struct nvkm_engine *engine = engn->engine; in nvkm_chan_cctx_bind() 47 if (!engn->func->bind) in nvkm_chan_cctx_bind() 50 CHAN_TRACE(chan, "%sbind cctx %d[%s]", cctx ? "" : "un", engn->id, engine->subdev.name); in nvkm_chan_cctx_bind() 55 if (cgrp->hw) in nvkm_chan_cctx_bind() 58 nvkm_chan_block(chan); in nvkm_chan_cctx_bind() 59 nvkm_chan_preempt(chan, true); in nvkm_chan_cctx_bind() [all …]
|
/linux-6.14.4/arch/sh/drivers/pci/ |
D | pcie-sh7786.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Low-Level PCI Express Support for the SH7786 5 * Copyright (C) 2009 - 2011 Paul Mundt 15 #include <linux/dma-map-ops.h> 21 #include "pcie-sh7786.h" 44 .name = "PCIe0 MEM 0", 46 .end = 0xfd000000 + SZ_8M - 1, 49 .name = "PCIe0 MEM 1", 51 .end = 0xc0000000 + SZ_512M - 1, 54 .name = "PCIe0 MEM 2", [all …]
|
/linux-6.14.4/drivers/media/pci/cx25821/ |
D | cx25821-video.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 14 #include "cx25821-video.h" 20 static unsigned int video_nr[] = {[0 ... (CX25821_MAXBOARDS - 1)] = UNSET }; 66 cx25821_sram_channel_setup(dev, channel, buf->bpl, buf->risc.dma); in cx25821_start_video_dma() 69 cx_write(channel->gpcnt_ctl, 3); in cx25821_start_video_dma() 72 cx_set(PCI_INT_MSK, cx_read(PCI_INT_MSK) | (1 << channel->i)); in cx25821_start_video_dma() 73 cx_set(channel->int_msk, 0x11); in cx25821_start_video_dma() 76 cx_write(channel->dma_ctl, 0x11); /* FIFO and RISC enable */ in cx25821_start_video_dma() 89 const struct sram_channel *channel = dev->channels[chan_num].sram_channels; in cx25821_video_irq() 91 mask = cx_read(channel->int_msk); in cx25821_video_irq() [all …]
|
/linux-6.14.4/drivers/iio/multiplexer/ |
D | iio-mux.c | 1 // SPDX-License-Identifier: GPL-2.0 34 struct iio_chan_spec *chan; member 42 struct mux_child *child = &mux->child[idx]; in iio_mux_select() 43 struct iio_chan_spec const *chan = &mux->chan[idx]; in iio_mux_select() local 47 ret = mux_control_select_delay(mux->control, chan->channel, in iio_mux_select() 48 mux->delay_us); in iio_mux_select() 50 mux->cached_state = -1; in iio_mux_select() 54 if (mux->cached_state == chan->channel) in iio_mux_select() 57 if (chan->ext_info) { in iio_mux_select() 58 for (i = 0; chan->ext_info[i].name; ++i) { in iio_mux_select() [all …]
|
/linux-6.14.4/include/linux/iio/ |
D | backend.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 31 * IIO_BACKEND_EX_INFO - Helper for an IIO extended channel attribute 32 * @_name: Attribute name 37 .name = (_name), \ 45 * struct iio_backend_data_fmt - Backend data format 74 * struct iio_backend_ops - operations structure for an iio_backend 103 int (*chan_enable)(struct iio_backend *back, unsigned int chan); 104 int (*chan_disable)(struct iio_backend *back, unsigned int chan); 105 int (*data_format_set)(struct iio_backend *back, unsigned int chan, 107 int (*data_source_set)(struct iio_backend *back, unsigned int chan, [all …]
|
D | consumer.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 19 * struct iio_channel - everything needed for a consumer to use a channel 31 * iio_channel_get() - get description of all that is needed to access channel. 32 * @dev: Pointer to consumer device. Device name must match 33 * the name of the device as provided in the iio_map 36 * @consumer_channel: Unique name to identify the channel on the consumer 44 * iio_channel_release() - release channels obtained via iio_channel_get 45 * @chan: The channel to be released. 47 void iio_channel_release(struct iio_channel *chan); 50 * devm_iio_channel_get() - Resource managed version of iio_channel_get(). [all …]
|
/linux-6.14.4/drivers/staging/media/tegra-video/ |
D | vi.c | 1 // SPDX-License-Identifier: GPL-2.0-only 21 #include <media/v4l2-dv-timings.h> 22 #include <media/v4l2-event.h> 23 #include <media/v4l2-fh.h> 24 #include <media/v4l2-fwnode.h> 25 #include <media/v4l2-ioctl.h> 26 #include <media/videobuf2-dma-contig.h> 36 * struct tegra_vi_graph_entity - Entity in the video graph 72 for (i = offset; i < vi->soc->nformats; ++i) { in tegra_get_format_idx_by_code() 73 if (vi->soc->video_formats[i].code == code) in tegra_get_format_idx_by_code() [all …]
|
/linux-6.14.4/sound/soc/ |
D | soc-generic-dmaengine-pcm.c | 1 // SPDX-License-Identifier: GPL-2.0+ 4 // Author: Lars-Peter Clausen <[email protected]> 13 #include <linux/dma-mapping.h> 31 if (!pcm->chan[substream->stream]) in dmaengine_dma_dev() 34 return pcm->chan[substream->stream]->device->dev; in dmaengine_dma_dev() 38 * snd_dmaengine_pcm_prepare_slave_config() - Generic prepare_slave_config callback 57 if (rtd->dai_link->num_cpus > 1) { in snd_dmaengine_pcm_prepare_slave_config() 58 dev_err(rtd->dev, in snd_dmaengine_pcm_prepare_slave_config() 60 return -EINVAL; in snd_dmaengine_pcm_prepare_slave_config() 81 struct dma_chan *chan = snd_dmaengine_pcm_get_chan(substream); in dmaengine_pcm_hw_params() local [all …]
|