Add UCM for PinePhone

GitHub pull_request - edited github at alsa-project.org
Sat Mar 26 04:10:18 CET 2022


alsa-project/alsa-ucm-conf pull request #134 was edited from tomfitzhenry:

Fixes https://github.com/alsa-project/alsa-ucm-conf/issues/124.

This PR adds support for the https://wiki.pine64.org/index.php/PinePhone 

This PR contains:
* This UCM config copied from https://gitlab.com/pine64-org/pine64-alsa-ucm/, which was developed by many developers ( https://gitlab.com/pine64-org/pine64-alsa-ucm/-/merge_requests/1 ) and is BSD-3-Clause licensed.
* Fix paths to be relative to alsa-ucm-conf root.
* Some refactoring of the UCM config, incl. removing duplicate directives, and moving volume directives to BootSequence.
* Updating the routing/playback/boost volumes, in response to comments on this PR.

I have tested:

* HiFi
    * Record audio via the headset.
    * Record audio via the internal mic.
    * Play audio on the headphones.
    * Play audio on the speaker.
    * Play audio on the internal speaker.
* Voice Call
    * Speak on the headset.
    * Speak on the internal mic.
    * Listen on the headphones.
    * Listen on the speaker. This induces an echo, and given the audio routing is entirely on chip, and the chip doesn't advertise echo cancellation, I don't see how this is avoidable.
    * Listen on the internal speaker.

See also:
* `alsa-info`: https://alsa-project.org/db/?f=5e331f5ef10bd167b3bd7640bfcf0e879100f80d
* `pa-info`: [pa-info.txt](https://github.com/alsa-project/alsa-ucm-conf/files/8015083/pa-info.txt)
* https://gitlab.com/pine64-org/pine64-alsa-ucm/-/issues/3
* Schematics/code
    * The device-tree configuration has had a unique audio card name since 5.14: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi?h=v5.14#n436
    * http://files.pine64.org/doc/PinePhone/PinePhone%20v1.2%20Released%20Schematic.pdf
    * https://xnux.eu/devices/feature/audio-pp.html
    * https://github.com/torvalds/linux/blob/master/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi
    * https://github.com/torvalds/linux/blob/master/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
    * https://github.com/torvalds/linux/blob/master/sound/soc/sunxi/sun50i-codec-analog.c
    * https://files.pine64.org/doc/datasheet/pine64/Allwinner_A64_User_Manual_V1.0.pdf
    * https://static.chipdip.ru/lib/126/DOC001126567.pdf

Request URL   : https://github.com/alsa-project/alsa-ucm-conf/pull/134
Patch URL     : https://github.com/alsa-project/alsa-ucm-conf/pull/134.patch
Repository URL: https://github.com/alsa-project/alsa-ucm-conf


More information about the Alsa-devel mailing list