Home
last modified time | relevance | path

Searched refs:cs35l56 (Results 1 – 9 of 9) 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->base.regmap, CS35L56_ASP1_ENABLES1, in cs35l56_hda_play()
[all …]
H A DMakefile11 snd-hda-scodec-cs35l56-y := cs35l56_hda.o
12 snd-hda-scodec-cs35l56-i2c-y := cs35l56_hda_i2c.o
13 snd-hda-scodec-cs35l56-spi-y := cs35l56_hda_spi.o
26 obj-$(CONFIG_SND_HDA_SCODEC_CS35L56) += snd-hda-scodec-cs35l56.o
27 obj-$(CONFIG_SND_HDA_SCODEC_CS35L56_I2C) += snd-hda-scodec-cs35l56-i2c.o
28 obj-$(CONFIG_SND_HDA_SCODEC_CS35L56_SPI) += snd-hda-scodec-cs35l56-spi.o
H A Dcs35l56_hda.h19 #include <sound/cs35l56.h>
54 int cs35l56_hda_common_probe(struct cs35l56_hda *cs35l56, int hid, int id);
/linux/sound/soc/codecs/
H A Dcs35l56.c40 void cs35l56_mask_soundwire_interrupts(struct cs35l56_private *cs35l56) in cs35l56_mask_soundwire_interrupts() argument
49 sdw_write_no_pm(cs35l56->sdw_peripheral, CS35L56_SDW_GEN_INT_MASK_1, 0); in cs35l56_mask_soundwire_interrupts()
50 sdw_read_no_pm(cs35l56->sdw_peripheral, CS35L56_SDW_GEN_INT_STAT_1); in cs35l56_mask_soundwire_interrupts()
51 sdw_write_no_pm(cs35l56->sdw_peripheral, CS35L56_SDW_GEN_INT_STAT_1, 0xFF); in cs35l56_mask_soundwire_interrupts()
55 void cs35l56_unmask_soundwire_interrupts(struct cs35l56_private *cs35l56) in cs35l56_unmask_soundwire_interrupts() argument
57 if (!cs35l56->base.irq) in cs35l56_unmask_soundwire_interrupts()
60 sdw_write_no_pm(cs35l56->sdw_peripheral, CS35L56_SDW_GEN_INT_MASK_1, in cs35l56_unmask_soundwire_interrupts()
65 static void cs35l56_disable_sdw_interrupts(struct cs35l56_private *cs35l56) in cs35l56_disable_sdw_interrupts() argument
67 if (!cs35l56->sdw_peripheral) in cs35l56_disable_sdw_interrupts()
70 cs35l56_mask_soundwire_interrupts(cs35l56); in cs35l56_disable_sdw_interrupts()
[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>
66 void cs35l56_mask_soundwire_interrupts(struct cs35l56_private *cs35l56);
67 void cs35l56_unmask_soundwire_interrupts(struct cs35l56_private *cs35l56);
76 int cs35l56_common_probe(struct cs35l56_private *cs35l56, int irq);
77 int cs35l56_init(struct cs35l56_private *cs35l56);
78 void cs35l56_remove(struct cs35l56_private *cs35l56);
81 int cs35l56_set_fw_suffix(struct cs35l56_private *cs35l56);
83 int cs35l56_process_xu_properties(struct cs35l56_private *cs35l56);
84 int cs35l56_get_firmware_uid(struct cs35l56_private *cs35l56);
H A DKconfig947 tristate "KUnit test for Cirrus Logic cs35l56 driver" if !KUNIT_ALL_TESTS
952 This builds KUnit tests for the Cirrus Logic cs35l56
961 tristate "KUnit test for Cirrus Logic cs35l56-shared" if !KUNIT_ALL_TESTS
965 This builds KUnit tests for the Cirrus Logic cs35l56-shared
/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 …]