APPLIED Re: [SRU][OEM-5.10][PATCH 00/21] alsa/sdw: add support for tgl_3_in_1_sdca soundwire machine

Hui Wang hui.wang at canonical.com
Wed Dec 9 01:55:25 UTC 2020


On 12/8/20 10:03 PM, Timo Aaltonen wrote:
> On 4.12.2020 4.41, Hui Wang wrote:
>> BugLink: https://bugs.launchpad.net/bugs/1906738
>>
>> [Impact]
>> We need to enable a Dell soundwire machine in the OEM project, but
>> the soundwire design is different from previous generation, it follows
>> soundwire sdca spec. both ubuntu kernel and upstream kernel don't have
>> driver for soundwire sdca yet, so the audio device on this machine
>> can't be detected.
>>
>> [Fix]
>> backport 20 patches from the kernel git tree of intel sof/project
>>
>> [Test]
>> After booting up, we could see the sound card by running
>> pacmd list-cards, and there is speaker, headphone, dmic and headset-mic
>> on this sound card, test playback and record, all worked well.
>>
>> [Where problems could occur]
>> The patches change some soundwire bus driver and alsa intel asoc
>> machine driver, it could make the sound stop working on old
>> soundwire machines. But this possibility is very low since we
>> tested these patches on Dell soundwire machines.
>>
>>
>>
>> Bard Liao (2):
>>    UBUNTU: SAUCE: soundwire/regmap: use _no_pm functions in
>>      regmap_read/write
>>    UBUNTU: SAUCE: regmap: sdw: use no_pm routines for SoundWire 1.2 MBQ
>>
>> Hui Wang (1):
>>    UBUNTU: [config] Enable sdw_sdca codec and machine driver
>>
>> Jack Yu (1):
>>    UBUNTU: SAUCE: ASoC/SoundWire: rt715-sdca: First version of rt715 sdw
>>      sdca codec driver
>>
>> Pierre-Louis Bossart (15):
>>    UBUNTU: SAUCE: soundwire: SDCA: detect sdca_cascade interrupt
>>    UBUNTU: SAUCE: regmap: sdw: add required header files
>>    UBUNTU: SAUCE: soundwire: SDCA: add helper macro to access controls
>>    UBUNTU: SAUCE: regmap/SoundWire: sdw: add support for SoundWire 1.2
>>      MBQ
>>    UBUNTU: SAUCE: soundwire: bus: add comments to explain interrupt loop
>>      filter
>>    UBUNTU: SAUCE: soundwire: bus: reset slave_notify status at each loop
>>    UBUNTU: SAUCE: soundwire: registers: add definitions for clearable
>>      interrupt fields
>>    UBUNTU: SAUCE: soundwire: bus: only clear valid DP0 interrupts
>>    UBUNTU: SAUCE: soundwire: bus: only clear valid DPN interrupts
>>    UBUNTU: SAUCE: soundwire: master: use pm_runtime_set_active() on add
>>    UBUNTU: SAUCE: soundwire: bus: use sdw_update_no_pm when initializing
>>      a device
>>    UBUNTU: SAUCE: soundwire: bus: use sdw_write_no_pm when setting the
>>      bus scale registers
>>    UBUNTU: SAUCE: soundwire: bus: use no_pm IO routines for all 
>> interrupt
>>      handling
>>    UBUNTU: SAUCE: soundwire: bus: fix confusion on device used by
>>      pm_runtime
>>    UBUNTU: SAUCE: soundwire: bus: clarify dev_err/dbg device references
>>
>> Shuming Fan (2):
>>    UBUNTU: SAUCE: ASoC/SoundWire: rt1316: Add RT1316 SDCA 
>> vendor-specific
>>      driver
>>    UBUNTU: SAUCE: ASoC/SoundWire: rt711-sdca: Add RT711 SDCA
>>      vendor-specific driver
>>
>>   debian.oem/config/annotations           |   11 +-
>>   debian.oem/config/config.common.ubuntu  |    8 +-
>>   drivers/base/regmap/Kconfig             |    6 +-
>>   drivers/base/regmap/Makefile            |    1 +
>>   drivers/base/regmap/regmap-sdw-mbq.c    |  101 ++
>>   drivers/base/regmap/regmap-sdw.c        |    6 +-
>>   drivers/soundwire/bus.c                 |  182 ++-
>>   drivers/soundwire/master.c              |   14 +
>>   include/linux/regmap.h                  |   35 +
>>   include/linux/soundwire/sdw.h           |    6 +
>>   include/linux/soundwire/sdw_registers.h |   43 +
>>   sound/soc/codecs/Kconfig                |   20 +
>>   sound/soc/codecs/Makefile               |    6 +
>>   sound/soc/codecs/rt1316-sdw.c           |  756 ++++++++++++
>>   sound/soc/codecs/rt1316-sdw.h           |  115 ++
>>   sound/soc/codecs/rt711-sdca-sdw.c       |  424 +++++++
>>   sound/soc/codecs/rt711-sdca-sdw.h       |  101 ++
>>   sound/soc/codecs/rt711-sdca.c           | 1482 +++++++++++++++++++++++
>>   sound/soc/codecs/rt711-sdca.h           |  246 ++++
>>   sound/soc/codecs/rt715-sdca-sdw.c       |  278 +++++ > 
>> sound/soc/codecs/rt715-sdca-sdw.h       |  170 +++
>>   sound/soc/codecs/rt715-sdca.c           |  936 ++++++++++++++
>>   sound/soc/codecs/rt715-sdca.h           |  124 ++
>>   sound/soc/codecs/rt715.h                |    1 -
>>   24 files changed, 5002 insertions(+), 70 deletions(-)
>>   create mode 100644 drivers/base/regmap/regmap-sdw-mbq.c
>>   create mode 100644 sound/soc/codecs/rt1316-sdw.c
>>   create mode 100644 sound/soc/codecs/rt1316-sdw.h
>>   create mode 100644 sound/soc/codecs/rt711-sdca-sdw.c
>>   create mode 100644 sound/soc/codecs/rt711-sdca-sdw.h
>>   create mode 100644 sound/soc/codecs/rt711-sdca.c
>>   create mode 100644 sound/soc/codecs/rt711-sdca.h
>>   create mode 100644 sound/soc/codecs/rt715-sdca-sdw.c
>>   create mode 100644 sound/soc/codecs/rt715-sdca-sdw.h
>>   create mode 100644 sound/soc/codecs/rt715-sdca.c
>>   create mode 100644 sound/soc/codecs/rt715-sdca.h
>>
>
> Applied to oem-5.10, thanks.
>
> Any chance these will go in 5.11? Shouldn't we get them in 
> hirsute/unstable too?

Intel said these patches will be in 5.11, and these patches could be 
changed before they are officially merged to upstream kernel. My plan is 
after the patches are merged to upstream, I will check hirsute/unstable 
kernel, if some patches are not in it, I will backport the upstreamed 
patch to hirsute/unstable.

Thanks.

>
>



More information about the kernel-team mailing list