/linux/drivers/dma/dw-edma/ |
H A D | dw-edma-v0-debugfs.c | 12 #include "dw-edma-v0-debugfs.h" 13 #include "dw-edma-v0-regs.h" 14 #include "dw-edma-core.h" 16 #define REGS_ADDR(dw, name) \ argument 18 struct dw_edma_v0_regs __iomem *__regs = (dw)->chip->reg_base; \ 23 #define REGS_CH_ADDR(dw, name, _dir, _ch) \ argument 27 if ((dw)->chip->mf == EDMA_MF_EDMA_LEGACY) \ 28 __ch_regs = REGS_ADDR(dw, type.legacy.ch); \ 30 __ch_regs = REGS_ADDR(dw, type.unroll.ch[_ch].rd); \ 32 __ch_regs = REGS_ADDR(dw, type.unroll.ch[_ch].wr); \ [all …]
|
H A D | dw-edma-v0-core.c | 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" 28 static inline struct dw_edma_v0_regs __iomem *__dw_regs(struct dw_edma *dw) in __dw_regs() argument 30 return dw->chip->reg_base; in __dw_regs() 33 #define SET_32(dw, name, value) \ argument 34 writel(value, &(__dw_regs(dw)->name)) 36 #define GET_32(dw, name) \ argument 37 readl(&(__dw_regs(dw)->name)) [all …]
|
H A D | dw-hdma-v0-debugfs.c | 12 #include "dw-hdma-v0-debugfs.h" 13 #include "dw-hdma-v0-regs.h" 14 #include "dw-edma-core.h" 16 #define REGS_ADDR(dw, name) \ argument 18 struct dw_hdma_v0_regs __iomem *__regs = (dw)->chip->reg_base; \ 23 #define REGS_CH_ADDR(dw, name, _dir, _ch) \ argument 28 __ch_regs = REGS_ADDR(dw, ch[_ch].rd); \ 30 __ch_regs = REGS_ADDR(dw, ch[_ch].wr); \ 35 #define CTX_REGISTER(dw, name, dir, ch) \ argument 36 {#name, REGS_CH_ADDR(dw, name, dir, ch)} [all …]
|
H A D | dw-hdma-v0-core.c | 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" 26 static inline struct dw_hdma_v0_regs __iomem *__dw_regs(struct dw_edma *dw) in __dw_regs() argument 28 return dw->chip->reg_base; in __dw_regs() 32 __dw_ch_regs(struct dw_edma *dw, enum dw_edma_dir dir, u16 ch) in __dw_ch_regs() argument 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 …]
|
H A D | dw-edma-core.c | 19 #include "dw-edma-core.h" 20 #include "dw-edma-v0-core.h" 21 #include "dw-hdma-v0-core.h" 46 struct dw_edma_chip *chip = chan->dw->chip; in dw_edma_get_pci_address() 78 struct dw_edma_chip *chip = desc->chan->dw->chip; in dw_edma_alloc_chunk() 187 struct dw_edma *dw = chan->dw; in dw_edma_start_transfer() local 205 dw_edma_core_start(dw, child, !desc->xfer_sz); in dw_edma_start_transfer() 220 if (chan->dw->chip->flags & DW_EDMA_CHIP_LOCAL) { in dw_edma_device_caps() 389 * If eDMA is embedded into the DW PCIe RP/EP and controlled from the in dw_edma_device_transfer() 404 if (chan->dw->chip->flags & DW_EDMA_CHIP_LOCAL) { in dw_edma_device_transfer() [all …]
|
H A D | dw-edma-core.h | 76 struct dw_edma *dw; member 95 struct dw_edma *dw; member 121 void (*off)(struct dw_edma *dw); 122 u16 (*ch_count)(struct dw_edma *dw, enum dw_edma_dir dir); 128 void (*debugfs_on)(struct dw_edma *dw); 167 void dw_edma_core_off(struct dw_edma *dw) in dw_edma_core_off() argument 169 dw->core->off(dw); in dw_edma_core_off() 173 u16 dw_edma_core_ch_count(struct dw_edma *dw, enum dw_edma_dir dir) in dw_edma_core_ch_count() argument 175 return dw->core->ch_count(dw, dir); in dw_edma_core_ch_count() 181 return chan->dw->core->ch_status(chan); in dw_edma_core_ch_status() [all …]
|
H A D | Makefile | 3 obj-$(CONFIG_DW_EDMA) += dw-edma.o 4 dw-edma-$(CONFIG_DEBUG_FS) := dw-edma-v0-debugfs.o \ 5 dw-hdma-v0-debugfs.o 6 dw-edma-objs := dw-edma-core.o \ 7 dw-edma-v0-core.o \ 8 dw-hdma-v0-core.o $(dw-edma-y) 9 obj-$(CONFIG_DW_EDMA_PCIE) += dw-edma-pcie.o
|
/linux/drivers/gpu/drm/xe/ |
H A D | xe_ring_ops.c | 54 u32 *dw, int i) in emit_aux_table_inv() argument 56 dw[i++] = MI_LOAD_REGISTER_IMM | MI_LRI_NUM_REGS(1) | MI_LRI_MMIO_REMAP_EN; in emit_aux_table_inv() 57 dw[i++] = reg.addr + gt->mmio.adj_offset; in emit_aux_table_inv() 58 dw[i++] = AUX_INV; in emit_aux_table_inv() 59 dw[i++] = MI_NOOP; in emit_aux_table_inv() 64 static int emit_user_interrupt(u32 *dw, int i) in emit_user_interrupt() argument 66 dw[i++] = MI_USER_INTERRUPT; in emit_user_interrupt() 67 dw[i++] = MI_ARB_ON_OFF | MI_ARB_ENABLE; in emit_user_interrupt() 68 dw[i++] = MI_ARB_CHECK; in emit_user_interrupt() 73 static int emit_store_imm_ggtt(u32 addr, u32 value, u32 *dw, int i) in emit_store_imm_ggtt() argument [all …]
|
/linux/drivers/misc/ |
H A D | dw-xdata-pcie.c | 20 #define DW_XDATA_DRIVER_NAME "dw-xdata-pcie" 73 static inline struct dw_xdata_regs __iomem *__dw_regs(struct dw_xdata *dw) in __dw_regs() argument 75 return dw->rg_region.vaddr; in __dw_regs() 78 static void dw_xdata_stop(struct dw_xdata *dw) in dw_xdata_stop() argument 82 mutex_lock(&dw->mutex); in dw_xdata_stop() 84 burst = readl(&(__dw_regs(dw)->burst_cnt)); in dw_xdata_stop() 88 writel(burst, &(__dw_regs(dw)->burst_cnt)); in dw_xdata_stop() 91 mutex_unlock(&dw->mutex); in dw_xdata_stop() 94 static void dw_xdata_start(struct dw_xdata *dw, bool write) in dw_xdata_start() argument 96 struct device *dev = &dw->pdev->dev; in dw_xdata_start() [all …]
|
/linux/drivers/gpu/drm/bridge/synopsys/ |
H A D | dw-hdmi-ahb-audio.c | 22 #include "dw-hdmi-audio.h" 24 #define DRIVER_NAME "dw-hdmi-ahb-audio" 154 static void dw_hdmi_reformat_iec958(struct snd_dw_hdmi *dw, in dw_hdmi_reformat_iec958() argument 157 u32 *src = dw->buf_src + offset; in dw_hdmi_reformat_iec958() 158 u32 *dst = dw->buf_dst + offset; in dw_hdmi_reformat_iec958() 159 u32 *end = dw->buf_src + offset + bytes; in dw_hdmi_reformat_iec958() 182 static void dw_hdmi_reformat_s24(struct snd_dw_hdmi *dw, in dw_hdmi_reformat_s24() argument 185 u32 *src = dw->buf_src + offset; in dw_hdmi_reformat_s24() 186 u32 *dst = dw->buf_dst + offset; in dw_hdmi_reformat_s24() 187 u32 *end = dw->buf_src + offset + bytes; in dw_hdmi_reformat_s24() [all …]
|
H A D | dw-hdmi-gp-audio.c | 3 * dw-hdmi-gp-audio.c 26 #include "dw-hdmi-audio.h" 28 #define DRIVER_NAME "dw-hdmi-gp-audio" 79 struct snd_dw_hdmi *dw = dev_get_drvdata(dev); in audio_hw_params() local 82 dw_hdmi_set_sample_rate(dw->data.hdmi, params->sample_rate); in audio_hw_params() 86 dw_hdmi_set_channel_count(dw->data.hdmi, params->channels); in audio_hw_params() 87 dw_hdmi_set_channel_allocation(dw->data.hdmi, ca); in audio_hw_params() 89 dw_hdmi_set_sample_non_pcm(dw->data.hdmi, in audio_hw_params() 91 dw_hdmi_set_sample_width(dw->data.hdmi, params->sample_width); in audio_hw_params() 103 struct snd_dw_hdmi *dw = dev_get_drvdata(dev); in audio_mute_stream() local [all …]
|
/linux/drivers/dma/dw/ |
H A D | core.c | 80 struct dw_dma *dw = to_dw_dma(dwc->chan.device); in dwc_desc_get() local 84 desc = dma_pool_zalloc(dw->desc_pool, GFP_ATOMIC, &phys); in dwc_desc_get() 99 struct dw_dma *dw = to_dw_dma(dwc->chan.device); in dwc_desc_put() local 107 dma_pool_free(dw->desc_pool, child, child->txd.phys); in dwc_desc_put() 111 dma_pool_free(dw->desc_pool, desc, desc->txd.phys); in dwc_desc_put() 117 struct dw_dma *dw = to_dw_dma(dwc->chan.device); in dwc_initialize() local 119 dw->initialize_chan(dwc); in dwc_initialize() 122 channel_set_bit(dw, MASK.XFER, dwc->mask); in dwc_initialize() 123 channel_set_bit(dw, MASK.ERROR, dwc->mask); in dwc_initialize() 139 static inline void dwc_chan_disable(struct dw_dma *dw, struct dw_dma_chan *dwc) in dwc_chan_disable() argument [all …]
|
H A D | dw.c | 16 struct dw_dma *dw = to_dw_dma(dwc->chan.device); in dw_dma_initialize_chan() local 23 cfghi |= DWC_CFGH_PROTCTL(dw->pdata->protctl); in dw_dma_initialize_chan() 100 static void dw_dma_set_device_name(struct dw_dma *dw, int id) in dw_dma_set_device_name() argument 102 snprintf(dw->name, sizeof(dw->name), "dw:dmac%d", id); in dw_dma_set_device_name() 105 static void dw_dma_disable(struct dw_dma *dw) in dw_dma_disable() argument 107 do_dw_dma_off(dw); in dw_dma_disable() 110 static void dw_dma_enable(struct dw_dma *dw) in dw_dma_enable() argument 112 do_dw_dma_on(dw); in dw_dma_enable() 117 struct dw_dma *dw; in dw_dma_probe() local 119 dw = devm_kzalloc(chip->dev, sizeof(*dw), GFP_KERNEL); in dw_dma_probe() [all …]
|
H A D | idma32.c | 48 struct dw_dma *dw = to_dw_dma(dwc->chan.device); in idma32_initialize_chan_xbar() local 49 void __iomem *misc = __dw_regs(dw); in idma32_initialize_chan_xbar() 221 static void idma32_set_device_name(struct dw_dma *dw, int id) in idma32_set_device_name() argument 223 snprintf(dw->name, sizeof(dw->name), "idma32:dmac%d", id); in idma32_set_device_name() 232 static void idma32_fifo_partition(struct dw_dma *dw) in idma32_fifo_partition() argument 245 idma32_writeq(dw, FIFO_PARTITION1, fifo_partition); in idma32_fifo_partition() 246 idma32_writeq(dw, FIFO_PARTITION0, fifo_partition); in idma32_fifo_partition() 249 static void idma32_disable(struct dw_dma *dw) in idma32_disable() argument 251 do_dw_dma_off(dw); in idma32_disable() 252 idma32_fifo_partition(dw); in idma32_disable() [all …]
|
H A D | internal.h | 11 #include <linux/dma/dw.h> 18 void do_dw_dma_on(struct dw_dma *dw); 19 void do_dw_dma_off(struct dw_dma *dw); 27 void dw_dma_acpi_controller_register(struct dw_dma *dw); 28 void dw_dma_acpi_controller_free(struct dw_dma *dw); 30 static inline void dw_dma_acpi_controller_register(struct dw_dma *dw) {} in dw_dma_acpi_controller_register() argument 31 static inline void dw_dma_acpi_controller_free(struct dw_dma *dw) {} in dw_dma_acpi_controller_free() argument 38 void dw_dma_of_controller_register(struct dw_dma *dw); 39 void dw_dma_of_controller_free(struct dw_dma *dw); 45 static inline void dw_dma_of_controller_register(struct dw_dma *dw) {} in dw_dma_of_controller_register() argument [all …]
|
/linux/Documentation/devicetree/bindings/mmc/ |
H A D | samsung,exynos-dw-mshc.yaml | 4 $id: http://devicetree.org/schemas/mmc/samsung,exynos-dw-mshc.yaml# 19 - axis,artpec8-dw-mshc 20 - samsung,exynos4210-dw-mshc 21 - samsung,exynos4412-dw-mshc 22 - samsung,exynos5250-dw-mshc 23 - samsung,exynos5420-dw-mshc 24 - samsung,exynos5420-dw-mshc-smu 25 - samsung,exynos7-dw-mshc 26 - samsung,exynos7-dw-mshc-smu 29 - samsung,exynos5433-dw-mshc-smu [all …]
|
H A D | rockchip-dw-mshc.yaml | 4 $id: http://devicetree.org/schemas/mmc/rockchip-dw-mshc.yaml# 12 This file documents the combined properties for the core Synopsys dw mshc 13 controller that are not already included in the synopsys-dw-mshc-common.yaml 17 - $ref: synopsys-dw-mshc-common.yaml# 27 - const: rockchip,rk2928-dw-mshc 29 - const: rockchip,rk3288-dw-mshc 32 - rockchip,px30-dw-mshc 33 - rockchip,rk1808-dw-mshc 34 - rockchip,rk3036-dw-mshc 35 - rockchip,rk3128-dw-mshc [all …]
|
H A D | k3-dw-mshc.txt | 4 Read synopsys-dw-mshc.txt for more details 8 differences between the core Synopsys dw mshc controller properties described 9 by synopsys-dw-mshc.txt and the properties used by the Hisilicon specific 15 - "hisilicon,hi3660-dw-mshc": for controllers with hi3660 specific extensions. 16 - "hisilicon,hi3670-dw-mshc", "hisilicon,hi3660-dw-mshc": for controllers 18 - "hisilicon,hi4511-dw-mshc": for controllers with hi4511 specific extensions. 19 - "hisilicon,hi6220-dw-mshc": for controllers with hi6220 specific extensions. 30 compatible = "hisilicon,hi4511-dw-mshc"; 55 compatible = "hisilicon,hi6220-dw-mshc";
|
/linux/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu_ih.c | 144 * @num_dw: size of the iv in dw 258 uint32_t dw[8]; in amdgpu_ih_decode_iv_helper() local 260 dw[0] = le32_to_cpu(ih->ring[ring_index + 0]); in amdgpu_ih_decode_iv_helper() 261 dw[1] = le32_to_cpu(ih->ring[ring_index + 1]); in amdgpu_ih_decode_iv_helper() 262 dw[2] = le32_to_cpu(ih->ring[ring_index + 2]); in amdgpu_ih_decode_iv_helper() 263 dw[3] = le32_to_cpu(ih->ring[ring_index + 3]); in amdgpu_ih_decode_iv_helper() 264 dw[4] = le32_to_cpu(ih->ring[ring_index + 4]); in amdgpu_ih_decode_iv_helper() 265 dw[5] = le32_to_cpu(ih->ring[ring_index + 5]); in amdgpu_ih_decode_iv_helper() 266 dw[6] = le32_to_cpu(ih->ring[ring_index + 6]); in amdgpu_ih_decode_iv_helper() 267 dw[7] = le32_to_cpu(ih->ring[ring_index + 7]); in amdgpu_ih_decode_iv_helper() [all …]
|
/linux/include/uapi/scsi/ |
H A D | scsi_bsg_ufs.h | 18 /* uic commands are 4DW long, per UFSHCI V2.1 paragraph 5.6.1 */ 41 * @dword_0: UPIU header DW-0 42 * @dword_1: UPIU header DW-1 43 * @dword_2: UPIU header DW-2 105 * @value: Attribute value to be written DW-5 106 * @reserved: spec reserved DW-6,7 129 * @osf6: spec field DW 8,9 130 * @osf7: spec field DW 10,11 148 * @exp_data_transfer_len: Data Transfer Length DW-3 149 * @cdb: Command Descriptor Block CDB DW-4 to DW-7 [all …]
|
/linux/arch/arm/boot/dts/synaptics/ |
H A D | berlin2cd.dtsi | 175 compatible = "snps,dw-apb-gpio"; 181 compatible = "snps,dw-apb-gpio-port"; 193 compatible = "snps,dw-apb-gpio"; 199 compatible = "snps,dw-apb-gpio-port"; 211 compatible = "snps,dw-apb-gpio"; 217 compatible = "snps,dw-apb-gpio-port"; 229 compatible = "snps,dw-apb-gpio"; 235 compatible = "snps,dw-apb-gpio-port"; 267 compatible = "snps,dw-apb-ssi"; 277 compatible = "snps,dw-wdt"; [all …]
|
H A D | berlin2.dtsi | 185 compatible = "snps,dw-apb-gpio"; 191 compatible = "snps,dw-apb-gpio-port"; 203 compatible = "snps,dw-apb-gpio"; 209 compatible = "snps,dw-apb-gpio-port"; 221 compatible = "snps,dw-apb-gpio"; 227 compatible = "snps,dw-apb-gpio-port"; 239 compatible = "snps,dw-apb-gpio"; 245 compatible = "snps,dw-apb-gpio-port"; 257 compatible = "snps,dw-apb-timer"; 266 compatible = "snps,dw-apb-timer"; [all …]
|
/linux/drivers/gpu/drm/i915/display/ |
H A D | intel_combo_phy_regs.h | 24 #define _ICL_PORT_CL_DW(dw, phy) (_ICL_COMBOPHY(phy) + \ argument 25 4 * (dw)) 51 #define _ICL_PORT_COMP_DW(dw, phy) (_ICL_COMBOPHY(phy) + \ argument 52 _ICL_PORT_COMP + 4 * (dw)) 80 #define _ICL_PORT_PCS_DW_AUX(dw, phy) (_ICL_COMBOPHY(phy) + \ argument 81 _ICL_PORT_PCS_AUX + 4 * (dw)) 82 #define _ICL_PORT_PCS_DW_GRP(dw, phy) (_ICL_COMBOPHY(phy) + \ argument 83 _ICL_PORT_PCS_GRP + 4 * (dw)) 84 #define _ICL_PORT_PCS_DW_LN(dw, ln, phy) (_ICL_COMBOPHY(phy) + \ argument 85 _ICL_PORT_PCS_LN(ln) + 4 * (dw)) [all …]
|
/linux/Documentation/devicetree/bindings/watchdog/ |
H A D | snps,dw-wdt.yaml | 4 $id: http://devicetree.org/schemas/watchdog/snps,dw-wdt.yaml# 18 - const: snps,dw-wdt 36 - const: snps,dw-wdt 42 description: DW Watchdog pre-timeout interrupt 58 description: Phandle to the DW Watchdog reset lane 64 DW APB Watchdog custom timer intervals - Timeout Period ranges (TOPs). 68 the timer expiration intervals supported by the DW APB Watchdog. Note 69 DW APB Watchdog IP-core might be synthesized with fixed TOP values, 88 compatible = "snps,dw-wdt"; 97 compatible = "snps,dw-wdt";
|
/linux/arch/arm64/boot/dts/synaptics/ |
H A D | berlin4ct.dtsi | 136 compatible = "snps,dw-apb-gpio"; 142 compatible = "snps,dw-apb-gpio-port"; 154 compatible = "snps,dw-apb-gpio"; 160 compatible = "snps,dw-apb-gpio-port"; 172 compatible = "snps,dw-apb-gpio"; 178 compatible = "snps,dw-apb-gpio-port"; 190 compatible = "snps,dw-apb-gpio"; 196 compatible = "snps,dw-apb-gpio-port"; 208 compatible = "snps,dw-apb-ictl"; 235 compatible = "snps,dw-apb-ictl"; [all …]
|