|
@@ -765,38 +765,41 @@ static unsigned int wm_adsp_region_to_reg(struct wm_adsp_region const *mem,
|
|
|
|
|
|
static void wm_adsp2_show_fw_status(struct wm_adsp *dsp)
|
|
|
{
|
|
|
- u16 scratch[4];
|
|
|
+ unsigned int scratch[4];
|
|
|
+ unsigned int addr = dsp->base + ADSP2_SCRATCH0;
|
|
|
+ unsigned int i;
|
|
|
int ret;
|
|
|
|
|
|
- ret = regmap_raw_read(dsp->regmap, dsp->base + ADSP2_SCRATCH0,
|
|
|
- scratch, sizeof(scratch));
|
|
|
- if (ret) {
|
|
|
- adsp_err(dsp, "Failed to read SCRATCH regs: %d\n", ret);
|
|
|
- return;
|
|
|
+ for (i = 0; i < ARRAY_SIZE(scratch); ++i) {
|
|
|
+ ret = regmap_read(dsp->regmap, addr + i, &scratch[i]);
|
|
|
+ if (ret) {
|
|
|
+ adsp_err(dsp, "Failed to read SCRATCH%u: %d\n", i, ret);
|
|
|
+ return;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
adsp_dbg(dsp, "FW SCRATCH 0:0x%x 1:0x%x 2:0x%x 3:0x%x\n",
|
|
|
- be16_to_cpu(scratch[0]),
|
|
|
- be16_to_cpu(scratch[1]),
|
|
|
- be16_to_cpu(scratch[2]),
|
|
|
- be16_to_cpu(scratch[3]));
|
|
|
+ scratch[0], scratch[1], scratch[2], scratch[3]);
|
|
|
}
|
|
|
|
|
|
static void wm_adsp2v2_show_fw_status(struct wm_adsp *dsp)
|
|
|
{
|
|
|
- u32 scratch[2];
|
|
|
+ unsigned int scratch[2];
|
|
|
int ret;
|
|
|
|
|
|
- ret = regmap_raw_read(dsp->regmap, dsp->base + ADSP2V2_SCRATCH0_1,
|
|
|
- scratch, sizeof(scratch));
|
|
|
-
|
|
|
+ ret = regmap_read(dsp->regmap, dsp->base + ADSP2V2_SCRATCH0_1,
|
|
|
+ &scratch[0]);
|
|
|
if (ret) {
|
|
|
- adsp_err(dsp, "Failed to read SCRATCH regs: %d\n", ret);
|
|
|
+ adsp_err(dsp, "Failed to read SCRATCH0_1: %d\n", ret);
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- scratch[0] = be32_to_cpu(scratch[0]);
|
|
|
- scratch[1] = be32_to_cpu(scratch[1]);
|
|
|
+ ret = regmap_read(dsp->regmap, dsp->base + ADSP2V2_SCRATCH2_3,
|
|
|
+ &scratch[1]);
|
|
|
+ if (ret) {
|
|
|
+ adsp_err(dsp, "Failed to read SCRATCH2_3: %d\n", ret);
|
|
|
+ return;
|
|
|
+ }
|
|
|
|
|
|
adsp_dbg(dsp, "FW SCRATCH 0:0x%x 1:0x%x 2:0x%x 3:0x%x\n",
|
|
|
scratch[0] & 0xFFFF,
|