/kernel/linux/linux-5.10/drivers/dma/ |
H A D | sun4i-dma.c | 386 static int sanitize_config(struct dma_slave_config *sconfig, in sanitize_config() argument 391 if ((sconfig->dst_addr_width == DMA_SLAVE_BUSWIDTH_UNDEFINED) || in sanitize_config() 392 !sconfig->dst_maxburst) in sanitize_config() 395 if (sconfig->src_addr_width == DMA_SLAVE_BUSWIDTH_UNDEFINED) in sanitize_config() 396 sconfig->src_addr_width = sconfig->dst_addr_width; in sanitize_config() 398 if (!sconfig->src_maxburst) in sanitize_config() 399 sconfig->src_maxburst = sconfig->dst_maxburst; in sanitize_config() 404 if ((sconfig in sanitize_config() 432 generate_ndma_promise(struct dma_chan *chan, dma_addr_t src, dma_addr_t dest, size_t len, struct dma_slave_config *sconfig, enum dma_transfer_direction direction) generate_ndma_promise() argument 499 generate_ddma_promise(struct dma_chan *chan, dma_addr_t src, dma_addr_t dest, size_t len, struct dma_slave_config *sconfig) generate_ddma_promise() argument 615 struct dma_slave_config *sconfig = &vchan->cfg; sun4i_dma_prep_dma_memcpy() local 666 struct dma_slave_config *sconfig = &vchan->cfg; sun4i_dma_prep_dma_cyclic() local 777 struct dma_slave_config *sconfig = &vchan->cfg; sun4i_dma_prep_slave_sg() local [all...] |
H A D | uniphier-xdmac.c | 91 struct dma_slave_config sconfig; member 151 buswidth = xc->sconfig.src_addr_width; in uniphier_xdmac_chan_start() 160 buswidth = xc->sconfig.dst_addr_width; in uniphier_xdmac_chan_start() 336 buswidth = xc->sconfig.src_addr_width; in uniphier_xdmac_prep_slave_sg() 337 maxburst = xc->sconfig.src_maxburst; in uniphier_xdmac_prep_slave_sg() 339 buswidth = xc->sconfig.dst_addr_width; in uniphier_xdmac_prep_slave_sg() 340 maxburst = xc->sconfig.dst_maxburst; in uniphier_xdmac_prep_slave_sg() 357 ? xc->sconfig.src_addr : sg_dma_address(sg); in uniphier_xdmac_prep_slave_sg() 359 ? xc->sconfig.dst_addr : sg_dma_address(sg); in uniphier_xdmac_prep_slave_sg() 400 memcpy(&xc->sconfig, confi in uniphier_xdmac_slave_config() [all...] |
H A D | at_xdmac.c | 199 struct dma_slave_config sconfig; member 556 csize = ffs(atchan->sconfig.src_maxburst) - 1; in at_xdmac_compute_chan_conf() 562 dwidth = ffs(atchan->sconfig.src_addr_width) - 1; in at_xdmac_compute_chan_conf() 579 csize = ffs(atchan->sconfig.dst_maxburst) - 1; in at_xdmac_compute_chan_conf() 585 dwidth = ffs(atchan->sconfig.dst_addr_width) - 1; in at_xdmac_compute_chan_conf() 603 static int at_xdmac_check_slave_config(struct dma_slave_config *sconfig) in at_xdmac_check_slave_config() argument 605 if ((sconfig->src_maxburst > AT_XDMAC_MAX_CSIZE) in at_xdmac_check_slave_config() 606 || (sconfig->dst_maxburst > AT_XDMAC_MAX_CSIZE)) in at_xdmac_check_slave_config() 609 if ((sconfig->src_addr_width > AT_XDMAC_MAX_DWIDTH) in at_xdmac_check_slave_config() 610 || (sconfig in at_xdmac_check_slave_config() 616 at_xdmac_set_slave_config(struct dma_chan *chan, struct dma_slave_config *sconfig) at_xdmac_set_slave_config() argument [all...] |
H A D | at_hdmac.c | 1031 struct dma_slave_config *sconfig = &atchan->dma_sconfig; in atc_prep_slave_sg() local 1053 ctrla = ATC_SCSIZE(sconfig->src_maxburst) in atc_prep_slave_sg() 1054 | ATC_DCSIZE(sconfig->dst_maxburst); in atc_prep_slave_sg() 1059 reg_width = convert_buswidth(sconfig->dst_addr_width); in atc_prep_slave_sg() 1065 reg = sconfig->dst_addr; in atc_prep_slave_sg() 1099 reg_width = convert_buswidth(sconfig->src_addr_width); in atc_prep_slave_sg() 1106 reg = sconfig->src_addr; in atc_prep_slave_sg() 1193 struct dma_slave_config *sconfig = &atchan->dma_sconfig; in atc_dma_cyclic_fill_desc() local 1197 ctrla = ATC_SCSIZE(sconfig->src_maxburst) in atc_dma_cyclic_fill_desc() 1198 | ATC_DCSIZE(sconfig in atc_dma_cyclic_fill_desc() 1251 struct dma_slave_config *sconfig = &atchan->dma_sconfig; atc_prep_dma_cyclic() local 1319 atc_config(struct dma_chan *chan, struct dma_slave_config *sconfig) atc_config() argument [all...] |
H A D | owl-dma.c | 384 struct dma_slave_config *sconfig, in owl_dma_cfg_lli() 408 if (sconfig->dst_addr_width == DMA_SLAVE_BUSWIDTH_1_BYTE) in owl_dma_cfg_lli() 421 if (sconfig->src_addr_width == DMA_SLAVE_BUSWIDTH_1_BYTE) in owl_dma_cfg_lli() 923 struct dma_slave_config *sconfig = &vchan->cfg; in owl_dma_prep_slave_sg() local 955 dst = sconfig->dst_addr; in owl_dma_prep_slave_sg() 957 src = sconfig->src_addr; in owl_dma_prep_slave_sg() 961 ret = owl_dma_cfg_lli(vchan, lli, src, dst, len, dir, sconfig, in owl_dma_prep_slave_sg() 988 struct dma_slave_config *sconfig = &vchan->cfg; in owl_prep_dma_cyclic() local 1011 dst = sconfig->dst_addr; in owl_prep_dma_cyclic() 1013 src = sconfig in owl_prep_dma_cyclic() 380 owl_dma_cfg_lli(struct owl_dma_vchan *vchan, struct owl_dma_lli *lli, dma_addr_t src, dma_addr_t dst, u32 len, enum dma_transfer_direction dir, struct dma_slave_config *sconfig, bool is_cyclic) owl_dma_cfg_lli() argument [all...] |
H A D | sun6i-dma.c | 579 struct dma_slave_config *sconfig, in set_config() 587 src_addr_width = sconfig->src_addr_width; in set_config() 588 dst_addr_width = sconfig->dst_addr_width; in set_config() 589 src_maxburst = sconfig->src_maxburst; in set_config() 590 dst_maxburst = sconfig->dst_maxburst; in set_config() 689 struct dma_slave_config *sconfig = &vchan->cfg; in sun6i_dma_prep_slave_sg() local 700 ret = set_config(sdev, sconfig, dir, &lli_cfg); in sun6i_dma_prep_slave_sg() 720 v_lli->dst = sconfig->dst_addr; in sun6i_dma_prep_slave_sg() 728 &sconfig->dst_addr, &sg_dma_address(sg), in sun6i_dma_prep_slave_sg() 732 v_lli->src = sconfig in sun6i_dma_prep_slave_sg() 578 set_config(struct sun6i_dma_dev *sdev, struct dma_slave_config *sconfig, enum dma_transfer_direction direction, u32 *p_cfg) set_config() argument 771 struct dma_slave_config *sconfig = &vchan->cfg; sun6i_dma_prep_dma_cyclic() local [all...] |
H A D | tegra210-adma.c | 138 struct dma_slave_config sconfig; member 212 struct dma_slave_config *sconfig) in tegra_adma_slave_config() 216 memcpy(&tdc->sconfig, sconfig, sizeof(*sconfig)); in tegra_adma_slave_config() 572 burst_size = tdc->sconfig.dst_maxburst; in tegra_adma_set_xfer_params() 582 burst_size = tdc->sconfig.src_maxburst; in tegra_adma_set_xfer_params() 211 tegra_adma_slave_config(struct dma_chan *dc, struct dma_slave_config *sconfig) tegra_adma_slave_config() argument
|
/kernel/linux/linux-6.6/drivers/dma/ |
H A D | sun4i-dma.c | 397 static int sanitize_config(struct dma_slave_config *sconfig, in sanitize_config() argument 402 if ((sconfig->dst_addr_width == DMA_SLAVE_BUSWIDTH_UNDEFINED) || in sanitize_config() 403 !sconfig->dst_maxburst) in sanitize_config() 406 if (sconfig->src_addr_width == DMA_SLAVE_BUSWIDTH_UNDEFINED) in sanitize_config() 407 sconfig->src_addr_width = sconfig->dst_addr_width; in sanitize_config() 409 if (!sconfig->src_maxburst) in sanitize_config() 410 sconfig->src_maxburst = sconfig->dst_maxburst; in sanitize_config() 415 if ((sconfig in sanitize_config() 443 generate_ndma_promise(struct dma_chan *chan, dma_addr_t src, dma_addr_t dest, size_t len, struct dma_slave_config *sconfig, enum dma_transfer_direction direction) generate_ndma_promise() argument 510 generate_ddma_promise(struct dma_chan *chan, dma_addr_t src, dma_addr_t dest, size_t len, struct dma_slave_config *sconfig) generate_ddma_promise() argument 626 struct dma_slave_config *sconfig = &vchan->cfg; sun4i_dma_prep_dma_memcpy() local 677 struct dma_slave_config *sconfig = &vchan->cfg; sun4i_dma_prep_dma_cyclic() local 797 struct dma_slave_config *sconfig = &vchan->cfg; sun4i_dma_prep_slave_sg() local [all...] |
H A D | uniphier-xdmac.c | 91 struct dma_slave_config sconfig; member 151 buswidth = xc->sconfig.src_addr_width; in uniphier_xdmac_chan_start() 160 buswidth = xc->sconfig.dst_addr_width; in uniphier_xdmac_chan_start() 336 buswidth = xc->sconfig.src_addr_width; in uniphier_xdmac_prep_slave_sg() 337 maxburst = xc->sconfig.src_maxburst; in uniphier_xdmac_prep_slave_sg() 339 buswidth = xc->sconfig.dst_addr_width; in uniphier_xdmac_prep_slave_sg() 340 maxburst = xc->sconfig.dst_maxburst; in uniphier_xdmac_prep_slave_sg() 357 ? xc->sconfig.src_addr : sg_dma_address(sg); in uniphier_xdmac_prep_slave_sg() 359 ? xc->sconfig.dst_addr : sg_dma_address(sg); in uniphier_xdmac_prep_slave_sg() 400 memcpy(&xc->sconfig, confi in uniphier_xdmac_slave_config() [all...] |
H A D | at_hdmac.c | 296 * Fix sconfig's burst size according to at_hdmac. We need to convert them as: 310 * Fix sconfig's bus width according to at_hdmac. 1246 struct dma_slave_config *sconfig = &atchan->dma_sconfig; in atc_prep_slave_sg() local 1272 ctrla = FIELD_PREP(ATC_SCSIZE, sconfig->src_maxburst) | in atc_prep_slave_sg() 1273 FIELD_PREP(ATC_DCSIZE, sconfig->dst_maxburst); in atc_prep_slave_sg() 1278 reg_width = convert_buswidth(sconfig->dst_addr_width); in atc_prep_slave_sg() 1286 reg = sconfig->dst_addr; in atc_prep_slave_sg() 1326 reg_width = convert_buswidth(sconfig->src_addr_width); in atc_prep_slave_sg() 1335 reg = sconfig->src_addr; in atc_prep_slave_sg() 1423 struct dma_slave_config *sconfig in atc_dma_cyclic_fill_desc() local 1489 struct dma_slave_config *sconfig = &atchan->dma_sconfig; atc_prep_dma_cyclic() local 1549 atc_config(struct dma_chan *chan, struct dma_slave_config *sconfig) atc_config() argument [all...] |
H A D | owl-dma.c | 385 struct dma_slave_config *sconfig, in owl_dma_cfg_lli() 409 if (sconfig->dst_addr_width == DMA_SLAVE_BUSWIDTH_1_BYTE) in owl_dma_cfg_lli() 422 if (sconfig->src_addr_width == DMA_SLAVE_BUSWIDTH_1_BYTE) in owl_dma_cfg_lli() 924 struct dma_slave_config *sconfig = &vchan->cfg; in owl_dma_prep_slave_sg() local 956 dst = sconfig->dst_addr; in owl_dma_prep_slave_sg() 958 src = sconfig->src_addr; in owl_dma_prep_slave_sg() 962 ret = owl_dma_cfg_lli(vchan, lli, src, dst, len, dir, sconfig, in owl_dma_prep_slave_sg() 989 struct dma_slave_config *sconfig = &vchan->cfg; in owl_prep_dma_cyclic() local 1012 dst = sconfig->dst_addr; in owl_prep_dma_cyclic() 1014 src = sconfig in owl_prep_dma_cyclic() 381 owl_dma_cfg_lli(struct owl_dma_vchan *vchan, struct owl_dma_lli *lli, dma_addr_t src, dma_addr_t dst, u32 len, enum dma_transfer_direction dir, struct dma_slave_config *sconfig, bool is_cyclic) owl_dma_cfg_lli() argument [all...] |
H A D | sun6i-dma.c | 586 struct dma_slave_config *sconfig, in set_config() 594 src_addr_width = sconfig->src_addr_width; in set_config() 595 dst_addr_width = sconfig->dst_addr_width; in set_config() 596 src_maxburst = sconfig->src_maxburst; in set_config() 597 dst_maxburst = sconfig->dst_maxburst; in set_config() 707 struct dma_slave_config *sconfig = &vchan->cfg; in sun6i_dma_prep_slave_sg() local 718 ret = set_config(sdev, sconfig, dir, &lli_cfg); in sun6i_dma_prep_slave_sg() 739 sconfig->dst_addr); in sun6i_dma_prep_slave_sg() 747 &sconfig->dst_addr, &sg_dma_address(sg), in sun6i_dma_prep_slave_sg() 752 sconfig in sun6i_dma_prep_slave_sg() 585 set_config(struct sun6i_dma_dev *sdev, struct dma_slave_config *sconfig, enum dma_transfer_direction direction, u32 *p_cfg) set_config() argument 793 struct dma_slave_config *sconfig = &vchan->cfg; sun6i_dma_prep_dma_cyclic() local [all...] |
H A D | at_xdmac.c | 232 struct dma_slave_config sconfig; member 684 csize = ffs(atchan->sconfig.src_maxburst) - 1; in at_xdmac_compute_chan_conf() 690 dwidth = ffs(atchan->sconfig.src_addr_width) - 1; in at_xdmac_compute_chan_conf() 709 csize = ffs(atchan->sconfig.dst_maxburst) - 1; in at_xdmac_compute_chan_conf() 715 dwidth = ffs(atchan->sconfig.dst_addr_width) - 1; in at_xdmac_compute_chan_conf() 733 static int at_xdmac_check_slave_config(struct dma_slave_config *sconfig) in at_xdmac_check_slave_config() argument 735 if ((sconfig->src_maxburst > AT_XDMAC_MAX_CSIZE) in at_xdmac_check_slave_config() 736 || (sconfig->dst_maxburst > AT_XDMAC_MAX_CSIZE)) in at_xdmac_check_slave_config() 739 if ((sconfig->src_addr_width > AT_XDMAC_MAX_DWIDTH) in at_xdmac_check_slave_config() 740 || (sconfig in at_xdmac_check_slave_config() 746 at_xdmac_set_slave_config(struct dma_chan *chan, struct dma_slave_config *sconfig) at_xdmac_set_slave_config() argument [all...] |
H A D | tegra210-adma.c | 136 struct dma_slave_config sconfig; member 210 struct dma_slave_config *sconfig) in tegra_adma_slave_config() 214 memcpy(&tdc->sconfig, sconfig, sizeof(*sconfig)); in tegra_adma_slave_config() 570 burst_size = tdc->sconfig.dst_maxburst; in tegra_adma_set_xfer_params() 581 burst_size = tdc->sconfig.src_maxburst; in tegra_adma_set_xfer_params() 209 tegra_adma_slave_config(struct dma_chan *dc, struct dma_slave_config *sconfig) tegra_adma_slave_config() argument
|
/kernel/linux/linux-6.6/sound/soc/codecs/ |
H A D | cs42l43-sdw.c | 26 struct sdw_stream_config sconfig = {0}; in cs42l43_sdw_add_peripheral() local 33 snd_sdw_params_to_config(substream, params, &sconfig, &pconfig); in cs42l43_sdw_add_peripheral() 40 ret = sdw_stream_add_slave(sdw, &sconfig, &pconfig, 1, sdw_stream); in cs42l43_sdw_add_peripheral()
|
H A D | cs35l56.c | 663 struct sdw_stream_config sconfig; in cs35l56_sdw_dai_hw_params() local 675 memset(&sconfig, 0, sizeof(sconfig)); in cs35l56_sdw_dai_hw_params() 678 sconfig.frame_rate = params_rate(params); in cs35l56_sdw_dai_hw_params() 679 sconfig.bps = snd_pcm_format_width(params_format(params)); in cs35l56_sdw_dai_hw_params() 682 sconfig.direction = SDW_DATA_DIR_RX; in cs35l56_sdw_dai_hw_params() 686 sconfig.direction = SDW_DATA_DIR_TX; in cs35l56_sdw_dai_hw_params() 692 sconfig.ch_count = params_channels(params); in cs35l56_sdw_dai_hw_params() 693 pconfig.ch_mask = GENMASK(sconfig.ch_count - 1, 0); in cs35l56_sdw_dai_hw_params() 695 sconfig in cs35l56_sdw_dai_hw_params() [all...] |
/kernel/linux/linux-5.10/drivers/dma/dw/ |
H A D | idma32.c | 75 struct dma_slave_config *sconfig = &dwc->dma_sconfig; in idma32_prepare_ctllo() local 76 u8 smsize = (dwc->direction == DMA_DEV_TO_MEM) ? sconfig->src_maxburst : 0; in idma32_prepare_ctllo() 77 u8 dmsize = (dwc->direction == DMA_MEM_TO_DEV) ? sconfig->dst_maxburst : 0; in idma32_prepare_ctllo()
|
H A D | dw.c | 69 struct dma_slave_config *sconfig = &dwc->dma_sconfig; in dw_dma_prepare_ctllo() local 70 u8 smsize = (dwc->direction == DMA_DEV_TO_MEM) ? sconfig->src_maxburst : 0; in dw_dma_prepare_ctllo() 71 u8 dmsize = (dwc->direction == DMA_MEM_TO_DEV) ? sconfig->dst_maxburst : 0; in dw_dma_prepare_ctllo()
|
H A D | core.c | 623 struct dma_slave_config *sconfig = &dwc->dma_sconfig; in dwc_prep_slave_sg() local 648 reg_width = __ffs(sconfig->dst_addr_width); in dwc_prep_slave_sg() 649 reg = sconfig->dst_addr; in dwc_prep_slave_sg() 655 ctllo |= sconfig->device_fc ? DWC_CTLL_FC(DW_DMA_FC_P_M2P) : in dwc_prep_slave_sg() 698 reg_width = __ffs(sconfig->src_addr_width); in dwc_prep_slave_sg() 699 reg = sconfig->src_addr; in dwc_prep_slave_sg() 705 ctllo |= sconfig->device_fc ? DWC_CTLL_FC(DW_DMA_FC_P_P2M) : in dwc_prep_slave_sg() 786 static int dwc_config(struct dma_chan *chan, struct dma_slave_config *sconfig) in dwc_config() argument 791 memcpy(&dwc->dma_sconfig, sconfig, sizeof(*sconfig)); in dwc_config() [all...] |
/kernel/linux/linux-6.6/drivers/dma/dw/ |
H A D | dw.c | 69 struct dma_slave_config *sconfig = &dwc->dma_sconfig; in dw_dma_prepare_ctllo() local 70 u8 smsize = (dwc->direction == DMA_DEV_TO_MEM) ? sconfig->src_maxburst : 0; in dw_dma_prepare_ctllo() 71 u8 dmsize = (dwc->direction == DMA_MEM_TO_DEV) ? sconfig->dst_maxburst : 0; in dw_dma_prepare_ctllo()
|
H A D | core.c | 620 struct dma_slave_config *sconfig = &dwc->dma_sconfig; in dwc_prep_slave_sg() local 645 reg_width = __ffs(sconfig->dst_addr_width); in dwc_prep_slave_sg() 646 reg = sconfig->dst_addr; in dwc_prep_slave_sg() 652 ctllo |= sconfig->device_fc ? DWC_CTLL_FC(DW_DMA_FC_P_M2P) : in dwc_prep_slave_sg() 695 reg_width = __ffs(sconfig->src_addr_width); in dwc_prep_slave_sg() 696 reg = sconfig->src_addr; in dwc_prep_slave_sg() 702 ctllo |= sconfig->device_fc ? DWC_CTLL_FC(DW_DMA_FC_P_P2M) : in dwc_prep_slave_sg() 783 static int dwc_config(struct dma_chan *chan, struct dma_slave_config *sconfig) in dwc_config() argument 788 memcpy(&dwc->dma_sconfig, sconfig, sizeof(*sconfig)); in dwc_config() [all...] |
H A D | idma32.c | 204 struct dma_slave_config *sconfig = &dwc->dma_sconfig; in idma32_prepare_ctllo() local 205 u8 smsize = (dwc->direction == DMA_DEV_TO_MEM) ? sconfig->src_maxburst : 0; in idma32_prepare_ctllo() 206 u8 dmsize = (dwc->direction == DMA_MEM_TO_DEV) ? sconfig->dst_maxburst : 0; in idma32_prepare_ctllo()
|
/kernel/linux/linux-6.6/drivers/soundwire/ |
H A D | intel_ace2x.c | 249 struct sdw_stream_config sconfig; in intel_hw_params() local 287 sconfig.direction = dir; in intel_hw_params() 288 sconfig.ch_count = ch; in intel_hw_params() 289 sconfig.frame_rate = params_rate(params); in intel_hw_params() 290 sconfig.type = dai_runtime->stream_type; in intel_hw_params() 292 sconfig.bps = snd_pcm_format_width(params_format(params)); in intel_hw_params() 304 ret = sdw_stream_add_master(&cdns->bus, &sconfig, in intel_hw_params()
|
H A D | intel.c | 679 struct sdw_stream_config sconfig; in intel_hw_params() local 718 sconfig.direction = dir; in intel_hw_params() 719 sconfig.ch_count = ch; in intel_hw_params() 720 sconfig.frame_rate = params_rate(params); in intel_hw_params() 721 sconfig.type = dai_runtime->stream_type; in intel_hw_params() 723 sconfig.bps = snd_pcm_format_width(params_format(params)); in intel_hw_params() 735 ret = sdw_stream_add_master(&cdns->bus, &sconfig, in intel_hw_params()
|
/kernel/linux/linux-5.10/drivers/soundwire/ |
H A D | qcom.c | 534 struct sdw_stream_config sconfig; in qcom_swrm_stream_alloc_ports() local 569 sconfig.direction = SDW_DATA_DIR_TX; in qcom_swrm_stream_alloc_ports() 571 sconfig.direction = SDW_DATA_DIR_RX; in qcom_swrm_stream_alloc_ports() 574 sconfig.ch_count = 1; in qcom_swrm_stream_alloc_ports() 575 sconfig.frame_rate = params_rate(params); in qcom_swrm_stream_alloc_ports() 576 sconfig.type = stream->type; in qcom_swrm_stream_alloc_ports() 577 sconfig.bps = 1; in qcom_swrm_stream_alloc_ports() 578 sdw_stream_add_master(&ctrl->bus, &sconfig, pconfig, in qcom_swrm_stream_alloc_ports()
|