Lines Matching full:dsp

101 	KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0);  in cs_dsp_ctl_parse_no_coeffs()
124 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_parse_v1_name()
126 ctl = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_parse_v1_name()
154 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_parse_empty_v1_name()
156 ctl = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_parse_empty_v1_name()
185 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_parse_max_v1_name()
187 ctl = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_parse_max_v1_name()
211 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_parse_short_name()
213 ctl = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_parse_short_name()
242 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_parse_min_short_name()
244 ctl = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_parse_min_short_name()
274 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_parse_max_short_name()
276 ctl = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_parse_max_short_name()
306 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_parse_with_min_fullname()
308 ctl = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_parse_with_min_fullname()
339 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_parse_with_max_fullname()
341 ctl = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_parse_with_max_fullname()
371 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_parse_with_min_description()
373 ctl = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_parse_with_min_description()
404 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_parse_with_max_description()
406 ctl = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_parse_with_max_description()
438 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_parse_with_max_fullname_and_description()
440 ctl = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_parse_with_max_fullname_and_description()
481 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_shortname_alignment()
484 mutex_lock(&priv->dsp->pwr_lock); in cs_dsp_ctl_shortname_alignment()
485 ctl = cs_dsp_get_ctl(priv->dsp, cs_dsp_ctl_alignment_test_names[i], in cs_dsp_ctl_shortname_alignment()
487 mutex_unlock(&priv->dsp->pwr_lock); in cs_dsp_ctl_shortname_alignment()
534 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_fullname_alignment()
539 mutex_lock(&priv->dsp->pwr_lock); in cs_dsp_ctl_fullname_alignment()
540 ctl = cs_dsp_get_ctl(priv->dsp, ctl_name, def.mem_type, in cs_dsp_ctl_fullname_alignment()
542 mutex_unlock(&priv->dsp->pwr_lock); in cs_dsp_ctl_fullname_alignment()
588 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_description_alignment()
593 mutex_lock(&priv->dsp->pwr_lock); in cs_dsp_ctl_description_alignment()
594 ctl = cs_dsp_get_ctl(priv->dsp, ctl_name, def.mem_type, in cs_dsp_ctl_description_alignment()
596 mutex_unlock(&priv->dsp->pwr_lock); in cs_dsp_ctl_description_alignment()
637 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_get_ctl_test()
640 mutex_lock(&priv->dsp->pwr_lock); in cs_dsp_get_ctl_test()
641 ctl = cs_dsp_get_ctl(priv->dsp, cs_dsp_get_ctl_test_names[i], in cs_dsp_get_ctl_test()
643 mutex_unlock(&priv->dsp->pwr_lock); in cs_dsp_get_ctl_test()
685 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_get_ctl_test_multiple_wmfw()
686 cs_dsp_power_down(priv->dsp); in cs_dsp_get_ctl_test_multiple_wmfw()
697 cs_dsp_power_up(priv->dsp, wmfw, "mock_fw2", NULL, NULL, "mbc/vss"), 0); in cs_dsp_get_ctl_test_multiple_wmfw()
700 mutex_lock(&priv->dsp->pwr_lock); in cs_dsp_get_ctl_test_multiple_wmfw()
701 ctl = cs_dsp_get_ctl(priv->dsp, def.shortname, in cs_dsp_get_ctl_test_multiple_wmfw()
703 mutex_unlock(&priv->dsp->pwr_lock); in cs_dsp_get_ctl_test_multiple_wmfw()
708 cs_dsp_power_down(priv->dsp); in cs_dsp_get_ctl_test_multiple_wmfw()
710 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_get_ctl_test_multiple_wmfw()
712 mutex_lock(&priv->dsp->pwr_lock); in cs_dsp_get_ctl_test_multiple_wmfw()
713 ctl = cs_dsp_get_ctl(priv->dsp, def.shortname, in cs_dsp_get_ctl_test_multiple_wmfw()
715 mutex_unlock(&priv->dsp->pwr_lock); in cs_dsp_get_ctl_test_multiple_wmfw()
743 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_parse_memory_type()
745 ctl = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_parse_memory_type()
773 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_parse_alg_id()
775 ctl = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_parse_alg_id()
811 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_parse_alg_mem()
813 ctl = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_parse_alg_mem()
838 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_parse_offset()
840 ctl = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_parse_offset()
867 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_parse_length()
869 ctl = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_parse_length()
897 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_parse_ctl_type()
899 ctl = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_parse_ctl_type()
922 regmap_raw_write(priv->dsp->regmap, in cs_dsp_ctl_parse_flags()
936 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_parse_flags()
938 ctl = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_parse_flags()
960 regmap_raw_write(priv->dsp->regmap, in cs_dsp_ctl_illegal_type_flags()
975 KUNIT_ASSERT_LT(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_illegal_type_flags()
1005 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_parse_fw_name()
1006 cs_dsp_power_down(priv->dsp); in cs_dsp_ctl_parse_fw_name()
1017 cs_dsp_power_up(priv->dsp, wmfw, "mock_fw2", NULL, NULL, "mbc/vss"), 0); in cs_dsp_ctl_parse_fw_name()
1020 KUNIT_EXPECT_EQ(test, list_count_nodes(&priv->dsp->ctl_list), 2); in cs_dsp_ctl_parse_fw_name()
1023 list_for_each_entry(walkctl, &priv->dsp->ctl_list, list) { in cs_dsp_ctl_parse_fw_name()
1060 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_alg_id_uniqueness()
1061 cs_dsp_power_down(priv->dsp); in cs_dsp_ctl_alg_id_uniqueness()
1064 KUNIT_EXPECT_EQ(test, list_count_nodes(&priv->dsp->ctl_list), 2); in cs_dsp_ctl_alg_id_uniqueness()
1065 ctl1 = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_alg_id_uniqueness()
1104 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_mem_uniqueness()
1105 cs_dsp_power_down(priv->dsp); in cs_dsp_ctl_mem_uniqueness()
1108 KUNIT_EXPECT_EQ(test, list_count_nodes(&priv->dsp->ctl_list), 2); in cs_dsp_ctl_mem_uniqueness()
1109 ctl1 = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_mem_uniqueness()
1151 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_fw_uniqueness()
1152 cs_dsp_power_down(priv->dsp); in cs_dsp_ctl_fw_uniqueness()
1161 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw2", in cs_dsp_ctl_fw_uniqueness()
1163 cs_dsp_power_down(priv->dsp); in cs_dsp_ctl_fw_uniqueness()
1166 KUNIT_EXPECT_EQ(test, list_count_nodes(&priv->dsp->ctl_list), 2); in cs_dsp_ctl_fw_uniqueness()
1167 ctl1 = list_first_entry_or_null(&priv->dsp->ctl_list, struct cs_dsp_coeff_ctl, list); in cs_dsp_ctl_fw_uniqueness()
1210 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_squash_reloaded_controls()
1211 cs_dsp_power_down(priv->dsp); in cs_dsp_ctl_squash_reloaded_controls()
1214 KUNIT_EXPECT_EQ(test, list_count_nodes(&priv->dsp->ctl_list), in cs_dsp_ctl_squash_reloaded_controls()
1219 list_for_each_entry(walkctl, &priv->dsp->ctl_list, list) { in cs_dsp_ctl_squash_reloaded_controls()
1226 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_squash_reloaded_controls()
1227 cs_dsp_power_down(priv->dsp); in cs_dsp_ctl_squash_reloaded_controls()
1230 KUNIT_EXPECT_EQ(test, list_count_nodes(&priv->dsp->ctl_list), in cs_dsp_ctl_squash_reloaded_controls()
1235 list_for_each_entry(walkctl, &priv->dsp->ctl_list, list) { in cs_dsp_ctl_squash_reloaded_controls()
1276 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_v2_squash_reloaded_controls()
1277 cs_dsp_power_down(priv->dsp); in cs_dsp_ctl_v2_squash_reloaded_controls()
1280 KUNIT_EXPECT_EQ(test, list_count_nodes(&priv->dsp->ctl_list), in cs_dsp_ctl_v2_squash_reloaded_controls()
1285 list_for_each_entry(walkctl, &priv->dsp->ctl_list, list) { in cs_dsp_ctl_v2_squash_reloaded_controls()
1292 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_v2_squash_reloaded_controls()
1293 cs_dsp_power_down(priv->dsp); in cs_dsp_ctl_v2_squash_reloaded_controls()
1296 KUNIT_EXPECT_EQ(test, list_count_nodes(&priv->dsp->ctl_list), in cs_dsp_ctl_v2_squash_reloaded_controls()
1301 list_for_each_entry(walkctl, &priv->dsp->ctl_list, list) { in cs_dsp_ctl_v2_squash_reloaded_controls()
1347 KUNIT_ASSERT_EQ(test, cs_dsp_power_up(priv->dsp, wmfw, "mock_fw", NULL, NULL, "misc"), 0); in cs_dsp_ctl_v2_compare_len()
1350 mutex_lock(&priv->dsp->pwr_lock); in cs_dsp_ctl_v2_compare_len()
1351 ctl = cs_dsp_get_ctl(priv->dsp, cs_dsp_ctl_v2_compare_len_names[i], in cs_dsp_ctl_v2_compare_len()
1353 mutex_unlock(&priv->dsp->pwr_lock); in cs_dsp_ctl_v2_compare_len()
1362 static int cs_dsp_ctl_parse_test_common_init(struct kunit *test, struct cs_dsp *dsp, in cs_dsp_ctl_parse_test_common_init() argument
1379 priv->dsp = dsp; in cs_dsp_ctl_parse_test_common_init()
1389 dsp->dev = get_device(test_dev); in cs_dsp_ctl_parse_test_common_init()
1390 if (!dsp->dev) in cs_dsp_ctl_parse_test_common_init()
1393 ret = kunit_add_action_or_reset(test, _put_device_wrapper, dsp->dev); in cs_dsp_ctl_parse_test_common_init()
1397 dev_set_drvdata(dsp->dev, priv); in cs_dsp_ctl_parse_test_common_init()
1423 dsp->client_ops = kunit_kzalloc(test, sizeof(*dsp->client_ops), GFP_KERNEL); in cs_dsp_ctl_parse_test_common_init()
1424 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, dsp->client_ops); in cs_dsp_ctl_parse_test_common_init()
1426 switch (dsp->type) { in cs_dsp_ctl_parse_test_common_init()
1428 ret = cs_dsp_adsp2_init(dsp); in cs_dsp_ctl_parse_test_common_init()
1431 ret = cs_dsp_halo_init(dsp); in cs_dsp_ctl_parse_test_common_init()
1434 KUNIT_FAIL(test, "Untested DSP type %d\n", dsp->type); in cs_dsp_ctl_parse_test_common_init()
1442 return kunit_add_action_or_reset(priv->test, _cs_dsp_remove_wrapper, dsp); in cs_dsp_ctl_parse_test_common_init()
1447 struct cs_dsp *dsp; in cs_dsp_ctl_parse_test_halo_init() local
1450 dsp = kunit_kzalloc(test, sizeof(*dsp), GFP_KERNEL); in cs_dsp_ctl_parse_test_halo_init()
1451 if (!dsp) in cs_dsp_ctl_parse_test_halo_init()
1454 dsp->num = 1; in cs_dsp_ctl_parse_test_halo_init()
1455 dsp->type = WMFW_HALO; in cs_dsp_ctl_parse_test_halo_init()
1456 dsp->mem = cs_dsp_mock_halo_dsp1_regions; in cs_dsp_ctl_parse_test_halo_init()
1457 dsp->num_mems = cs_dsp_mock_count_regions(cs_dsp_mock_halo_dsp1_region_sizes); in cs_dsp_ctl_parse_test_halo_init()
1458 dsp->base = cs_dsp_mock_halo_core_base; in cs_dsp_ctl_parse_test_halo_init()
1459 dsp->base_sysinfo = cs_dsp_mock_halo_sysinfo_base; in cs_dsp_ctl_parse_test_halo_init()
1461 return cs_dsp_ctl_parse_test_common_init(test, dsp, 3); in cs_dsp_ctl_parse_test_halo_init()
1466 struct cs_dsp *dsp; in cs_dsp_ctl_parse_test_adsp2_32bit_init() local
1469 dsp = kunit_kzalloc(test, sizeof(*dsp), GFP_KERNEL); in cs_dsp_ctl_parse_test_adsp2_32bit_init()
1470 if (!dsp) in cs_dsp_ctl_parse_test_adsp2_32bit_init()
1473 dsp->num = 1; in cs_dsp_ctl_parse_test_adsp2_32bit_init()
1474 dsp->type = WMFW_ADSP2; in cs_dsp_ctl_parse_test_adsp2_32bit_init()
1475 dsp->rev = 1; in cs_dsp_ctl_parse_test_adsp2_32bit_init()
1476 dsp->mem = cs_dsp_mock_adsp2_32bit_dsp1_regions; in cs_dsp_ctl_parse_test_adsp2_32bit_init()
1477 dsp->num_mems = cs_dsp_mock_count_regions(cs_dsp_mock_adsp2_32bit_dsp1_region_sizes); in cs_dsp_ctl_parse_test_adsp2_32bit_init()
1478 dsp->base = cs_dsp_mock_adsp2_32bit_sysbase; in cs_dsp_ctl_parse_test_adsp2_32bit_init()
1480 return cs_dsp_ctl_parse_test_common_init(test, dsp, wmfw_ver); in cs_dsp_ctl_parse_test_adsp2_32bit_init()
1495 struct cs_dsp *dsp; in cs_dsp_ctl_parse_test_adsp2_16bit_init() local
1498 dsp = kunit_kzalloc(test, sizeof(*dsp), GFP_KERNEL); in cs_dsp_ctl_parse_test_adsp2_16bit_init()
1499 if (!dsp) in cs_dsp_ctl_parse_test_adsp2_16bit_init()
1502 dsp->num = 1; in cs_dsp_ctl_parse_test_adsp2_16bit_init()
1503 dsp->type = WMFW_ADSP2; in cs_dsp_ctl_parse_test_adsp2_16bit_init()
1504 dsp->rev = 0; in cs_dsp_ctl_parse_test_adsp2_16bit_init()
1505 dsp->mem = cs_dsp_mock_adsp2_16bit_dsp1_regions; in cs_dsp_ctl_parse_test_adsp2_16bit_init()
1506 dsp->num_mems = cs_dsp_mock_count_regions(cs_dsp_mock_adsp2_16bit_dsp1_region_sizes); in cs_dsp_ctl_parse_test_adsp2_16bit_init()
1507 dsp->base = cs_dsp_mock_adsp2_16bit_sysbase; in cs_dsp_ctl_parse_test_adsp2_16bit_init()
1509 return cs_dsp_ctl_parse_test_common_init(test, dsp, wmfw_ver); in cs_dsp_ctl_parse_test_adsp2_16bit_init()