Lines Matching refs:dsp

149 	struct cs_dsp *dsp = priv->dsp;
166 regmap_raw_write(dsp->regmap, reg, reg_vals, alg_size_bytes);
185 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
187 KUNIT_EXPECT_EQ(test, list_count_nodes(&dsp->ctl_list), num_ctls);
190 list_for_each_entry(ctl, &dsp->ctl_list, list)
203 struct cs_dsp *dsp = priv->dsp;
223 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes);
238 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
240 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
262 struct cs_dsp *dsp = priv->dsp;
288 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
290 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
314 struct cs_dsp *dsp = priv->dsp;
358 regmap_raw_write(dsp->regmap, reg, reg_vals[i], def.length_bytes);
361 cs_dsp_power_up(dsp, wmfw,
366 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
367 cs_dsp_stop(dsp);
368 cs_dsp_power_down(dsp);
372 KUNIT_ASSERT_EQ(test, list_count_nodes(&dsp->ctl_list), 3);
381 list_for_each_entry(walkctl, &dsp->ctl_list, list) {
423 struct cs_dsp *dsp = priv->dsp;
467 regmap_raw_write(dsp->regmap, reg, reg_vals[i], def.length_bytes);
470 cs_dsp_power_up(dsp, wmfw,
475 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
476 cs_dsp_stop(dsp);
477 cs_dsp_power_down(dsp);
481 KUNIT_ASSERT_EQ(test, list_count_nodes(&dsp->ctl_list), 3);
490 list_for_each_entry(walkctl, &dsp->ctl_list, list) {
531 struct cs_dsp *dsp = priv->dsp;
574 regmap_raw_write(dsp->regmap, reg, reg_vals[0], def.length_bytes);
580 regmap_raw_write(dsp->regmap, reg, reg_vals[1], def.length_bytes);
587 regmap_raw_write(dsp->regmap, reg, reg_vals[2], def.length_bytes);
592 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
593 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
594 cs_dsp_stop(dsp);
595 cs_dsp_power_down(dsp);
598 KUNIT_ASSERT_EQ(test, list_count_nodes(&dsp->ctl_list),
608 list_for_each_entry(walkctl, &dsp->ctl_list, list) {
652 struct cs_dsp *dsp = priv->dsp;
688 regmap_raw_write(dsp->regmap, reg, reg_vals[i], def.length_bytes);
693 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
694 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
695 cs_dsp_stop(dsp);
696 cs_dsp_power_down(dsp);
699 KUNIT_ASSERT_EQ(test, list_count_nodes(&dsp->ctl_list), 3);
708 list_for_each_entry(walkctl, &dsp->ctl_list, list) {
753 struct cs_dsp *dsp = priv->dsp;
799 regmap_raw_write(dsp->regmap, reg, reg_vals[0], def.length_bytes);
801 regmap_raw_write(dsp->regmap, reg, reg_vals[1], def.length_bytes);
803 regmap_raw_write(dsp->regmap, reg, reg_vals[2], def.length_bytes);
807 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
808 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
809 cs_dsp_stop(dsp);
810 cs_dsp_power_down(dsp);
813 KUNIT_ASSERT_EQ(test, list_count_nodes(&dsp->ctl_list), 3);
822 list_for_each_entry(walkctl, &dsp->ctl_list, list) {
865 struct cs_dsp *dsp = priv->dsp;
885 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes);
901 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
909 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
926 struct cs_dsp *dsp = priv->dsp;
946 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes);
962 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
965 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
966 cs_dsp_stop(dsp);
974 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
992 struct cs_dsp *dsp = priv->dsp;
1012 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes);
1028 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
1029 cs_dsp_power_down(dsp);
1037 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
1055 struct cs_dsp *dsp = priv->dsp;
1075 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes);
1091 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
1094 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
1095 cs_dsp_stop(dsp);
1096 cs_dsp_power_down(dsp);
1104 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
1122 struct cs_dsp *dsp = priv->dsp;
1143 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes);
1159 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
1162 cs_dsp_power_down(dsp);
1164 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw2", NULL, NULL, "mbc.vss"), 0);
1172 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
1190 struct cs_dsp *dsp = priv->dsp;
1211 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes);
1227 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
1228 cs_dsp_power_down(dsp);
1232 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw2", NULL, NULL, "mbc.vss"), 0);
1233 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
1234 KUNIT_ASSERT_EQ(test, kunit_add_action_or_reset(test, _cs_dsp_stop_wrapper, dsp), 0);
1242 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
1260 struct cs_dsp *dsp = priv->dsp;
1283 regmap_raw_write(dsp->regmap, reg, init_reg_vals, param->len_bytes);
1299 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
1302 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
1303 KUNIT_ASSERT_EQ(test, kunit_add_action_or_reset(test, _cs_dsp_stop_wrapper, dsp), 0);
1312 regmap_raw_write(dsp->regmap, reg, new_reg_vals, param->len_bytes),
1317 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
1325 kunit_release_action(test, _cs_dsp_stop_wrapper, dsp);
1326 cs_dsp_power_down(dsp);
1346 struct cs_dsp *dsp = priv->dsp;
1368 regmap_raw_write(dsp->regmap, reg, init_reg_vals, param->len_bytes);
1384 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
1387 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
1388 KUNIT_ASSERT_EQ(test, kunit_add_action_or_reset(test, _cs_dsp_stop_wrapper, dsp), 0);
1392 regmap_raw_write(dsp->regmap, reg, new_reg_vals, param->len_bytes);
1395 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
1403 kunit_release_action(test, _cs_dsp_stop_wrapper, dsp);
1404 cs_dsp_power_down(dsp);
1407 regmap_raw_write(dsp->regmap, reg, init_reg_vals, param->len_bytes);
1426 struct cs_dsp *dsp = priv->dsp;
1446 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes);
1461 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
1463 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
1467 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
1468 KUNIT_ASSERT_EQ(test, kunit_add_action_or_reset(test, _cs_dsp_stop_wrapper, dsp), 0);
1475 KUNIT_ASSERT_EQ(test, regmap_raw_read(dsp->regmap, reg, readback, param->len_bytes), 0);
1489 struct cs_dsp *dsp = priv->dsp;
1509 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes);
1524 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
1526 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
1530 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
1531 KUNIT_ASSERT_EQ(test, kunit_add_action_or_reset(test, _cs_dsp_stop_wrapper, dsp), 0);
1551 KUNIT_ASSERT_EQ(test, regmap_raw_read(dsp->regmap, reg, readback, param->len_bytes), 0);
1565 struct cs_dsp *dsp = priv->dsp;
1585 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes);
1600 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
1602 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
1623 KUNIT_ASSERT_EQ(test, regmap_raw_read(dsp->regmap, reg, readback, param->len_bytes), 0);
1637 struct cs_dsp *dsp = priv->dsp;
1656 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes);
1672 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
1680 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
1708 struct cs_dsp *dsp = priv->dsp;
1727 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes);
1743 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
1746 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
1747 cs_dsp_stop(dsp);
1755 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
1783 struct cs_dsp *dsp = priv->dsp;
1802 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes);
1818 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
1819 cs_dsp_power_down(dsp);
1827 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
1855 struct cs_dsp *dsp = priv->dsp;
1874 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes);
1890 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
1893 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
1894 cs_dsp_stop(dsp);
1895 cs_dsp_power_down(dsp);
1903 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
1930 struct cs_dsp *dsp = priv->dsp;
1950 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes);
1966 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
1969 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
1973 cs_dsp_power_down(dsp);
1975 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw2", NULL, NULL, "mbc.vss"), 0);
2014 struct cs_dsp *dsp = priv->dsp;
2034 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes);
2050 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
2051 cs_dsp_power_down(dsp);
2054 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
2059 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw2", NULL, NULL, "mbc.vss"), 0);
2060 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
2061 KUNIT_ASSERT_EQ(test, kunit_add_action_or_reset(test, _cs_dsp_stop_wrapper, dsp), 0);
2101 struct cs_dsp *dsp = priv->dsp;
2120 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes);
2136 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
2139 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
2147 KUNIT_EXPECT_EQ(test, regmap_raw_read(dsp->regmap, reg, readback, param->len_bytes), 0);
2151 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
2152 KUNIT_ASSERT_EQ(test, kunit_add_action_or_reset(test, _cs_dsp_stop_wrapper, dsp), 0);
2154 KUNIT_EXPECT_EQ(test, regmap_raw_read(dsp->regmap, reg, readback, param->len_bytes), 0);
2174 struct cs_dsp *dsp = priv->dsp;
2196 regmap_raw_write(dsp->regmap, reg, init_vals, param->len_bytes);
2212 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
2213 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
2214 KUNIT_ASSERT_EQ(test, kunit_add_action_or_reset(test, _cs_dsp_stop_wrapper, dsp), 0);
2217 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
2226 kunit_release_action(test, _cs_dsp_stop_wrapper, dsp);
2227 regmap_raw_write(dsp->regmap, reg, init_vals, param->len_bytes);
2228 KUNIT_ASSERT_EQ(test, regmap_raw_read(dsp->regmap, reg, readback, param->len_bytes), 0);
2232 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
2233 KUNIT_ASSERT_EQ(test, kunit_add_action_or_reset(test, _cs_dsp_stop_wrapper, dsp), 0);
2235 KUNIT_EXPECT_EQ(test, regmap_raw_read(dsp->regmap, reg, readback, param->len_bytes), 0);
2255 struct cs_dsp *dsp = priv->dsp;
2274 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes);
2290 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
2293 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
2294 cs_dsp_stop(dsp);
2297 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
2305 KUNIT_EXPECT_EQ(test, regmap_raw_read(dsp->regmap, reg, readback, param->len_bytes), 0);
2309 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
2310 KUNIT_ASSERT_EQ(test, kunit_add_action_or_reset(test, _cs_dsp_stop_wrapper, dsp), 0);
2312 KUNIT_EXPECT_EQ(test, regmap_raw_read(dsp->regmap, reg, readback, param->len_bytes), 0);
2333 struct cs_dsp *dsp = priv->dsp;
2353 regmap_raw_write(dsp->regmap, reg, reg_vals, param->len_bytes);
2369 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
2372 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
2376 cs_dsp_power_down(dsp);
2378 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw2", NULL, NULL, "mbc.vss"), 0);
2386 KUNIT_EXPECT_EQ(test, regmap_raw_read(dsp->regmap, reg, readback, param->len_bytes), 0);
2390 cs_dsp_power_down(dsp);
2392 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
2395 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
2396 KUNIT_ASSERT_EQ(test, kunit_add_action_or_reset(test, _cs_dsp_stop_wrapper, dsp), 0);
2398 KUNIT_EXPECT_EQ(test, regmap_raw_read(dsp->regmap, reg, readback, param->len_bytes), 0);
2418 struct cs_dsp *dsp = priv->dsp;
2440 regmap_raw_write(dsp->regmap, reg, init_vals, param->len_bytes);
2456 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
2459 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
2468 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
2469 KUNIT_ASSERT_EQ(test, kunit_add_action_or_reset(test, _cs_dsp_stop_wrapper, dsp), 0);
2470 KUNIT_EXPECT_EQ(test, regmap_raw_read(dsp->regmap, reg, readback, param->len_bytes), 0);
2474 kunit_release_action(test, _cs_dsp_stop_wrapper, dsp);
2475 regmap_raw_write(dsp->regmap, reg, init_vals, param->len_bytes);
2478 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
2479 KUNIT_ASSERT_EQ(test, kunit_add_action_or_reset(test, _cs_dsp_stop_wrapper, dsp), 0);
2480 KUNIT_EXPECT_EQ(test, regmap_raw_read(dsp->regmap, reg, readback, param->len_bytes), 0);
2501 struct cs_dsp *dsp = priv->dsp;
2523 regmap_raw_write(dsp->regmap, reg, init_vals, param->len_bytes);
2539 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
2542 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
2551 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
2552 KUNIT_ASSERT_EQ(test, kunit_add_action_or_reset(test, _cs_dsp_stop_wrapper, dsp), 0);
2553 KUNIT_EXPECT_EQ(test, regmap_raw_read(dsp->regmap, reg, readback, param->len_bytes), 0);
2557 kunit_release_action(test, _cs_dsp_stop_wrapper, dsp);
2558 cs_dsp_power_down(dsp);
2561 regmap_raw_write(dsp->regmap, reg, init_vals, param->len_bytes);
2564 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
2567 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
2568 KUNIT_ASSERT_EQ(test, kunit_add_action_or_reset(test, _cs_dsp_stop_wrapper, dsp), 0);
2569 KUNIT_EXPECT_EQ(test, regmap_raw_read(dsp->regmap, reg, readback, param->len_bytes), 0);
2591 struct cs_dsp *dsp = priv->dsp;
2614 regmap_raw_write(dsp->regmap, reg, init_vals, param->len_bytes);
2630 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
2633 ctl = list_first_entry_or_null(&dsp->ctl_list, struct cs_dsp_coeff_ctl, list);
2642 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
2643 KUNIT_ASSERT_EQ(test, kunit_add_action_or_reset(test, _cs_dsp_stop_wrapper, dsp), 0);
2644 KUNIT_EXPECT_EQ(test, regmap_raw_read(dsp->regmap, reg, readback, param->len_bytes), 0);
2648 kunit_release_action(test, _cs_dsp_stop_wrapper, dsp);
2649 cs_dsp_power_down(dsp);
2652 regmap_raw_write(dsp->regmap, reg, init_vals, param->len_bytes);
2656 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw2", NULL, NULL, "mbc.vss"), 0);
2657 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
2658 cs_dsp_power_down(dsp);
2661 regmap_raw_write(dsp->regmap, reg, init_vals, param->len_bytes);
2665 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);
2669 KUNIT_ASSERT_EQ(test, cs_dsp_run(dsp), 0);
2670 KUNIT_ASSERT_EQ(test, kunit_add_action_or_reset(test, _cs_dsp_stop_wrapper, dsp), 0);
2671 KUNIT_EXPECT_EQ(test, regmap_raw_read(dsp->regmap, reg, readback, param->len_bytes), 0);
2681 static int cs_dsp_ctl_cache_test_common_init(struct kunit *test, struct cs_dsp *dsp,
2698 priv->dsp = dsp;
2708 dsp->dev = get_device(test_dev);
2709 if (!dsp->dev)
2712 ret = kunit_add_action_or_reset(test, _put_device_wrapper, dsp->dev);
2716 dev_set_drvdata(dsp->dev, priv);
2736 dsp->client_ops = kunit_kzalloc(test, sizeof(*dsp->client_ops), GFP_KERNEL);
2737 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, dsp->client_ops);
2739 switch (dsp->type) {
2741 ret = cs_dsp_adsp2_init(dsp);
2744 ret = cs_dsp_halo_init(dsp);
2747 KUNIT_FAIL(test, "Untested DSP type %d\n", dsp->type);
2755 return kunit_add_action_or_reset(priv->test, _cs_dsp_remove_wrapper, dsp);
2760 struct cs_dsp *dsp;
2763 dsp = kunit_kzalloc(test, sizeof(*dsp), GFP_KERNEL);
2764 if (!dsp)
2767 dsp->num = 1;
2768 dsp->type = WMFW_HALO;
2769 dsp->mem = cs_dsp_mock_halo_dsp1_regions;
2770 dsp->num_mems = cs_dsp_mock_count_regions(cs_dsp_mock_halo_dsp1_region_sizes);
2771 dsp->base = cs_dsp_mock_halo_core_base;
2772 dsp->base_sysinfo = cs_dsp_mock_halo_sysinfo_base;
2774 return cs_dsp_ctl_cache_test_common_init(test, dsp, 3);
2779 struct cs_dsp *dsp;
2782 dsp = kunit_kzalloc(test, sizeof(*dsp), GFP_KERNEL);
2783 if (!dsp)
2786 dsp->num = 1;
2787 dsp->type = WMFW_ADSP2;
2788 dsp->rev = 1;
2789 dsp->mem = cs_dsp_mock_adsp2_32bit_dsp1_regions;
2790 dsp->num_mems = cs_dsp_mock_count_regions(cs_dsp_mock_adsp2_32bit_dsp1_region_sizes);
2791 dsp->base = cs_dsp_mock_adsp2_32bit_sysbase;
2793 return cs_dsp_ctl_cache_test_common_init(test, dsp, wmfw_ver);
2808 struct cs_dsp *dsp;
2811 dsp = kunit_kzalloc(test, sizeof(*dsp), GFP_KERNEL);
2812 if (!dsp)
2815 dsp->num = 1;
2816 dsp->type = WMFW_ADSP2;
2817 dsp->rev = 0;
2818 dsp->mem = cs_dsp_mock_adsp2_16bit_dsp1_regions;
2819 dsp->num_mems = cs_dsp_mock_count_regions(cs_dsp_mock_adsp2_16bit_dsp1_region_sizes);
2820 dsp->base = cs_dsp_mock_adsp2_16bit_sysbase;
2822 return cs_dsp_ctl_cache_test_common_init(test, dsp, wmfw_ver);