| /OK3568_Linux_fs/kernel/drivers/dma/dw-edma/ |
| H A 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 "dw-edma-core.h" 12 #include "dw-edma-v0-core.h" 13 #include "dw-edma-v0-regs.h" 14 #include "dw-edma-v0-debugfs.h" 28 return dw->rg_region.vaddr; in __dw_regs() 31 #define SET(dw, name, value) \ argument 32 writel(value, &(__dw_regs(dw)->name)) 34 #define GET(dw, name) \ argument [all …]
|
| /OK3568_Linux_fs/kernel/drivers/iio/ |
| H A D | inkern.c | 1 // SPDX-License-Identifier: GPL-2.0-only 39 ret = -ENOMEM; in iio_map_array_register() 42 mapi->map = &maps[i]; in iio_map_array_register() 43 mapi->indio_dev = indio_dev; in iio_map_array_register() 44 list_add_tail(&mapi->l, &iio_map_list); in iio_map_array_register() 60 int ret = -ENODEV; in iio_map_array_unregister() 65 if (indio_dev == mapi->indio_dev) { in iio_map_array_unregister() 66 list_del(&mapi->l); in iio_map_array_unregister() 77 *iio_chan_spec_from_name(const struct iio_dev *indio_dev, const char *name) in iio_chan_spec_from_name() argument 80 const struct iio_chan_spec *chan = NULL; in iio_chan_spec_from_name() local [all …]
|
| H A D | industrialio-core.c | 1 // SPDX-License-Identifier: GPL-2.0-only 9 #define pr_fmt(fmt) "iio-core: " fmt 28 #include <linux/iio/iio-opaque.h> 43 .name = "iio", 190 return iio_dev_opaque->debugfs_dentry; in iio_get_debugfs_dentry() 196 * iio_find_channel_from_si() - get channel from its scan index 205 for (i = 0; i < indio_dev->num_channels; i++) in iio_find_channel_from_si() 206 if (indio_dev->channels[i].scan_index == si) in iio_find_channel_from_si() 207 return &indio_dev->channels[i]; in iio_find_channel_from_si() 216 return sprintf(buf, "%s\n", to_iio_const_attr(attr)->string); in iio_read_const_attr() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/soc/ti/ |
| H A D | knav_dma.c | 20 #include <linux/dma-direction.h> 108 char name[32]; member 132 #define chan_number(ch) ((ch->direction == DMA_MEM_TO_DEV) ? \ 133 ch->channel : ch->flow) 144 static bool check_config(struct knav_dma_chan *chan, struct knav_dma_cfg *cfg) in check_config() argument 146 if (!memcmp(&chan->cfg, cfg, sizeof(*cfg))) in check_config() 152 static int chan_start(struct knav_dma_chan *chan, in chan_start() argument 157 spin_lock(&chan->lock); in chan_start() 158 if ((chan->direction == DMA_MEM_TO_DEV) && chan->reg_chan) { in chan_start() 159 if (cfg->u.tx.filt_pswords) in chan_start() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/video/fbdev/nvidia/ |
| H A 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 …]
|
| /OK3568_Linux_fs/kernel/drivers/video/fbdev/aty/ |
| H A 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 …]
|
| /OK3568_Linux_fs/kernel/drivers/mailbox/ |
| H A D | mailbox-sti.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 36 #define MBOX_BASE(mdev, inst) ((mdev)->base + ((inst) * 4)) 49 * @name: Name of the mailbox 57 const char *name; member 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() 90 unsigned int instance = chan_info->instance; in sti_mbox_channel_is_enabled() 91 unsigned int channel = chan_info->channel; in sti_mbox_channel_is_enabled() 93 return mdev->enabled[instance] & BIT(channel); in sti_mbox_channel_is_enabled() [all …]
|
| H A D | ti-msgmgr.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright (C) 2015-2017 Texas Instruments Incorporated - https://www.ti.com/ 21 #include <linux/soc/ti/ti-msgmgr.h> 40 * struct ti_msgmgr_valid_queue_desc - SoC valid queues meant for this processor 52 * struct ti_msgmgr_desc - Description of message manager integration 63 * @data_region_name: Name of the proxy data region 64 * @status_region_name: Name of the proxy status region 65 * @ctrl_region_name: Name of the proxy control region 91 * struct ti_queue_inst - Description of a queue instance 92 * @name: Queue Name [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/gma500/ |
| H A 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 psb_intel_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 psb_intel_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 psb_intel_i2c_chan *chan = data; in set_clock() local [all …]
|
| /OK3568_Linux_fs/kernel/drivers/video/fbdev/riva/ |
| H A 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 …]
|
| /OK3568_Linux_fs/kernel/drivers/video/fbdev/i810/ |
| H A 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 …]
|
| /OK3568_Linux_fs/kernel/arch/sh/drivers/pci/ |
| H A 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-mapping.h> 21 #include "pcie-sh7786.h" 45 .name = "PCIe0 MEM 0", 47 .end = 0xfd000000 + SZ_8M - 1, 50 .name = "PCIe0 MEM 1", 52 .end = 0xc0000000 + SZ_512M - 1, 55 .name = "PCIe0 MEM 2", [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/nouveau/nvkm/engine/disp/ |
| H A D | channv50.c | 41 struct nvkm_subdev *subdev = &disp->base.engine.subdev; in nv50_disp_mthd_list() 42 struct nvkm_device *device = subdev->device; in nv50_disp_mthd_list() 45 for (i = 0; list->data[i].mthd; i++) { in nv50_disp_mthd_list() 46 if (list->data[i].addr) { in nv50_disp_mthd_list() 47 u32 next = nvkm_rd32(device, list->data[i].addr + base + 0); in nv50_disp_mthd_list() 48 u32 prev = nvkm_rd32(device, list->data[i].addr + base + c); in nv50_disp_mthd_list() 49 u32 mthd = list->data[i].mthd + (list->mthd * inst); in nv50_disp_mthd_list() 50 const char *name = list->data[i].name; in nv50_disp_mthd_list() local 54 snprintf(mods, sizeof(mods), "-> %08x", next); in nv50_disp_mthd_list() 60 mthd, prev, mods, name ? " // " : "", in nv50_disp_mthd_list() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/dma/ |
| H A 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 …]
|
| H A 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 …]
|
| /OK3568_Linux_fs/kernel/drivers/video/fbdev/savage/ |
| H A 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 …]
|
| /OK3568_Linux_fs/u-boot/drivers/mailbox/ |
| H A D | mailbox-uclass.c | 4 * SPDX-License-Identifier: GPL-2.0 10 #include <mailbox-uclass.h> 16 return (struct mbox_ops *)dev->driver->ops; in mbox_dev_ops() 19 static int mbox_of_xlate_default(struct mbox_chan *chan, in mbox_of_xlate_default() argument 22 debug("%s(chan=%p)\n", __func__, chan); in mbox_of_xlate_default() 24 if (args->args_count != 1) { in mbox_of_xlate_default() 25 debug("Invaild args_count: %d\n", args->args_count); in mbox_of_xlate_default() 26 return -EINVAL; in mbox_of_xlate_default() 29 chan->id = args->args[0]; in mbox_of_xlate_default() 34 int mbox_get_by_index(struct udevice *dev, int index, struct mbox_chan *chan) in mbox_get_by_index() argument [all …]
|
| /OK3568_Linux_fs/kernel/drivers/media/pci/cx25821/ |
| H A 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 …]
|
| /OK3568_Linux_fs/kernel/drivers/iio/multiplexer/ |
| H A D | iio-mux.c | 1 // SPDX-License-Identifier: GPL-2.0 33 struct iio_chan_spec *chan; member 40 struct mux_child *child = &mux->child[idx]; in iio_mux_select() 41 struct iio_chan_spec const *chan = &mux->chan[idx]; in iio_mux_select() local 45 ret = mux_control_select(mux->control, chan->channel); in iio_mux_select() 47 mux->cached_state = -1; in iio_mux_select() 51 if (mux->cached_state == chan->channel) in iio_mux_select() 54 if (chan->ext_info) { in iio_mux_select() 55 for (i = 0; chan->ext_info[i].name; ++i) { in iio_mux_select() 56 const char *attr = chan->ext_info[i].name; in iio_mux_select() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/video/fbdev/intelfb/ |
| H A D | intelfb_i2c.c | 20 FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL 35 #include <linux/i2c-algo-bit.h> 56 struct intelfb_i2c_chan *chan = data; in intelfb_gpio_setscl() local 57 struct intelfb_info *dinfo = chan->dinfo; in intelfb_gpio_setscl() 60 OUTREG(chan->reg, (state ? SCL_VAL_OUT : 0) | in intelfb_gpio_setscl() 62 val = INREG(chan->reg); in intelfb_gpio_setscl() 67 struct intelfb_i2c_chan *chan = data; in intelfb_gpio_setsda() local 68 struct intelfb_info *dinfo = chan->dinfo; in intelfb_gpio_setsda() 71 OUTREG(chan->reg, (state ? SDA_VAL_OUT : 0) | in intelfb_gpio_setsda() 73 val = INREG(chan->reg); in intelfb_gpio_setsda() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/staging/media/tegra-video/ |
| H A D | vi.c | 1 // SPDX-License-Identifier: GPL-2.0-only 21 #include <media/v4l2-event.h> 22 #include <media/v4l2-fh.h> 23 #include <media/v4l2-fwnode.h> 24 #include <media/v4l2-ioctl.h> 25 #include <media/videobuf2-dma-contig.h> 68 for (i = offset; i < vi->soc->nformats; ++i) { in tegra_get_format_idx_by_code() 69 if (vi->soc->video_formats[i].code == code) in tegra_get_format_idx_by_code() 73 return -1; in tegra_get_format_idx_by_code() 79 if (index >= vi->soc->nformats) in tegra_get_format_fourcc_by_idx() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/nouveau/nvkm/engine/fifo/ |
| H A D | chan.c | 24 #include "chan.h" 34 struct nvkm_fifo_chan *chan; member 43 struct nvkm_engine *engine = object->oproxy.object->engine; in nvkm_fifo_chan_child_fini() 44 struct nvkm_fifo_chan *chan = object->chan; in nvkm_fifo_chan_child_fini() local 45 struct nvkm_fifo_engn *engn = &chan->engn[engine->subdev.index]; in nvkm_fifo_chan_child_fini() 46 const char *name = nvkm_subdev_name[engine->subdev.index]; in nvkm_fifo_chan_child_fini() local 49 if (--engn->usecount) in nvkm_fifo_chan_child_fini() 52 if (chan->func->engine_fini) { in nvkm_fifo_chan_child_fini() 53 ret = chan->func->engine_fini(chan, engine, suspend); in nvkm_fifo_chan_child_fini() 55 nvif_error(&chan->object, in nvkm_fifo_chan_child_fini() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/net/wan/ |
| H A D | cosa.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright (C) 1995-1997 Jan "Yenya" Kasprzak <kas@fi.muni.cz> 20 * For Linux-specific utilities, see below in the "Software info" section. 24 * is a 2-port intelligent (with its own 8-bit CPU) synchronous serial card 28 * "scythe") is a next-generation sync/async board with two interfaces 29 * - currently any of V.24, X.21, V.35 and V.36 can be selected. 30 * It has a 16-bit SAB80166 CPU and can do up to 10 Mb/s per channel. 31 * The 8-channels version is in development. 34 * COSA can be also a bus-mastering device. 40 * firmware binaries and user-space utilities for downloading the firmware [all …]
|
| /OK3568_Linux_fs/kernel/sound/soc/ |
| H A D | soc-generic-dmaengine-pcm.c | 1 // SPDX-License-Identifier: GPL-2.0+ 4 // Author: Lars-Peter Clausen <lars@metafoo.de> 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->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 …]
|
| /OK3568_Linux_fs/kernel/arch/sh/drivers/dma/ |
| H A D | dma-api.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * arch/sh/drivers/dma/dma-api.c 5 * SuperH-specific DMA management API 24 struct dma_info *get_dma_info(unsigned int chan) in get_dma_info() argument 33 if ((chan < info->first_vchannel_nr) || in get_dma_info() 34 (chan >= info->first_vchannel_nr + info->nr_channels)) in get_dma_info() 49 if (dmac_name && (strcmp(dmac_name, info->name) != 0)) in get_dma_info_by_name() 68 nr += info->nr_channels; in get_nr_channels() 73 struct dma_channel *get_dma_channel(unsigned int chan) in get_dma_channel() argument 75 struct dma_info *info = get_dma_info(chan); in get_dma_channel() [all …]
|