Lines Matching defs:adsp

27 #include "../mtk-adsp-common.h"
96 struct mtk_adsp_chip_info *adsp = data;
118 adsp->pa_dram = (phys_addr_t)res.start;
119 if (adsp->pa_dram & DRAM_REMAP_MASK) {
120 dev_err(dev, "adsp memory(%#x) is not 4K-aligned\n",
121 (u32)adsp->pa_dram);
125 adsp->dramsize = resource_size(&res);
126 if (adsp->dramsize < TOTAL_SIZE_SHARED_DRAM_FROM_TAIL) {
127 dev_err(dev, "adsp memory(%#x) is not enough for share\n",
128 adsp->dramsize);
132 dev_dbg(dev, "dram pbase=%pa size=%#x\n", &adsp->pa_dram, adsp->dramsize);
140 adsp->va_cfgreg = devm_ioremap_resource(dev, mmio);
141 if (IS_ERR(adsp->va_cfgreg))
142 return PTR_ERR(adsp->va_cfgreg);
144 adsp->pa_cfgreg = (phys_addr_t)mmio->start;
145 adsp->cfgregsize = resource_size(mmio);
147 dev_dbg(dev, "cfgreg pbase=%pa size=%#x\n", &adsp->pa_cfgreg, adsp->cfgregsize);
155 adsp->pa_sram = (phys_addr_t)mmio->start;
156 adsp->sramsize = resource_size(mmio);
158 dev_dbg(dev, "sram pbase=%pa size=%#x\n", &adsp->pa_sram, adsp->sramsize);
166 adsp->va_secreg = devm_ioremap_resource(dev, mmio);
167 if (IS_ERR(adsp->va_secreg))
168 return PTR_ERR(adsp->va_secreg);
170 adsp->pa_secreg = (phys_addr_t)mmio->start;
171 adsp->secregsize = resource_size(mmio);
173 dev_dbg(dev, "secreg pbase=%pa size=%#x\n", &adsp->pa_secreg, adsp->secregsize);
181 adsp->va_busreg = devm_ioremap_resource(dev, mmio);
182 if (IS_ERR(adsp->va_busreg))
183 return PTR_ERR(adsp->va_busreg);
185 adsp->pa_busreg = (phys_addr_t)mmio->start;
186 adsp->busregsize = resource_size(mmio);
188 dev_dbg(dev, "busreg pbase=%pa size=%#x\n", &adsp->pa_busreg, adsp->busregsize);
206 static int adsp_memory_remap_init(struct snd_sof_dev *sdev, struct mtk_adsp_chip_info *adsp)
210 offset = adsp->pa_dram - DRAM_PHYS_BASE_FROM_DSP_VIEW;
211 adsp->dram_offset = offset;
214 dev_dbg(sdev->dev, "adsp->pa_dram %pa, offset %#x\n", &adsp->pa_dram, offset);
253 priv->adsp = devm_kzalloc(&pdev->dev, sizeof(struct mtk_adsp_chip_info), GFP_KERNEL);
254 if (!priv->adsp)
257 ret = platform_parse_resource(pdev, priv->adsp);
262 priv->adsp->pa_sram,
263 priv->adsp->sramsize);
266 &priv->adsp->pa_sram, priv->adsp->sramsize);
270 priv->adsp->va_sram = sdev->bar[SOF_FW_BLK_TYPE_IRAM];
273 priv->adsp->pa_dram,
274 priv->adsp->dramsize);
278 &priv->adsp->pa_dram, priv->adsp->dramsize);
282 priv->adsp->va_dram = sdev->bar[SOF_FW_BLK_TYPE_SRAM];
284 sdev->bar[DSP_REG_BAR] = priv->adsp->va_cfgreg;
285 sdev->bar[DSP_SECREG_BAR] = priv->adsp->va_secreg;
286 sdev->bar[DSP_BUSREG_BAR] = priv->adsp->va_busreg;
294 ret = adsp_memory_remap_init(sdev, priv->adsp);
300 /* enable adsp clock before touching registers */
315 priv->ipc_dev = platform_device_register_data(&pdev->dev, "mtk-adsp-ipc",
320 dev_err(sdev->dev, "failed to create mtk-adsp-ipc device\n");
444 dev_info(sdev->dev, "adsp dump : pc %#x, data %#x, dbg_inst %#x,",