Lines Matching defs:sdev
30 int acp_dsp_block_read(struct snd_sof_dev *sdev, enum snd_sof_fw_blk_type blk_type,
33 const struct sof_amd_acp_desc *desc = get_chip_info(sdev->pdata);
37 memcpy_from_scratch(sdev, offset, dest, size);
40 dev_err(sdev->dev, "bad blk type 0x%x\n", blk_type);
48 int acp_dsp_block_write(struct snd_sof_dev *sdev, enum snd_sof_fw_blk_type blk_type,
51 struct pci_dev *pci = to_pci_dev(sdev->dev);
52 const struct sof_amd_acp_desc *desc = get_chip_info(sdev->pdata);
58 adata = sdev->pdata->hw_pdata;
63 size_fw = sdev->basefw.fw->size;
89 memcpy_to_scratch(sdev, offset, src, size);
92 dev_err(sdev->dev, "bad blk type 0x%x\n", blk_type);
101 int acp_get_bar_index(struct snd_sof_dev *sdev, u32 type)
109 struct snd_sof_dev *sdev = adata->dev;
110 const struct sof_amd_acp_desc *desc = get_chip_info(sdev->pdata);
126 dev_err(sdev->dev, "Invalid data type %x\n", type);
131 snd_sof_dsp_write(sdev, ACP_DSP_BAR, ACPAXI2AXI_ATU_BASE_ADDR_GRP_1,
133 snd_sof_dsp_write(sdev, ACP_DSP_BAR, ACPAXI2AXI_ATU_PAGE_SIZE_GRP_1,
139 snd_sof_dsp_write(sdev, ACP_DSP_BAR, ACP_SCRATCH_REG_0 + offset, low);
141 snd_sof_dsp_write(sdev, ACP_DSP_BAR, ACP_SCRATCH_REG_0 + offset + 4, high);
147 snd_sof_dsp_write(sdev, ACP_DSP_BAR, ACPAXI2AXI_ATU_CTRL, ACP_ATU_CACHE_INVALID);
151 int acp_dsp_pre_fw_run(struct snd_sof_dev *sdev)
153 struct pci_dev *pci = to_pci_dev(sdev->dev);
154 const struct sof_amd_acp_desc *desc = get_chip_info(sdev->pdata);
160 adata = sdev->pdata->hw_pdata;
174 dev_err(sdev->dev, "SHA DMA transfer failed status: %d\n", ret);
183 dev_err(sdev->dev, "acp dma configuration failed: %d\n", ret);
189 dev_err(sdev->dev, "acp dma transfer status: %d\n", ret);
193 snd_sof_dsp_write(sdev, ACP_DSP_BAR, ACP_DSP0_CACHE_OFFSET0, desc->sram_pte_offset);
194 snd_sof_dsp_write(sdev, ACP_DSP_BAR, ACP_DSP0_CACHE_SIZE0, SRAM1_SIZE | BIT(31));
198 dma_size = (PAGE_ALIGN(sdev->basefw.fw->size) >> PAGE_SHIFT) * ACP_PAGE_SIZE;
208 int acp_sof_dsp_run(struct snd_sof_dev *sdev)
210 struct acp_dev_data *adata = sdev->pdata->hw_pdata;
211 const struct sof_amd_acp_desc *desc = get_chip_info(sdev->pdata);
214 snd_sof_dsp_write(sdev, ACP_DSP_BAR, ACP_DSP0_RUNSTALL, ACP_DSP_RUN);
215 val = snd_sof_dsp_read(sdev, ACP_DSP_BAR, ACP_DSP0_RUNSTALL);
216 dev_dbg(sdev->dev, "ACP_DSP0_RUNSTALL : 0x%0x\n", val);
220 snd_sof_dsp_write(sdev, ACP_DSP_BAR, desc->fusion_dsp_offset, ACP_DSP_RUN);
221 val = snd_sof_dsp_read(sdev, ACP_DSP_BAR, desc->fusion_dsp_offset);
222 dev_dbg(sdev->dev, "ACP_DSP0_FUSION_RUNSTALL : 0x%0x\n", val);
228 int acp_sof_load_signed_firmware(struct snd_sof_dev *sdev)
230 struct snd_sof_pdata *plat_data = sdev->pdata;
234 ret = request_firmware(&sdev->basefw.fw, adata->fw_code_bin, sdev->dev);
236 dev_err(sdev->dev, "sof signed firmware code bin is missing\n");
239 dev_dbg(sdev->dev, "request_firmware %s successful\n", adata->fw_code_bin);
241 ret = snd_sof_dsp_block_write(sdev, SOF_FW_BLK_TYPE_IRAM, 0,
242 (void *)sdev->basefw.fw->data, sdev->basefw.fw->size);
244 ret = request_firmware(&adata->fw_dbin, adata->fw_data_bin, sdev->dev);
246 dev_err(sdev->dev, "sof signed firmware data bin is missing\n");
250 dev_dbg(sdev->dev, "request_firmware %s successful\n", adata->fw_data_bin);
253 ret = snd_sof_dsp_block_write(sdev, SOF_FW_BLK_TYPE_DRAM, 0,