Lines Matching full:dsp

37  *  dsp words:	The addressing scheme used by the DSP, pointers and lengths
38 * in DSP memory use this. A memory region (XM, YM, ZM) is
39 * also required to create a unique DSP memory address.
44 * unpacked: Registers that have a 1:1 mapping to DSP words
45 * packed: Registers that pack multiple DSP words more efficiently into
51 * of multiple DSP words.
55 * can be expressed in dsp words, register addresses, or bytes.
106 * Convert number of DSP words to number of packed registers rounded
115 /* bin file that patches a single DSP word */
140 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_one_word()
149 regmap_raw_read(priv->dsp->regmap, reg_addr, in bin_patch_one_word()
189 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_one_multiword()
197 regmap_raw_read(priv->dsp->regmap, reg_addr, readback, in bin_patch_one_multiword()
241 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_multi_oneword()
249 regmap_raw_read(priv->dsp->regmap, reg_addr, readback, in bin_patch_multi_oneword()
299 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_multi_oneword_unordered()
307 regmap_raw_read(priv->dsp->regmap, reg_addr, readback, in bin_patch_multi_oneword_unordered()
359 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_multi_oneword_sparse_unordered()
369 regmap_raw_read(priv->dsp->regmap, reg_addr, &reg_val, in bin_patch_multi_oneword_sparse_unordered()
384 * bin file that patches a single DSP word in each of the memory regions
441 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_one_word_multiple_mems()
450 regmap_raw_read(priv->dsp->regmap, reg_addr, &reg_val, sizeof(reg_val)), in bin_patch_one_word_multiple_mems()
460 regmap_raw_read(priv->dsp->regmap, reg_addr, &reg_val, sizeof(reg_val)), in bin_patch_one_word_multiple_mems()
471 regmap_raw_read(priv->dsp->regmap, reg_addr, &reg_val, in bin_patch_one_word_multiple_mems()
486 * bin file that patches a single DSP word in multiple algorithms.
515 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_one_word_multiple_algs()
529 regmap_raw_read(priv->dsp->regmap, reg_addr, &reg_val, in bin_patch_one_word_multiple_algs()
544 * bin file that patches a single DSP word in multiple algorithms.
578 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_one_word_multiple_algs_unordered()
593 regmap_raw_read(priv->dsp->regmap, reg_addr, &reg_val, in bin_patch_one_word_multiple_algs_unordered()
607 /* bin file that patches a single packed block of DSP words */
640 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_1_packed()
649 regmap_raw_read(priv->dsp->regmap, reg_addr, readback, in bin_patch_1_packed()
708 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_1_packed_1_single_trailing()
717 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, sizeof(readback)), in bin_patch_1_packed_1_single_trailing()
728 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, in bin_patch_1_packed_1_single_trailing()
795 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_1_packed_2_single_trailing()
804 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, sizeof(readback)), in bin_patch_1_packed_2_single_trailing()
816 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, in bin_patch_1_packed_2_single_trailing()
891 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_1_packed_3_single_trailing()
900 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, sizeof(readback)), in bin_patch_1_packed_3_single_trailing()
912 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, in bin_patch_1_packed_3_single_trailing()
973 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_1_packed_2_trailing()
982 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, sizeof(readback)), in bin_patch_1_packed_2_trailing()
994 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, in bin_patch_1_packed_2_trailing()
1055 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_1_packed_3_trailing()
1064 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, sizeof(readback)), in bin_patch_1_packed_3_trailing()
1076 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, in bin_patch_1_packed_3_trailing()
1137 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_1_single_leading_1_packed()
1145 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, sizeof(readback)), in bin_patch_1_single_leading_1_packed()
1156 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, in bin_patch_1_single_leading_1_packed()
1222 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_2_single_leading_1_packed()
1231 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, sizeof(readback)), in bin_patch_2_single_leading_1_packed()
1243 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, in bin_patch_2_single_leading_1_packed()
1303 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_2_leading_1_packed()
1312 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, sizeof(readback)), in bin_patch_2_leading_1_packed()
1324 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, in bin_patch_2_leading_1_packed()
1396 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_3_single_leading_1_packed()
1405 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, sizeof(readback)), in bin_patch_3_single_leading_1_packed()
1417 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, in bin_patch_3_single_leading_1_packed()
1477 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_3_leading_1_packed()
1486 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, sizeof(readback)), in bin_patch_3_leading_1_packed()
1498 regmap_raw_read(priv->dsp->regmap, reg_addr, &readback, in bin_patch_3_leading_1_packed()
1550 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_multi_onepacked()
1560 regmap_raw_read(priv->dsp->regmap, reg_addr, readback, sizeof(readback)), in bin_patch_multi_onepacked()
1616 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_multi_onepacked_unordered()
1626 regmap_raw_read(priv->dsp->regmap, reg_addr, readback, sizeof(readback)), in bin_patch_multi_onepacked_unordered()
1679 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_multi_onepacked_sparse_unordered()
1691 regmap_raw_read(priv->dsp->regmap, reg_addr, readback, in bin_patch_multi_onepacked_sparse_unordered()
1758 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_1_packed_multiple_mems()
1768 regmap_raw_read(priv->dsp->regmap, reg_addr, readback, sizeof(readback)), in bin_patch_1_packed_multiple_mems()
1781 regmap_raw_read(priv->dsp->regmap, reg_addr, readback, sizeof(readback)), in bin_patch_1_packed_multiple_mems()
1812 /* For each algorithm patch one DSP word to a value from packed_payload */ in bin_patch_1_packed_multiple_algs()
1834 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_1_packed_multiple_algs()
1857 regmap_raw_read(priv->dsp->regmap, reg_addr, in bin_patch_1_packed_multiple_algs()
1895 * For each algorithm index in alg_order[] patch one DSP word in in bin_patch_1_packed_multiple_algs_unordered()
1920 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_1_packed_multiple_algs_unordered()
1943 regmap_raw_read(priv->dsp->regmap, reg_addr, in bin_patch_1_packed_multiple_algs_unordered()
2028 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_mixed_packed_unpacked_random()
2054 regmap_raw_read(priv->dsp->regmap, reg_addr, readback, in bin_patch_mixed_packed_unpacked_random()
2084 regmap_raw_read(priv->dsp->regmap, reg_addr, in bin_patch_mixed_packed_unpacked_random()
2137 cs_dsp_power_up(priv->dsp, priv->local->wmfw, "mock_wmfw", in bin_patch_name_and_info()
2146 regmap_raw_read(priv->dsp->regmap, reg_addr, in bin_patch_name_and_info()
2152 static int cs_dsp_bin_test_common_init(struct kunit *test, struct cs_dsp *dsp) in cs_dsp_bin_test_common_init() argument
2168 priv->dsp = dsp; in cs_dsp_bin_test_common_init()
2176 dsp->dev = get_device(test_dev); in cs_dsp_bin_test_common_init()
2177 if (!dsp->dev) in cs_dsp_bin_test_common_init()
2180 ret = kunit_add_action_or_reset(test, _put_device_wrapper, dsp->dev); in cs_dsp_bin_test_common_init()
2184 dev_set_drvdata(dsp->dev, priv); in cs_dsp_bin_test_common_init()
2208 dsp->client_ops = kunit_kzalloc(test, sizeof(*dsp->client_ops), GFP_KERNEL); in cs_dsp_bin_test_common_init()
2209 KUNIT_ASSERT_NOT_ERR_OR_NULL(test, dsp->client_ops); in cs_dsp_bin_test_common_init()
2211 switch (dsp->type) { in cs_dsp_bin_test_common_init()
2213 ret = cs_dsp_adsp2_init(dsp); in cs_dsp_bin_test_common_init()
2216 ret = cs_dsp_halo_init(dsp); in cs_dsp_bin_test_common_init()
2219 KUNIT_FAIL(test, "Untested DSP type %d\n", dsp->type); in cs_dsp_bin_test_common_init()
2227 return kunit_add_action_or_reset(priv->test, _cs_dsp_remove_wrapper, dsp); in cs_dsp_bin_test_common_init()
2232 struct cs_dsp *dsp; in cs_dsp_bin_test_halo_init() local
2235 dsp = kunit_kzalloc(test, sizeof(*dsp), GFP_KERNEL); in cs_dsp_bin_test_halo_init()
2236 if (!dsp) in cs_dsp_bin_test_halo_init()
2239 dsp->num = 1; in cs_dsp_bin_test_halo_init()
2240 dsp->type = WMFW_HALO; in cs_dsp_bin_test_halo_init()
2241 dsp->mem = cs_dsp_mock_halo_dsp1_regions; in cs_dsp_bin_test_halo_init()
2242 dsp->num_mems = cs_dsp_mock_count_regions(cs_dsp_mock_halo_dsp1_region_sizes); in cs_dsp_bin_test_halo_init()
2243 dsp->base = cs_dsp_mock_halo_core_base; in cs_dsp_bin_test_halo_init()
2244 dsp->base_sysinfo = cs_dsp_mock_halo_sysinfo_base; in cs_dsp_bin_test_halo_init()
2246 return cs_dsp_bin_test_common_init(test, dsp); in cs_dsp_bin_test_halo_init()
2251 struct cs_dsp *dsp; in cs_dsp_bin_test_adsp2_32bit_init() local
2254 dsp = kunit_kzalloc(test, sizeof(*dsp), GFP_KERNEL); in cs_dsp_bin_test_adsp2_32bit_init()
2255 if (!dsp) in cs_dsp_bin_test_adsp2_32bit_init()
2258 dsp->num = 1; in cs_dsp_bin_test_adsp2_32bit_init()
2259 dsp->type = WMFW_ADSP2; in cs_dsp_bin_test_adsp2_32bit_init()
2260 dsp->rev = 1; in cs_dsp_bin_test_adsp2_32bit_init()
2261 dsp->mem = cs_dsp_mock_adsp2_32bit_dsp1_regions; in cs_dsp_bin_test_adsp2_32bit_init()
2262 dsp->num_mems = cs_dsp_mock_count_regions(cs_dsp_mock_adsp2_32bit_dsp1_region_sizes); in cs_dsp_bin_test_adsp2_32bit_init()
2263 dsp->base = cs_dsp_mock_adsp2_32bit_sysbase; in cs_dsp_bin_test_adsp2_32bit_init()
2265 return cs_dsp_bin_test_common_init(test, dsp); in cs_dsp_bin_test_adsp2_32bit_init()
2270 struct cs_dsp *dsp; in cs_dsp_bin_test_adsp2_16bit_init() local
2273 dsp = kunit_kzalloc(test, sizeof(*dsp), GFP_KERNEL); in cs_dsp_bin_test_adsp2_16bit_init()
2274 if (!dsp) in cs_dsp_bin_test_adsp2_16bit_init()
2277 dsp->num = 1; in cs_dsp_bin_test_adsp2_16bit_init()
2278 dsp->type = WMFW_ADSP2; in cs_dsp_bin_test_adsp2_16bit_init()
2279 dsp->rev = 0; in cs_dsp_bin_test_adsp2_16bit_init()
2280 dsp->mem = cs_dsp_mock_adsp2_16bit_dsp1_regions; in cs_dsp_bin_test_adsp2_16bit_init()
2281 dsp->num_mems = cs_dsp_mock_count_regions(cs_dsp_mock_adsp2_16bit_dsp1_region_sizes); in cs_dsp_bin_test_adsp2_16bit_init()
2282 dsp->base = cs_dsp_mock_adsp2_16bit_sysbase; in cs_dsp_bin_test_adsp2_16bit_init()
2284 return cs_dsp_bin_test_common_init(test, dsp); in cs_dsp_bin_test_adsp2_16bit_init()