Home
last modified time | relevance | path

Searched refs:cs_dsp (Results 1 – 25 of 43) sorted by relevance

12

/linux/include/linux/firmware/cirrus/
H A Dcs_dsp.h98 struct cs_dsp *dsp;
150 struct cs_dsp { struct
212 int (*pre_run)(struct cs_dsp *dsp);
213 int (*post_run)(struct cs_dsp *dsp);
214 void (*pre_stop)(struct cs_dsp *dsp);
215 void (*post_stop)(struct cs_dsp *dsp);
216 void (*watchdog_expired)(struct cs_dsp *dsp);
219 int cs_dsp_adsp1_init(struct cs_dsp *dsp);
220 int cs_dsp_adsp2_init(struct cs_dsp *dsp);
221 int cs_dsp_halo_init(struct cs_dsp *dsp);
[all …]
H A Dcs_dsp_test_utils.h3 * Support utilities for cs_dsp testing.
20 * @dsp: Pointer to struct cs_dsp instance.
25 struct cs_dsp *dsp;
95 unsigned int cs_dsp_mock_size_of_region(const struct cs_dsp *dsp, int mem_type);
/linux/sound/soc/codecs/
H A Dwm_adsp.c37 dev_crit(_dsp->cs_dsp.dev, "%s: " fmt, _dsp->cs_dsp.name, ##__VA_ARGS__)
39 dev_err(_dsp->cs_dsp.dev, "%s: " fmt, _dsp->cs_dsp.name, ##__VA_ARGS__)
41 dev_warn(_dsp->cs_dsp.dev, "%s: " fmt, _dsp->cs_dsp.name, ##__VA_ARGS__)
43 dev_info(_dsp->cs_dsp.dev, "%s: " fmt, _dsp->cs_dsp.name, ##__VA_ARGS__)
45 dev_dbg(_dsp->cs_dsp.dev, "%s: " fmt, _dsp->cs_dsp.name, ##__VA_ARGS__)
346 mutex_lock(&dsp[e->shift_l].cs_dsp.pwr_lock); in wm_adsp_fw_put()
348 if (dsp[e->shift_l].cs_dsp.booted || !list_empty(&dsp[e->shift_l].compr_list)) in wm_adsp_fw_put()
353 mutex_unlock(&dsp[e->shift_l].cs_dsp.pwr_lock); in wm_adsp_fw_put()
542 cs_dsp); in wm_adsp_ctl_work()
580 struct wm_adsp *dsp = container_of(cs_ctl->dsp, struct wm_adsp, cs_dsp); in wm_adsp_control_add()
[all …]
H A Dcs35l56-shared.c871 void cs35l56_init_cs_dsp(struct cs35l56_base *cs35l56_base, struct cs_dsp *cs_dsp) in cs35l56_init_cs_dsp() argument
873 cs_dsp->num = 1; in cs35l56_init_cs_dsp()
874 cs_dsp->type = WMFW_HALO; in cs35l56_init_cs_dsp()
875 cs_dsp->rev = 0; in cs35l56_init_cs_dsp()
876 cs_dsp->dev = cs35l56_base->dev; in cs35l56_init_cs_dsp()
877 cs_dsp->regmap = cs35l56_base->regmap; in cs35l56_init_cs_dsp()
878 cs_dsp->base = CS35L56_DSP1_CORE_BASE; in cs35l56_init_cs_dsp()
879 cs_dsp->base_sysinfo = CS35L56_DSP1_SYS_INFO_ID; in cs35l56_init_cs_dsp()
880 cs_dsp->mem = cs35l56_dsp1_regions; in cs35l56_init_cs_dsp()
881 cs_dsp->num_mems = ARRAY_SIZE(cs35l56_dsp1_regions); in cs35l56_init_cs_dsp()
[all …]
H A Dcs35l45.c53 if (!cs35l45->dsp.cs_dsp.running) { in cs35l45_set_cspl_mbox_cmd()
124 if (cs35l45->dsp.cs_dsp.booted) in cs35l45_dsp_preload_ev()
129 if (cs35l45->dsp.cs_dsp.running) in cs35l45_dsp_preload_ev()
140 if (cs35l45->dsp.cs_dsp.running) { in cs35l45_dsp_preload_ev()
984 if (!cs35l45->dsp.preloaded || !cs35l45->dsp.cs_dsp.running) in cs35l45_runtime_suspend()
1002 if (!cs35l45->dsp.preloaded || !cs35l45->dsp.cs_dsp.running) in cs35l45_runtime_resume()
1354 dsp->cs_dsp.num = 1; in cs35l45_dsp_init()
1355 dsp->cs_dsp.type = WMFW_HALO; in cs35l45_dsp_init()
1356 dsp->cs_dsp.rev = 0; in cs35l45_dsp_init()
1357 dsp->cs_dsp.dev = cs35l45->dev; in cs35l45_dsp_init()
[all …]
H A Dcs-amp-lib.c13 #include <linux/firmware/cirrus/cs_dsp.h>
75 static int cs_amp_write_cal_coeff(struct cs_dsp *dsp, in cs_amp_write_cal_coeff()
102 static int cs_amp_read_cal_coeff(struct cs_dsp *dsp, in cs_amp_read_cal_coeff()
130 static int _cs_amp_write_cal_coeffs(struct cs_dsp *dsp, in _cs_amp_write_cal_coeffs()
163 static int _cs_amp_read_cal_coeffs(struct cs_dsp *dsp, in _cs_amp_read_cal_coeffs()
204 * @dsp: Pointer to struct cs_dsp.
210 int cs_amp_write_cal_coeffs(struct cs_dsp *dsp, in cs_amp_write_cal_coeffs()
223 * @dsp: Pointer to struct cs_dsp.
229 int cs_amp_read_cal_coeffs(struct cs_dsp *dsp, in cs_amp_read_cal_coeffs()
242 * @dsp: Pointer to struct cs_dsp
[all...]
H A Dwm2200.c2206 wm2200->dsp[i].cs_dsp.type = WMFW_ADSP1; in wm2200_i2c_probe()
2208 wm2200->dsp[i].cs_dsp.num = i + 1; in wm2200_i2c_probe()
2209 wm2200->dsp[i].cs_dsp.dev = &i2c->dev; in wm2200_i2c_probe()
2210 wm2200->dsp[i].cs_dsp.regmap = wm2200->regmap; in wm2200_i2c_probe()
2211 wm2200->dsp[i].cs_dsp.sysclk_reg = WM2200_CLOCKING_3; in wm2200_i2c_probe()
2212 wm2200->dsp[i].cs_dsp.sysclk_mask = WM2200_SYSCLK_FREQ_MASK; in wm2200_i2c_probe()
2213 wm2200->dsp[i].cs_dsp.sysclk_shift = WM2200_SYSCLK_FREQ_SHIFT; in wm2200_i2c_probe()
2216 wm2200->dsp[0].cs_dsp.base = WM2200_DSP1_CONTROL_1; in wm2200_i2c_probe()
2217 wm2200->dsp[0].cs_dsp.mem = wm2200_dsp1_regions; in wm2200_i2c_probe()
2218 wm2200->dsp[0].cs_dsp.num_mems = ARRAY_SIZE(wm2200_dsp1_regions); in wm2200_i2c_probe()
[all …]
H A Dcs47l15.c1410 cs47l15->core.adsp[0].cs_dsp.num = 1; in cs47l15_probe()
1411 cs47l15->core.adsp[0].cs_dsp.type = WMFW_ADSP2; in cs47l15_probe()
1412 cs47l15->core.adsp[0].cs_dsp.rev = 2; in cs47l15_probe()
1413 cs47l15->core.adsp[0].cs_dsp.dev = madera->dev; in cs47l15_probe()
1414 cs47l15->core.adsp[0].cs_dsp.regmap = madera->regmap_32bit; in cs47l15_probe()
1416 cs47l15->core.adsp[0].cs_dsp.base = MADERA_DSP1_CONFIG_1; in cs47l15_probe()
1417 cs47l15->core.adsp[0].cs_dsp.mem = cs47l15_dsp1_regions; in cs47l15_probe()
1418 cs47l15->core.adsp[0].cs_dsp.num_mems = ARRAY_SIZE(cs47l15_dsp1_regions); in cs47l15_probe()
1420 cs47l15->core.adsp[0].cs_dsp.lock_regions = in cs47l15_probe()
H A Dwm_adsp.h28 struct cs_dsp cs_dsp; member
H A Dcs35l41.c193 if (cs35l41->dsp.cs_dsp.booted) in cs35l41_dsp_preload_ev()
201 if (cs35l41->dsp.cs_dsp.running) { in cs35l41_dsp_preload_ev()
223 if (!cs35l41->dsp.cs_dsp.running) in cs35l41_dsp_audio_ev()
522 1, &cs35l41->dsp.cs_dsp); in cs35l41_main_amp_event()
526 0, &cs35l41->dsp.cs_dsp); in cs35l41_main_amp_event()
1093 cs35l41_configure_cs_dsp(cs35l41->dev, cs35l41->regmap, &dsp->cs_dsp); in cs35l41_dsp_init()
1404 if (!cs35l41->dsp.preloaded || !cs35l41->dsp.cs_dsp.running) in cs35l41_runtime_suspend()
1422 if (!cs35l41->dsp.preloaded || !cs35l41->dsp.cs_dsp.running) in cs35l41_runtime_resume()
H A Dcs47l24.c1240 cs47l24->core.adsp[i].cs_dsp.num = i + 1; in cs47l24_probe()
1241 cs47l24->core.adsp[i].cs_dsp.type = WMFW_ADSP2; in cs47l24_probe()
1242 cs47l24->core.adsp[i].cs_dsp.dev = arizona->dev; in cs47l24_probe()
1243 cs47l24->core.adsp[i].cs_dsp.regmap = arizona->regmap; in cs47l24_probe()
1245 cs47l24->core.adsp[i].cs_dsp.base = ARIZONA_DSP1_CONTROL_1 + in cs47l24_probe()
1247 cs47l24->core.adsp[i].cs_dsp.mem = cs47l24_dsp_regions[i - 1]; in cs47l24_probe()
1248 cs47l24->core.adsp[i].cs_dsp.num_mems = in cs47l24_probe()
H A Dcs47l35.c1693 cs47l35->core.adsp[i].cs_dsp.num = i + 1; in cs47l35_probe()
1694 cs47l35->core.adsp[i].cs_dsp.type = WMFW_ADSP2; in cs47l35_probe()
1695 cs47l35->core.adsp[i].cs_dsp.rev = 1; in cs47l35_probe()
1696 cs47l35->core.adsp[i].cs_dsp.dev = madera->dev; in cs47l35_probe()
1697 cs47l35->core.adsp[i].cs_dsp.regmap = madera->regmap_32bit; in cs47l35_probe()
1699 cs47l35->core.adsp[i].cs_dsp.base = wm_adsp2_control_bases[i]; in cs47l35_probe()
1700 cs47l35->core.adsp[i].cs_dsp.mem = cs47l35_dsp_regions[i]; in cs47l35_probe()
1701 cs47l35->core.adsp[i].cs_dsp.num_mems = in cs47l35_probe()
/linux/drivers/firmware/cirrus/
H A Dcs_dsp.c325 bool (*validate_version)(struct cs_dsp *dsp, unsigned int version);
326 unsigned int (*parse_sizes)(struct cs_dsp *dsp,
330 int (*setup_algs)(struct cs_dsp *dsp);
334 void (*show_fw_status)(struct cs_dsp *dsp);
335 void (*stop_watchdog)(struct cs_dsp *dsp);
337 int (*enable_memory)(struct cs_dsp *dsp);
338 void (*disable_memory)(struct cs_dsp *dsp);
339 int (*lock_memory)(struct cs_dsp *dsp, unsigned int lock_regions);
341 int (*enable_core)(struct cs_dsp *dsp);
342 void (*disable_core)(struct cs_dsp *dsp);
[all …]
H A DKconfig11 tristate "KUnit tests for Cirrus Logic cs_dsp" if !KUNIT_ALL_TESTS
16 This builds KUnit tests for cs_dsp.
H A DMakefile3 obj-$(CONFIG_FW_CS_DSP) += cs_dsp.o
/linux/include/sound/
H A Dcs-amp-lib.h13 struct cs_dsp;
47 int cs_amp_write_cal_coeffs(struct cs_dsp *dsp,
50 int cs_amp_read_cal_coeffs(struct cs_dsp *dsp,
53 int cs_amp_write_ambient_temp(struct cs_dsp *dsp,
83 int (*write_cal_coeff)(struct cs_dsp *dsp,
87 int (*read_cal_coeff)(struct cs_dsp *dsp,
H A Dcs35l56.h350 struct cs_dsp *dsp;
422 void cs35l56_init_cs_dsp(struct cs35l56_base *cs35l56_base, struct cs_dsp *cs_dsp);
446 void cs35l56_log_tuning(struct cs35l56_base *cs35l56_base, struct cs_dsp *cs_dsp);
/linux/sound/hda/codecs/side-codecs/
H A Dcs35l56_hda.c129 if (cs35l56->cs_dsp.booted) in cs35l56_hda_runtime_suspend()
130 cs_dsp_stop(&cs35l56->cs_dsp); in cs35l56_hda_runtime_suspend()
144 if (cs35l56->cs_dsp.booted) { in cs35l56_hda_runtime_resume()
145 ret = cs_dsp_run(&cs35l56->cs_dsp); in cs35l56_hda_runtime_resume()
554 ret = cs_amp_write_cal_coeffs(&cs35l56->cs_dsp, in cs35l56_hda_apply_calibration()
583 cs_dsp_power_down(&cs35l56->cs_dsp); in cs35l56_hda_fw_load()
633 ret = cs_dsp_power_up(&cs35l56->cs_dsp, wmfw_firmware, wmfw_filename, in cs35l56_hda_fw_load()
669 ret = cs_dsp_run(&cs35l56->cs_dsp); in cs35l56_hda_fw_load()
678 cs_dsp_stop(&cs35l56->cs_dsp); in cs35l56_hda_fw_load()
680 cs35l56_log_tuning(&cs35l56->base, &cs35l56->cs_dsp); in cs35l56_hda_fw_load()
[all...]
H A Dcs35l41_hda.c140 /* cs_dsp requires the client to provide this even if it is empty */
169 const char * const dsp_name = cs35l41->cs_dsp.name; in cs35l41_request_firmware_file()
408 ret = cs_amp_write_cal_coeffs(&cs35l41->cs_dsp, &cs35l41_calibration_controls, in cs35l41_hda_apply_calibration()
561 struct cs_dsp *dsp = &cs35l41->cs_dsp; in cs35l41_init_dsp()
570 ret = cs_dsp_halo_init(&cs35l41->cs_dsp); in cs35l41_init_dsp()
613 struct cs_dsp *dsp = &cs35l41->cs_dsp; in cs35l41_shutdown_dsp()
623 struct cs_dsp *dsp = &cs35l41->cs_dsp; in cs35l41_remove_dsp()
[all...]
H A Dcs35l56_hda.h32 struct cs_dsp cs_dsp; member
H A Dcs35l41_hda.h85 struct cs_dsp cs_dsp; member
/linux/drivers/firmware/cirrus/test/
H A Dcs_dsp_test_callbacks.c26 KUNIT_DEFINE_ACTION_WRAPPER(_cs_dsp_remove_wrapper, cs_dsp_remove, struct cs_dsp *)
40 struct cs_dsp *passed_dsp;
88 static int cs_dsp_test_pre_run_callback(struct cs_dsp *dsp) in cs_dsp_test_pre_run_callback()
100 static int cs_dsp_test_post_run_callback(struct cs_dsp *dsp) in cs_dsp_test_post_run_callback()
112 static void cs_dsp_test_pre_stop_callback(struct cs_dsp *dsp) in cs_dsp_test_pre_stop_callback()
122 static void cs_dsp_test_post_stop_callback(struct cs_dsp *dsp) in cs_dsp_test_post_stop_callback()
132 static void cs_dsp_test_watchdog_expired_callback(struct cs_dsp *dsp) in cs_dsp_test_watchdog_expired_callback()
434 static int cs_dsp_callbacks_test_common_init(struct kunit *test, struct cs_dsp *dsp, in cs_dsp_callbacks_test_common_init()
521 struct cs_dsp *dsp; in cs_dsp_callbacks_test_halo_init()
540 struct cs_dsp *dsp; in cs_dsp_callbacks_test_adsp2_32bit_init()
[all …]
H A Dcs_dsp_test_control_rw.c20 KUNIT_DEFINE_ACTION_WRAPPER(_cs_dsp_stop_wrapper, cs_dsp_stop, struct cs_dsp *);
21 KUNIT_DEFINE_ACTION_WRAPPER(_cs_dsp_remove_wrapper, cs_dsp_remove, struct cs_dsp *);
145 struct cs_dsp *dsp = priv->dsp; in cs_dsp_ctl_write_running()
216 struct cs_dsp *dsp = priv->dsp; in cs_dsp_ctl_read_volatile_running()
287 struct cs_dsp *dsp = priv->dsp; in cs_dsp_ctl_read_volatile_not_started()
337 struct cs_dsp *dsp = priv->dsp; in cs_dsp_ctl_read_volatile_stopped()
391 struct cs_dsp *dsp = priv->dsp; in cs_dsp_ctl_read_volatile_stopped_powered_down()
447 struct cs_dsp *dsp = priv->dsp; in cs_dsp_ctl_read_volatile_not_current_loaded_fw()
505 struct cs_dsp *dsp = priv->dsp; in cs_dsp_ctl_read_volatile_not_current_running_fw()
566 struct cs_dsp *dsp = priv->dsp; in cs_dsp_ctl_write_volatile_not_started()
[all …]
H A Dcs_dsp_test_control_cache.c20 KUNIT_DEFINE_ACTION_WRAPPER(_cs_dsp_stop_wrapper, cs_dsp_stop, struct cs_dsp *);
21 KUNIT_DEFINE_ACTION_WRAPPER(_cs_dsp_remove_wrapper, cs_dsp_remove, struct cs_dsp *);
149 struct cs_dsp *dsp = priv->dsp; in cs_dsp_ctl_v2_cache_alloc()
203 struct cs_dsp *dsp = priv->dsp; in cs_dsp_ctl_cache_init()
262 struct cs_dsp *dsp = priv->dsp; in cs_dsp_ctl_cache_init_write_only()
314 struct cs_dsp *dsp = priv->dsp; in cs_dsp_ctl_cache_init_multiple_fw_same_controls()
423 struct cs_dsp *dsp = priv->dsp; in cs_dsp_ctl_cache_init_multiple_fwalgid_same_controls()
531 struct cs_dsp *dsp = priv->dsp; in cs_dsp_ctl_cache_init_multiple_mems()
652 struct cs_dsp *dsp = priv->dsp; in cs_dsp_ctl_cache_init_multiple_algs()
753 struct cs_dsp *dsp = priv->dsp; in cs_dsp_ctl_cache_init_multiple_offsets()
[all …]
H A Dcs_dsp_test_bin_error.c24 KUNIT_DEFINE_ACTION_WRAPPER(_cs_dsp_remove_wrapper, cs_dsp_remove, struct cs_dsp *);
390 static int cs_dsp_bin_err_test_common_init(struct kunit *test, struct cs_dsp *dsp, in cs_dsp_bin_err_test_common_init()
494 struct cs_dsp *dsp; in cs_dsp_bin_err_test_halo_init()
513 struct cs_dsp *dsp; in cs_dsp_bin_err_test_adsp2_32bit_init()
532 struct cs_dsp *dsp; in cs_dsp_bin_err_test_adsp2_16bit_init()

12