/linux/drivers/spi/ |
H A D | spi-dw-core.c | 62 static void dw_spi_debugfs_init(struct dw_spi *dws) in dw_spi_debugfs_init() argument 66 snprintf(name, 32, "dw_spi%d", dws->host->bus_num); in dw_spi_debugfs_init() 67 dws->debugfs = debugfs_create_dir(name, NULL); in dw_spi_debugfs_init() 69 dws->regset.regs = dw_spi_dbgfs_regs; in dw_spi_debugfs_init() 70 dws->regset.nregs = ARRAY_SIZE(dw_spi_dbgfs_regs); in dw_spi_debugfs_init() 71 dws->regset.base = dws->regs; in dw_spi_debugfs_init() 72 debugfs_create_regset32("registers", 0400, dws->debugfs, &dws->regset); in dw_spi_debugfs_init() 75 static void dw_spi_debugfs_remove(struct dw_spi *dws) in dw_spi_debugfs_remove() argument 77 debugfs_remove_recursive(dws->debugfs); in dw_spi_debugfs_remove() 81 static inline void dw_spi_debugfs_init(struct dw_spi *dws) in dw_spi_debugfs_init() argument [all …]
|
H A D | spi-dw-dma.c | 37 static void dw_spi_dma_maxburst_init(struct dw_spi *dws) in dw_spi_dma_maxburst_init() argument 43 def_burst = dws->fifo_len / 2; in dw_spi_dma_maxburst_init() 45 ret = dma_get_slave_caps(dws->rxchan, &caps); in dw_spi_dma_maxburst_init() 51 dws->rxburst = min(max_burst, def_burst); in dw_spi_dma_maxburst_init() 52 dw_writel(dws, DW_SPI_DMARDLR, dws->rxburst - 1); in dw_spi_dma_maxburst_init() 54 ret = dma_get_slave_caps(dws->txchan, &caps); in dw_spi_dma_maxburst_init() 71 dws->txburst = min(max_burst, def_burst); in dw_spi_dma_maxburst_init() 72 dw_writel(dws, DW_SPI_DMATDLR, dws->txburst); in dw_spi_dma_maxburst_init() 75 static int dw_spi_dma_caps_init(struct dw_spi *dws) in dw_spi_dma_caps_init() argument 80 ret = dma_get_slave_caps(dws->txchan, &tx); in dw_spi_dma_caps_init() [all …]
|
H A D | spi-dw.h | 142 int (*dma_init)(struct device *dev, struct dw_spi *dws); 143 void (*dma_exit)(struct dw_spi *dws); 144 int (*dma_setup)(struct dw_spi *dws, struct spi_transfer *xfer); 147 int (*dma_transfer)(struct dw_spi *dws, struct spi_transfer *xfer); 148 void (*dma_stop)(struct dw_spi *dws); 179 irqreturn_t (*transfer_handler)(struct dw_spi *dws); 205 static inline u32 dw_readl(struct dw_spi *dws, u32 offset) in dw_readl() argument 207 return __raw_readl(dws->regs + offset); in dw_readl() 210 static inline void dw_writel(struct dw_spi *dws, u32 offset, u32 val) in dw_writel() argument 212 __raw_writel(val, dws->regs + offset); in dw_writel() [all …]
|
H A D | spi-dw-bt1.c | 33 struct dw_spi dws; member 43 container_of(spi_controller_get_devdata(_ctlr), struct dw_spi_bt1, dws) 55 !dwsbt1->dws.mem_ops.supports_op(desc->mem, &desc->info.op_tmpl)) in dw_spi_bt1_dirmap_create() 113 struct dw_spi *dws = &dwsbt1->dws; in dw_spi_bt1_dirmap_read() local 136 dw_spi_enable_chip(dws, 0); in dw_spi_bt1_dirmap_read() 138 dw_spi_update_config(dws, mem->spi, &cfg); in dw_spi_bt1_dirmap_read() 140 dw_spi_umask_intr(dws, DW_SPI_INT_RXFI); in dw_spi_bt1_dirmap_read() 142 dw_spi_enable_chip(dws, 1); in dw_spi_bt1_dirmap_read() 160 ret = dw_spi_check_status(dws, true); in dw_spi_bt1_dirmap_read() 170 struct dw_spi *dws = &dwsbt1->dws; in dw_spi_bt1_std_init() local [all …]
|
H A D | spi-dw-pci.c | 34 static int dw_spi_pci_mid_init(struct dw_spi *dws) in dw_spi_pci_mid_init() argument 44 clk_cdiv = readl(clk_reg + dws->bus_num * sizeof(u32)); in dw_spi_pci_mid_init() 47 dws->max_freq = MRST_SPI_CLK_BASE / (clk_cdiv + 1); in dw_spi_pci_mid_init() 51 dw_spi_dma_setup_mfld(dws); in dw_spi_pci_mid_init() 56 static int dw_spi_pci_generic_init(struct dw_spi *dws) in dw_spi_pci_generic_init() argument 58 dw_spi_dma_setup_generic(dws); in dw_spi_pci_generic_init() 85 struct dw_spi *dws; in dw_spi_pci_probe() local 93 dws = devm_kzalloc(&pdev->dev, sizeof(*dws), GFP_KERNEL); in dw_spi_pci_probe() 94 if (!dws) in dw_spi_pci_probe() 98 dws->paddr = pci_resource_start(pdev, pci_bar); in dw_spi_pci_probe() [all …]
|
H A D | spi-dw-mmio.c | 29 struct dw_spi dws; member 79 struct dw_spi *dws = spi_controller_get_devdata(spi->controller); in dw_spi_mscc_set_cs() local 80 struct dw_spi_mmio *dwsmmio = container_of(dws, struct dw_spi_mmio, dws); in dw_spi_mscc_set_cs() 124 dwsmmio->dws.set_cs = dw_spi_mscc_set_cs; in dw_spi_mscc_init() 152 struct dw_spi *dws = spi_controller_get_devdata(spi->controller); in dw_spi_sparx5_set_cs() local 153 struct dw_spi_mmio *dwsmmio = container_of(dws, struct dw_spi_mmio, dws); in dw_spi_sparx5_set_cs() 199 dwsmmio->dws.set_cs = dw_spi_sparx5_set_cs; in dw_spi_mscc_sparx5_init() 208 dwsmmio->dws.caps = DW_SPI_CAP_CS_OVERRIDE; in dw_spi_alpine_init() 216 dw_spi_dma_setup_generic(&dwsmmio->dws); in dw_spi_pssi_init() 224 dwsmmio->dws.ip = DW_HSSI_ID; in dw_spi_hssi_init() [all …]
|
H A D | spi-pxa2xx-pci.c | 82 struct dw_dma_slave *dws = param; in lpss_dma_filter() local 84 if (dws->dma_dev != chan->device->dev) in lpss_dma_filter() 87 chan->private = dws; in lpss_dma_filter()
|
/linux/drivers/dma/dw/ |
H A D | dw.c | 19 bool hs_polarity = dwc->dws.hs_polarity; in dw_dma_initialize_chan() 21 cfghi |= DWC_CFGH_DST_PER(dwc->dws.dst_id); in dw_dma_initialize_chan() 22 cfghi |= DWC_CFGH_SRC_PER(dwc->dws.src_id); in dw_dma_initialize_chan() 83 sms = dwc->dws.m_master; in dw_dma_prepare_ctllo() 84 dms = dwc->dws.p_master; in dw_dma_prepare_ctllo() 87 sms = dwc->dws.p_master; in dw_dma_prepare_ctllo() 88 dms = dwc->dws.m_master; in dw_dma_prepare_ctllo() 91 sms = dwc->dws.m_master; in dw_dma_prepare_ctllo() 92 dms = dwc->dws.m_master; in dw_dma_prepare_ctllo()
|
H A D | idma32.c | 115 src_id = dwc->dws.src_id; in idma32_initialize_chan_xbar() 118 dst_id = dwc->dws.dst_id; in idma32_initialize_chan_xbar() 150 cfghi |= IDMA32C_CFGH_DST_PER(dwc->dws.dst_id & 0xf); in idma32_initialize_chan_generic() 151 cfghi |= IDMA32C_CFGH_SRC_PER(dwc->dws.src_id & 0xf); in idma32_initialize_chan_generic() 154 cfghi |= IDMA32C_CFGH_DST_PER_EXT(dwc->dws.dst_id >> 4 & 0x3); in idma32_initialize_chan_generic() 155 cfghi |= IDMA32C_CFGH_SRC_PER_EXT(dwc->dws.src_id >> 4 & 0x3); in idma32_initialize_chan_generic()
|
H A D | core.c | 175 u8 lms = DWC_LLP_LMS(dwc->dws.m_master); in dwc_dostart() 548 u8 m_master = dwc->dws.m_master; in dwc_prep_dma_memcpy() 625 u8 lms = DWC_LLP_LMS(dwc->dws.m_master); in dwc_prep_slave_sg() 766 struct dw_dma_slave *dws = param; in dw_dma_filter() local 768 if (dws->dma_dev != chan->device->dev) in dw_dma_filter() 772 if (dws->channels && !(dws->channels & dwc->mask)) in dw_dma_filter() 776 memcpy(&dwc->dws, dws, sizeof(struct dw_dma_slave)); in dw_dma_filter() 812 max_width = dw->pdata->data_width[dwc->dws.p_master]; in dwc_verify_p_buswidth() 837 mem_width = dw->pdata->data_width[dwc->dws.m_master]; in dwc_verify_m_buswidth() 1115 memset(&dwc->dws, 0, sizeof(struct dw_dma_slave)); in dwc_free_chan_resources()
|
H A D | regs.h | 291 struct dw_dma_slave dws; member
|
/linux/drivers/tty/serial/8250/ |
H A D | 8250_lpss.c | 267 struct dw_dma_slave *dws = param; in lpss8250_dma_filter() local 269 if (dws->dma_dev != chan->device->dev) in lpss8250_dma_filter() 272 chan->private = dws; in lpss8250_dma_filter()
|
/linux/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu_rlc.c | 89 int amdgpu_gfx_rlc_init_sr(struct amdgpu_device *adev, u32 dws) in amdgpu_gfx_rlc_init_sr() argument 97 r = amdgpu_bo_create_reserved(adev, dws * 4, PAGE_SIZE, in amdgpu_gfx_rlc_init_sr() 130 u32 dws; in amdgpu_gfx_rlc_init_csb() local 134 adev->gfx.rlc.clear_state_size = dws = adev->gfx.rlc.funcs->get_csb_size(adev); in amdgpu_gfx_rlc_init_csb() 135 r = amdgpu_bo_create_kernel(adev, dws * 4, PAGE_SIZE, in amdgpu_gfx_rlc_init_csb()
|
H A D | amdgpu_rlc.h | 341 int amdgpu_gfx_rlc_init_sr(struct amdgpu_device *adev, u32 dws);
|
H A D | gfx_v7_0.c | 3191 u32 dws; in gfx_v7_0_rlc_init() local 3212 dws = adev->gfx.rlc.reg_list_size; in gfx_v7_0_rlc_init() 3213 dws += (5 * 16) + 48 + 48 + 64; in gfx_v7_0_rlc_init() 3219 r = amdgpu_gfx_rlc_init_sr(adev, dws); in gfx_v7_0_rlc_init()
|
/linux/sound/aoa/soundbus/i2sbus/ |
H A D | pcm.c | 329 int dws = 0; /* data word sizes reg */ in i2sbus_pcm_prepare() local 467 dws = (2 << I2S_DWS_NUM_CHANNELS_IN_SHIFT) | in i2sbus_pcm_prepare() 471 dws = (2 << I2S_DWS_NUM_CHANNELS_IN_SHIFT) | in i2sbus_pcm_prepare() 478 && in_le32(&i2sdev->intfregs->data_word_sizes) == dws) in i2sbus_pcm_prepare() 506 out_le32(&i2sdev->intfregs->data_word_sizes, dws); in i2sbus_pcm_prepare()
|
/linux/drivers/char/xillybus/ |
H A D | xillyusb.c | 939 int dws = xb->len >> 2; in process_bulk_in() local 950 if ((dws << 2) != xb->len) { in process_bulk_in() 957 bytes = min(xdev->in_bytes_left, dws << 2); in process_bulk_in() 963 while (dws) { in process_bulk_in() 965 dws--; in process_bulk_in() 988 bytes = min(count + 1, dws << 2); in process_bulk_in() 1015 dws -= dwconsume; in process_bulk_in()
|
/linux/drivers/gpu/drm/radeon/ |
H A D | evergreen.c | 4156 u32 dws, data, i, j, k, reg_num; in sumo_rlc_init() local 4163 dws = rdev->rlc.reg_list_size; in sumo_rlc_init() 4165 dws += (5 * 16) + 48 + 48 + 64; in sumo_rlc_init() 4172 r = radeon_bo_create(rdev, dws * 4, PAGE_SIZE, true, in sumo_rlc_init() 4214 for (i = 0; i < dws; i++) { in sumo_rlc_init() 4217 if (i < dws) in sumo_rlc_init() 4232 rdev->rlc.clear_state_size = dws = cik_get_csb_size(rdev); in sumo_rlc_init() 4235 dws = rdev->rlc.clear_state_size + (256 / 4); in sumo_rlc_init() 4238 dws = 0; in sumo_rlc_init() 4242 dws += cs_data[i].section[j].reg_count; in sumo_rlc_init() [all …]
|