Home
last modified time | relevance | path

Searched refs:cs35l56 (Results 1 – 14 of 14) sorted by relevance

/linux/sound/hda/codecs/side-codecs/
H A Dcs35l56_hda.c52 static void cs35l56_hda_wait_dsp_ready(struct cs35l56_hda *cs35l56) in cs35l56_hda_wait_dsp_ready() argument
55 flush_work(&cs35l56->dsp_work); in cs35l56_hda_wait_dsp_ready()
58 static void cs35l56_hda_play(struct cs35l56_hda *cs35l56) in cs35l56_hda_play() argument
63 cs35l56_hda_wait_dsp_ready(cs35l56); in cs35l56_hda_play()
65 pm_runtime_get_sync(cs35l56->base.dev); in cs35l56_hda_play()
66 ret = cs35l56_mbox_send(&cs35l56->base, CS35L56_MBOX_CMD_AUDIO_PLAY); in cs35l56_hda_play()
69 ret = regmap_read_poll_timeout(cs35l56->base.regmap, in cs35l56_hda_play()
70 cs35l56->base.fw_reg->transducer_actual_ps, in cs35l56_hda_play()
75 dev_warn(cs35l56->base.dev, "PS0 wait failed: %d\n", ret); in cs35l56_hda_play()
77 regmap_set_bits(cs35l56 in cs35l56_hda_play()
83 cs35l56_hda_pause(struct cs35l56_hda * cs35l56) cs35l56_hda_pause() argument
97 struct cs35l56_hda *cs35l56 = dev_get_drvdata(dev); cs35l56_hda_playback_hook() local
127 struct cs35l56_hda *cs35l56 = dev_get_drvdata(dev); cs35l56_hda_runtime_suspend() local
137 struct cs35l56_hda *cs35l56 = dev_get_drvdata(dev); cs35l56_hda_runtime_resume() local
181 struct cs35l56_hda *cs35l56 = snd_kcontrol_chip(kcontrol); cs35l56_hda_mixer_get() local
203 struct cs35l56_hda *cs35l56 = snd_kcontrol_chip(kcontrol); cs35l56_hda_mixer_put() local
232 struct cs35l56_hda *cs35l56 = snd_kcontrol_chip(kcontrol); cs35l56_hda_posture_get() local
251 struct cs35l56_hda *cs35l56 = snd_kcontrol_chip(kcontrol); cs35l56_hda_posture_put() local
298 struct cs35l56_hda *cs35l56 = snd_kcontrol_chip(kcontrol); cs35l56_hda_vol_get() local
324 struct cs35l56_hda *cs35l56 = snd_kcontrol_chip(kcontrol); cs35l56_hda_vol_put() local
347 cs35l56_hda_create_controls(struct cs35l56_hda * cs35l56) cs35l56_hda_create_controls() argument
395 cs35l56_hda_remove_controls(struct cs35l56_hda * cs35l56) cs35l56_hda_remove_controls() argument
410 cs35l56_hda_request_firmware_file(struct cs35l56_hda * cs35l56,const struct firmware ** firmware,char ** filename,const char * base_name,const char * system_name,const char * amp_name,const char * filetype) cs35l56_hda_request_firmware_file() argument
459 cs35l56_hda_request_firmware_files(struct cs35l56_hda * cs35l56,unsigned int preloaded_fw_ver,const struct firmware ** wmfw_firmware,char ** wmfw_filename,const struct firmware ** coeff_firmware,char ** coeff_filename) cs35l56_hda_request_firmware_files() argument
551 cs35l56_hda_apply_calibration(struct cs35l56_hda * cs35l56) cs35l56_hda_apply_calibration() argument
571 cs35l56_hda_fw_load(struct cs35l56_hda * cs35l56) cs35l56_hda_fw_load() argument
699 struct cs35l56_hda *cs35l56 = container_of(work, struct cs35l56_hda, dsp_work); cs35l56_hda_dsp_work() local
760 struct cs35l56_hda *cs35l56 = cs35l56_hda_from_base(cs35l56_base); cs35l56_hda_debugfs_cal_data_write() local
800 struct cs35l56_hda *cs35l56 = dev_get_drvdata(dev); cs35l56_hda_bind() local
835 struct cs35l56_hda *cs35l56 = dev_get_drvdata(dev); cs35l56_hda_unbind() local
868 struct cs35l56_hda *cs35l56 = dev_get_drvdata(dev); cs35l56_hda_system_suspend() local
891 struct cs35l56_hda *cs35l56 = dev_get_drvdata(dev); cs35l56_hda_system_suspend_late() local
907 struct cs35l56_hda *cs35l56 = dev_get_drvdata(dev); cs35l56_hda_system_suspend_no_irq() local
918 struct cs35l56_hda *cs35l56 = dev_get_drvdata(dev); cs35l56_hda_system_resume_no_irq() local
935 struct cs35l56_hda *cs35l56 = dev_get_drvdata(dev); cs35l56_hda_system_resume_early() local
952 struct cs35l56_hda *cs35l56 = dev_get_drvdata(dev); cs35l56_hda_system_resume() local
979 cs35l56_hda_fixup_yoga9(struct cs35l56_hda * cs35l56,int * bus_addr) cs35l56_hda_fixup_yoga9() argument
1006 cs35l56_hda_apply_platform_fixups(struct cs35l56_hda * cs35l56,const char * sub,int * bus_addr) cs35l56_hda_apply_platform_fixups() argument
1025 cs35l56_hda_read_acpi(struct cs35l56_hda * cs35l56,int hid,int id) cs35l56_hda_read_acpi() argument
1136 cs35l56_hda_common_probe(struct cs35l56_hda * cs35l56,int hid,int id) cs35l56_hda_common_probe() argument
1248 struct cs35l56_hda *cs35l56 = dev_get_drvdata(dev); cs35l56_hda_remove() local
[all...]
H A Dcs35l56_hda_spi.c17 struct cs35l56_hda *cs35l56; in cs35l56_hda_spi_probe() local
20 cs35l56 = devm_kzalloc(&spi->dev, sizeof(*cs35l56), GFP_KERNEL); in cs35l56_hda_spi_probe()
21 if (!cs35l56) in cs35l56_hda_spi_probe()
24 cs35l56->base.dev = &spi->dev; in cs35l56_hda_spi_probe()
25 ret = cs35l56_init_config_for_spi(&cs35l56->base, spi); in cs35l56_hda_spi_probe()
30 cs35l56->base.can_hibernate = true; in cs35l56_hda_spi_probe()
33 cs35l56->base.regmap = devm_regmap_init_spi(spi, &cs35l56_regmap_spi); in cs35l56_hda_spi_probe()
34 if (IS_ERR(cs35l56->base.regmap)) { in cs35l56_hda_spi_probe()
35 ret = PTR_ERR(cs35l56->base.regmap); in cs35l56_hda_spi_probe()
36 dev_err(cs35l56->base.dev, "Failed to allocate register map: %d\n", in cs35l56_hda_spi_probe()
[all …]
H A Dcs35l56_hda_i2c.c17 struct cs35l56_hda *cs35l56; in cs35l56_hda_i2c_probe() local
20 cs35l56 = devm_kzalloc(&clt->dev, sizeof(*cs35l56), GFP_KERNEL); in cs35l56_hda_i2c_probe()
21 if (!cs35l56) in cs35l56_hda_i2c_probe()
24 cs35l56->base.dev = &clt->dev; in cs35l56_hda_i2c_probe()
27 cs35l56->base.can_hibernate = true; in cs35l56_hda_i2c_probe()
30 cs35l56->base.regmap = devm_regmap_init_i2c(clt, &cs35l56_regmap_i2c); in cs35l56_hda_i2c_probe()
31 if (IS_ERR(cs35l56->base.regmap)) { in cs35l56_hda_i2c_probe()
32 ret = PTR_ERR(cs35l56->base.regmap); in cs35l56_hda_i2c_probe()
33 dev_err(cs35l56->base.dev, "Failed to allocate register map: %d\n", in cs35l56_hda_i2c_probe()
38 ret = cs35l56_hda_common_probe(cs35l56, id->driver_data, clt->addr); in cs35l56_hda_i2c_probe()
[all …]
H A DMakefile9 snd-hda-scodec-cs35l56-y := cs35l56_hda.o
10 snd-hda-scodec-cs35l56-i2c-y := cs35l56_hda_i2c.o
11 snd-hda-scodec-cs35l56-spi-y := cs35l56_hda_spi.o
22 obj-$(CONFIG_SND_HDA_SCODEC_CS35L56) += snd-hda-scodec-cs35l56.o
23 obj-$(CONFIG_SND_HDA_SCODEC_CS35L56_I2C) += snd-hda-scodec-cs35l56-i2c.o
24 obj-$(CONFIG_SND_HDA_SCODEC_CS35L56_SPI) += snd-hda-scodec-cs35l56-spi.o
H A Dcs35l56_hda.h53 int cs35l56_hda_common_probe(struct cs35l56_hda *cs35l56, int hid, int id);
/linux/sound/soc/codecs/
H A Dcs35l56.c43 static void cs35l56_wait_dsp_ready(struct cs35l56_private *cs35l56) in cs35l56_wait_dsp_ready() argument
46 flush_work(&cs35l56->dsp_work); in cs35l56_wait_dsp_ready()
53 struct cs35l56_private *cs35l56 = snd_soc_component_get_drvdata(component); in cs35l56_dspwait_get_volsw() local
55 cs35l56_wait_dsp_ready(cs35l56); in cs35l56_dspwait_get_volsw()
63 struct cs35l56_private *cs35l56 = snd_soc_component_get_drvdata(component); in cs35l56_dspwait_put_volsw() local
65 cs35l56_wait_dsp_ready(cs35l56); in cs35l56_dspwait_put_volsw()
78 struct cs35l56_private *cs35l56 = snd_soc_component_get_drvdata(component); in cs35l56_cal_set_status_ctl_get() local
80 return cs35l56_cal_set_status_get(&cs35l56->base, ucontrol); in cs35l56_cal_set_status_ctl_get()
203 struct cs35l56_private *cs35l56 = snd_soc_component_get_drvdata(component); in cs35l56_play_event() local
207 dev_dbg(cs35l56->base.dev, "play: %d\n", event); in cs35l56_play_event()
[all …]
H A Dcs35l56-sdw.c241 static int cs35l56_sdw_get_unique_id(struct cs35l56_private *cs35l56) in cs35l56_sdw_get_unique_id() argument
245 ret = sdw_read_no_pm(cs35l56->sdw_peripheral, SDW_SCP_DEVID_0); in cs35l56_sdw_get_unique_id()
249 cs35l56->sdw_unique_id = ret & 0xf; in cs35l56_sdw_get_unique_id()
256 struct cs35l56_private *cs35l56 = dev_get_drvdata(&peripheral->dev); in cs35l56_sdw_init() local
259 pm_runtime_get_noresume(cs35l56->base.dev); in cs35l56_sdw_init()
261 ret = cs35l56_sdw_get_unique_id(cs35l56); in cs35l56_sdw_init()
266 if (cs35l56->base.cal_index < 0) in cs35l56_sdw_init()
267 cs35l56->base.cal_index = cs35l56->sdw_unique_id; in cs35l56_sdw_init()
269 ret = cs35l56_init(cs35l56); in cs35l56_sdw_init()
271 regcache_cache_only(cs35l56->base.regmap, true); in cs35l56_sdw_init()
[all …]
H A Dcs35l56-i2c.c21 struct cs35l56_private *cs35l56; in cs35l56_i2c_probe() local
26 cs35l56 = devm_kzalloc(dev, sizeof(struct cs35l56_private), GFP_KERNEL); in cs35l56_i2c_probe()
27 if (!cs35l56) in cs35l56_i2c_probe()
30 cs35l56->base.dev = dev; in cs35l56_i2c_probe()
31 cs35l56->base.can_hibernate = true; in cs35l56_i2c_probe()
33 i2c_set_clientdata(client, cs35l56); in cs35l56_i2c_probe()
38 cs35l56->base.type = 0x56; in cs35l56_i2c_probe()
42 cs35l56->base.type = 0x63; in cs35l56_i2c_probe()
48 cs35l56->base.regmap = devm_regmap_init_i2c(client, regmap_config); in cs35l56_i2c_probe()
49 if (IS_ERR(cs35l56->base.regmap)) { in cs35l56_i2c_probe()
[all …]
H A Dcs35l56-spi.c20 struct cs35l56_private *cs35l56; in cs35l56_spi_probe() local
23 cs35l56 = devm_kzalloc(&spi->dev, sizeof(struct cs35l56_private), GFP_KERNEL); in cs35l56_spi_probe()
24 if (!cs35l56) in cs35l56_spi_probe()
27 spi_set_drvdata(spi, cs35l56); in cs35l56_spi_probe()
29 cs35l56->base.type = 0x56; in cs35l56_spi_probe()
31 cs35l56->base.regmap = devm_regmap_init_spi(spi, regmap_config); in cs35l56_spi_probe()
32 if (IS_ERR(cs35l56->base.regmap)) { in cs35l56_spi_probe()
33 ret = PTR_ERR(cs35l56->base.regmap); in cs35l56_spi_probe()
37 cs35l56->base.dev = &spi->dev; in cs35l56_spi_probe()
38 cs35l56->base.can_hibernate = true; in cs35l56_spi_probe()
[all …]
H A Dcs35l56.h17 #include <sound/cs35l56.h>
73 int cs35l56_common_probe(struct cs35l56_private *cs35l56);
74 int cs35l56_init(struct cs35l56_private *cs35l56);
75 void cs35l56_remove(struct cs35l56_private *cs35l56);
78 int cs35l56_set_fw_suffix(struct cs35l56_private *cs35l56);
80 int cs35l56_process_xu_properties(struct cs35l56_private *cs35l56);
H A DMakefile78 snd-soc-cs35l56-y := cs35l56.o
79 snd-soc-cs35l56-shared-y := cs35l56-shared.o
80 snd-soc-cs35l56-shared-test-y := cs35l56-shared-test.o
81 snd-soc-cs35l56-i2c-y := cs35l56-i2c.o
82 snd-soc-cs35l56-spi-y := cs35l56
[all...]
/linux/Documentation/sound/codecs/
H A Dcs35l56.rst32 The cs35l56 drivers support:
41 *For systems using SoundWire*: sound/soc/codecs/cs35l56.c and associated files
163 [ 7.568374] cs35l56 sdw:0:0:01fa:3556:01:0: supply VDD_P not found, using dummy regulator
164 [ 7.605208] cs35l56 sdw:0:0:01fa:3556:01:0: supply VDD_IO not found, using dummy regulator
165 [ 7.605313] cs35l56 sdw:0:0:01fa:3556:01:0: supply VDD_A not found, using dummy regulator
166 [ 7.939279] cs35l56 sdw:0:0:01fa:3556:01:0: Cirrus Logic CS35L56 Rev B0 OTP3 fw:3.4.4 (patched=0)
167 [ 7.947844] cs35l56 sdw:0:0:01fa:3556:01:0: Slave 4 state check1: UNATTACHED, status was 1
168 [ 8.740280] cs35l56 sdw:0:0:01fa:3556:01:0: supply VDD_B not found, using dummy regulator
169 [ 8.740552] cs35l56 sdw:0:0:01fa:3556:01:0: supply VDD_AMP not found, using dummy regulator
170 …[ 9.242164] cs35l56 sdw:0:0:01fa:3556:01:0: DSP1: cirrus/cs35l56-b0-dsp1-misc-xxxxxxxx.wmfw: forma…
[all …]
H A Dindex.rst9 cs35l56
/linux/include/sound/
H A Dcs35l56.h380 static inline int cs35l56_init_config_for_spi(struct cs35l56_base *cs35l56, in cs35l56_init_config_for_spi() argument
383 cs35l56->spi_payload_buf = devm_kzalloc(&spi->dev, in cs35l56_init_config_for_spi()
384 sizeof(*cs35l56->spi_payload_buf), in cs35l56_init_config_for_spi()
386 if (!cs35l56->spi_payload_buf) in cs35l56_init_config_for_spi()
392 static inline bool cs35l56_is_spi(struct cs35l56_base *cs35l56) in cs35l56_is_spi() argument
394 return IS_ENABLED(CONFIG_SPI_MASTER) && !!cs35l56->spi_payload_buf; in cs35l56_is_spi()