[Letux-kernel] [Internal RFC 00/16] Modernize sound support for OpenPandora
H. Nikolaus Schaller
hns at goldelico.com
Sat Sep 17 19:16:42 CEST 2022
any comments before I try to submit upstream?
One major piece is missing: updating bindings doc for the pandora sound driver [14/16].
Currently it is just a copy of a simple soundcard which is not what it is meant
Anyone volunteering to work on this?
BR and thanks,
> Am 07.09.2022 um 20:05 schrieb H. Nikolaus Schaller <hns at goldelico.com>:
> Hi all,
> I found some hours to work on this and here is the result.
> Mainly I have fixed most of the comments from checkpatch
> which meant splitting some patches into two and do some reformatting.
> And adding bindings documentation.
> Otherwise I have changed the opnd, prefix to openpandora,
> and renamed the amp-gpio.
> Please comment the individual patches (or provide an update)
> so that I can collect for a RFC publication on the kernel mailing list.
> BR and thanks,
>> Am 07.09.2022 um 20:01 schrieb H. Nikolaus Schaller <hns at goldelico.com>:
>> Internal RFC V1 2022-09-07 20:01:55:
>> Tony Lindgren wrote (https://marc.info/?l=alsa-devel&m=165632351319716&w=2):
>> Subject: Pandora audio using machine_is_omap3_pandora() check
>> Arnd noticed that pandora audio is using machine_is_omap3_pandora() check
>> that never succeeds for devicetree booting machines. Looks like this has
>> been broken at some point many years ago with the devicetree conversion.
>> Does anybody have an interest in fixing this driver?
>> So far, the kernel driver (sound/soc/ti/omp3pandora.c) is an
>> old style sound board file. So we rewrite it to be a platform
>> driver, add a pcm1773 codec driver, add some special handling
>> for the twl4030-regen output and adapt the pandora device tree
>> - tested on OpenPandora
>> - we know that some .yaml files are missing to describe the ti,pcm1773 codec
>> and the opnd,omap3pandora-sound
>> and perhaps twl-regulator.yaml should be there instead of fixing twl-regulator.txt
>> This work was done by multiple authors:
>> Grond <grond66 at riseup.net>
>> Stefan Leichter <sle85276 at gmx.de>
>> H. Nikolaus Schaller <hns at goldelico.com>
>> Grond (10):
>> arm: dts: omap3pandora: Don't use DMA channels for unused SPI masters
>> ASoC: pcm1773-codec: write a driver for the PCM1773 chip from TI
>> arm: dts: omap3pandora: Add device node for PCM1773 codec
>> ASoC: twl4030-codec: Allow setting APLL rate through the .set_sysclk()
>> dt-bindings: twl-regulator: Expose the TWL4030s REGEN signal as a
>> regulator: twl: Expose the TWL4030's REGEN signal as a regulator
>> arm: dts: twl4030: add twl4030-regen child
>> arm: dts: omap3pandora: Populate DT data for the TWL4030's REGEN
>> ASoC: omap3pandora: Rewrite sound card driver as a platform driver
>> arm: dts: omap3pandora: Create new DT node for the sound card
>> H. Nikolaus Schaller (3):
>> dt-bindings: vendor-prefixes: add OpenPandora GmbH
>> ASoC: dt-bindings: add TI PCM1773
>> ASoC: dt-bindings: add OpenPandora Sound Card [NEEDS TO BE WORKED OUT]
>> Stefan Leichter (3):
>> ASoC: omap: omap3pandora: Fix module load for multi SBC kernel
>> ASoC: omap: omap3pandora: Correct the cpu_dai and platform for DT boot
>> ARM: dts: omap3-pandora-common: Enable audio in/out (mcbsp4/2)
>> .../bindings/regulator/twl-regulator.txt | 12 +
>> .../sound/openpandora,omap3pandora-sound.yaml | 499 ++++++++++++++++++
>> .../devicetree/bindings/sound/pcm1773.yaml | 26 +
>> .../devicetree/bindings/vendor-prefixes.yaml | 2 +
>> arch/arm/boot/dts/omap3-pandora-common.dtsi | 41 ++
>> arch/arm/boot/dts/twl4030.dtsi | 14 +
>> drivers/regulator/twl-regulator.c | 52 ++
>> include/linux/mfd/twl.h | 3 +
>> include/linux/mfd/twl4030-audio.h | 3 +
>> sound/soc/codecs/Kconfig | 5 +
>> sound/soc/codecs/Makefile | 2 +
>> sound/soc/codecs/pcm1773.c | 177 +++++++
>> sound/soc/codecs/twl4030.c | 140 +++--
>> sound/soc/ti/omap3pandora.c | 438 +++++++++++----
>> 14 files changed, 1271 insertions(+), 143 deletions(-)
>> create mode 100644 Documentation/devicetree/bindings/sound/openpandora,omap3pandora-sound.yaml
>> create mode 100644 Documentation/devicetree/bindings/sound/pcm1773.yaml
>> create mode 100644 sound/soc/codecs/pcm1773.c
More information about the Letux-kernel