diff --git a/media-libs/alsa-ucm-pinephone/Manifest b/media-libs/alsa-ucm-pinephone/Manifest new file mode 100644 index 0000000..5cb1c97 --- /dev/null +++ b/media-libs/alsa-ucm-pinephone/Manifest @@ -0,0 +1 @@ +DIST alsa-ucm-pinephone-20210507.tar.gz 2416 BLAKE2B c2a24bd576a554ea4665afe5f1933d4242358adccd308145e37f64485cb1f099246961d861e1a82de13b57da0736336c46950d183750a6aab83b1786923dff9b SHA512 14264fd58c53d10a7a8fd1fb177d2fe61d31e1feef72346a00daaf7a66adbdf54f0e90c89301a510d5ba0f60200817b4e85a3473db84fd842e3a3d266fa0aa17 diff --git a/media-libs/alsa-ucm-pinephone/alsa-ucm-pinephone-20210507.ebuild b/media-libs/alsa-ucm-pinephone/alsa-ucm-pinephone-20210507.ebuild new file mode 100644 index 0000000..745cd7d --- /dev/null +++ b/media-libs/alsa-ucm-pinephone/alsa-ucm-pinephone-20210507.ebuild @@ -0,0 +1,23 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +COMMIT="36930ed14d2b8f1f45bb72aa10e5a6ed9a7fc240" + +DESCRIPTION="ALSA ucm configuration files for PinePhone" +HOMEPAGE="https://gitlab.com/pine64-org/pine64-alsa-ucm" +SRC_URI="https://gitlab.com/pine64-org/pine64-alsa-ucm/-/archive/${COMMIT}.tar.gz -> ${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~arm64" + +RDEPEND="media-libs/alsa-ucm-conf" + +S="${WORKDIR}/pine64-alsa-ucm-${COMMIT}/ucm2/PinePhone" + +src_install() { + insinto /usr/share/alsa/ucm2/PinePhone + doins -r "${FILESDIR}"/*.conf +} diff --git a/media-libs/alsa-ucm-pinephone/files/HiFi.conf b/media-libs/alsa-ucm-pinephone/files/HiFi.conf new file mode 100644 index 0000000..5996e4a --- /dev/null +++ b/media-libs/alsa-ucm-pinephone/files/HiFi.conf @@ -0,0 +1,146 @@ +SectionVerb { + EnableSequence [ + cset "name='Headphone Playback Switch' off" + cset "name='Headphone Source Playback Route' DAC" + cset "name='Line In Playback Switch' off" + cset "name='Line Out Playback Switch' off" + cset "name='Line Out Source Playback Route' Mono Differential" + cset "name='Mic1 Playback Switch' off" + cset "name='Mic2 Playback Switch' off" + cset "name='AIF1 DA0 Playback Volume' 160" + cset "name='AIF3 ADC Source Capture Route' None" + cset "name='AIF2 DAC Source Playback Route' None" + cset "name='DAC Playback Switch' on" + cset "name='DAC Playback Volume' 160" + cset "name='ADC Digital DAC Playback Switch' off" + cset "name='AIF1 Slot 0 Digital DAC Playback Switch' on" + cset "name='AIF2 Digital DAC Playback Switch' off" + cset "name='DAC Reversed Playback Switch' off" + cset "name='Earpiece Playback Switch' off" + cset "name='Earpiece Source Playback Route' DACL" + + cset "name='Line In Capture Switch' off" + cset "name='Mic1 Capture Switch' off" + cset "name='Mic1 Boost Volume' 7" + cset "name='Mic2 Capture Switch' off" + cset "name='Mic2 Boost Volume' 7" + cset "name='Mixer Capture Switch' off" + cset "name='Mixer Reversed Capture Switch' off" + cset "name='ADC Capture Volume' 160" + cset "name='ADC Gain Capture Volume' 7" + cset "name='AIF1 AD0 Capture Volume' 160" + cset "name='AIF1 Data Digital ADC Capture Switch' on" + cset "name='AIF2 ADC Mixer ADC Capture Switch' off" + cset "name='AIF2 ADC Mixer AIF1 DA0 Capture Switch' off" + cset "name='AIF2 ADC Mixer AIF2 DAC Rev Capture Switch' off" + cset "name='AIF2 ADC Mixer AIF1 DA0 Capture Switch' off" + cset "name='AIF2 ADC Mixer AIF1 DA0 Capture Switch' off" + ] + + DisableSequence [ + ] + + Value { + } +} + +SectionDevice."Speaker" { + Comment "Internal speaker" + EnableSequence [ + cset "name='AIF1 DA0 Stereo Playback Route' Mix Mono" + cset "name='Line Out Playback Switch' on" + cset "name='Line Out Playback Volume' 100%" + ] + + DisableSequence [ + cset "name='Line Out Playback Switch' off" + ] + + Value { + PlaybackVolume "Line Out Playback Volume" + PlaybackSwitch "Line Out Playback Switch" + PlaybackChannels 2 + PlaybackPriority 300 + PlaybackPCM "hw:${CardId},0" + } +} +SectionDevice."Earpiece" { + Comment "Internal Earpiece" + EnableSequence [ + cset "name='AIF1 DA0 Stereo Playback Route' Mix Mono" + cset "name='Earpiece Playback Switch' on" + cset "name='Earpiece Playback Volume' 100%" + ] + + DisableSequence [ + cset "name='Earpiece Playback Switch' off" + ] + + Value { + PlaybackVolume "Earpiece Playback Volume" + PlaybackSwitch "Earpiece Playback Switch" + PlaybackChannels 2 + PlaybackPriority 200 + PlaybackPCM "hw:${CardId},0" + } +} +SectionDevice."Mic" { + Comment "Internal Microphone" + ConflictingDevice [ + "Headset" + ] + EnableSequence [ + cset "name='Mic1 Capture Switch' on" + ] + DisableSequence [ + cset "name='Mic1 Capture Switch' off" + ] + Value { + CapturePriority 100 + CapturePCM "hw:${CardId},0" + CaptureChannels 2 + CaptureVolume "ADC Capture Volume" + CaptureSwitch "Mic1 Capture Switch" + } +} +SectionDevice."Headset" { + Comment "Headset Microphone" + ConflictingDevice [ + "Mic" + ] + EnableSequence [ + cset "name='Mic2 Capture Switch' on" + ] + DisableSequence [ + cset "name='Mic2 Capture Switch' off" + ] + Value { + CapturePriority 500 + CapturePCM "hw:${CardId},0" + CaptureChannels 2 + CaptureVolume "ADC Capture Volume" + CaptureSwitch "Mic2 Capture Switch" + JackControl "Headset Microphone Jack" + } +} +SectionDevice."Headphones" { + Comment "Headphones" + EnableSequence [ + cset "name='AIF1 DA0 Stereo Playback Route' Stereo" + cset "name='Headphone Playback Switch' on" + cset "name='Headphone Playback Volume' 70%" + ] + + DisableSequence [ + cset "name='Headphone Playback Switch' off" + ] + + Value { + PlaybackVolume "Headphone Playback Volume" + PlaybackSwitch "Headphone Playback Switch" + PlaybackChannels 2 + PlaybackPriority 500 + PlaybackPCM "hw:${CardId},0" + JackControl "Headphone Jack" + } +} diff --git a/media-libs/alsa-ucm-pinephone/files/PinePhone.conf b/media-libs/alsa-ucm-pinephone/files/PinePhone.conf new file mode 100644 index 0000000..9a8ea12 --- /dev/null +++ b/media-libs/alsa-ucm-pinephone/files/PinePhone.conf @@ -0,0 +1,11 @@ +Syntax 2 + +SectionUseCase."HiFi" { + File "HiFi.conf" + Comment "Play HiFi quality music" +} + +SectionUseCase."Voice Call" { + File "VoiceCall.conf" + Comment "Make a phone call" +} diff --git a/media-libs/alsa-ucm-pinephone/files/VoiceCall.conf b/media-libs/alsa-ucm-pinephone/files/VoiceCall.conf new file mode 100644 index 0000000..1630559 --- /dev/null +++ b/media-libs/alsa-ucm-pinephone/files/VoiceCall.conf @@ -0,0 +1,151 @@ +SectionVerb { + EnableSequence [ + cset "name='Headphone Playback Switch' off" + cset "name='Headphone Source Playback Route' DAC" + cset "name='Line In Playback Switch' off" + cset "name='Line Out Playback Switch' off" + cset "name='Line Out Source Playback Route' Mono Differential" + cset "name='Mic1 Playback Switch' off" + cset "name='Mic2 Playback Switch' off" + cset "name='AIF1 DA0 Playback Volume' 160" + cset "name='AIF2 DAC Playback Volume' 160" + cset "name='AIF3 ADC Source Capture Route' None" + cset "name='AIF2 DAC Source Playback Route' None" + cset "name='DAC Playback Switch' on" + cset "name='DAC Playback Volume' 160" + cset "name='ADC Digital DAC Playback Switch' off" + cset "name='AIF1 Slot 0 Digital DAC Playback Switch' on" + cset "name='AIF2 Digital DAC Playback Switch' on" + cset "name='DAC Reversed Playback Switch' off" + cset "name='Earpiece Playback Switch' off" + cset "name='Earpiece Source Playback Route' DACL" + + cset "name='Line In Capture Switch' off" + cset "name='Mic1 Capture Switch' off" + cset "name='Mic1 Boost Volume' 0" + cset "name='Mic1 Playback Volume' 7" + cset "name='Mic2 Capture Switch' off" + cset "name='Mic2 Boost Volume' 0" + cset "name='Mic2 Playback Volume' 7" + cset "name='Mixer Capture Switch' off" + cset "name='Mixer Reversed Capture Switch' off" + cset "name='ADC Capture Volume' 160" + cset "name='ADC Gain Capture Volume' 7" + cset "name='AIF1 AD0 Capture Volume' 160" + cset "name='AIF1 Data Digital ADC Capture Switch' on" + cset "name='AIF2 ADC Capture Volume' 160" + cset "name='AIF2 ADC Mixer ADC Capture Switch' on" + cset "name='AIF2 ADC Mixer AIF1 DA0 Capture Switch' off" + cset "name='AIF2 ADC Mixer AIF2 DAC Rev Capture Switch' off" + cset "name='AIF2 ADC Mixer AIF1 DA0 Capture Switch' off" + cset "name='AIF2 ADC Mixer AIF1 DA0 Capture Switch' off" + ] + + DisableSequence [ + ] + + Value { + PlaybackRate 8000 + } +} + +SectionDevice."Speaker" { + Comment "Internal speaker" + EnableSequence [ + cset "name='AIF1 DA0 Stereo Playback Route' Mix Mono" + cset "name='Line Out Playback Switch' on" + cset "name='Line Out Playback Volume' 100%" + ] + + DisableSequence [ + cset "name='Line Out Playback Switch' off" + ] + + Value { + PlaybackVolume "Line Out Playback Volume" + PlaybackSwitch "Line Out Playback Switch" + PlaybackChannels 2 + PlaybackPriority 300 + PlaybackPCM "hw:${CardId},0" + } +} +SectionDevice."Earpiece" { + Comment "Internal Earpiece" + EnableSequence [ + cset "name='AIF1 DA0 Stereo Playback Route' Mix Mono" + cset "name='Earpiece Playback Switch' on" + cset "name='Earpiece Playback Volume' 100%" + ] + + DisableSequence [ + cset "name='Earpiece Playback Switch' off" + ] + + Value { + PlaybackVolume "Earpiece Playback Volume" + PlaybackSwitch "Earpiece Playback Switch" + PlaybackChannels 2 + PlaybackPriority 500 + PlaybackPCM "hw:${CardId},0" + } +} +SectionDevice."Mic" { + Comment "Internal Microphone" + ConflictingDevice [ + "Headset" + ] + EnableSequence [ + cset "name='Mic1 Capture Switch' on" + ] + DisableSequence [ + cset "name='Mic1 Capture Switch' off" + ] + Value { + CapturePriority 200 + CapturePCM "hw:${CardId},0" + CaptureVolume "ADC Capture Volume" + CaptureSwitch "Mic1 Capture Switch" + CaptureChannels 2 + } +} +SectionDevice."Headset" { + Comment "Headset Microphone" + ConflictingDevice [ + "Mic" + ] + EnableSequence [ + cset "name='Mic2 Capture Switch' on" + ] + DisableSequence [ + cset "name='Mic2 Capture Switch' off" + ] + Value { + CapturePriority 500 + CapturePCM "hw:${CardId},0" + CaptureChannels 2 + CaptureVolume "ADC Capture Volume" + CaptureSwitch "Mic2 Capture Switch" + JackControl "Headset Microphone Jack" + } +} +SectionDevice."Headphones" { + Comment "Headphones" + EnableSequence [ + cset "name='AIF1 DA0 Stereo Playback Route' Stereo" + cset "name='Headphone Playback Switch' on" + cset "name='Headphone Playback Volume' 100%" + ] + + DisableSequence [ + cset "name='Headphone Playback Switch' off" + ] + + Value { + PlaybackVolume "Headphone Playback Volume" + PlaybackSwitch "Headphone Playback Switch" + PlaybackChannels 2 + PlaybackPriority 500 + PlaybackPCM "hw:${CardId},0" + JackControl "Headphone Jack" + } +} diff --git a/media-libs/alsa-ucm-pinephone/metadata.xml b/media-libs/alsa-ucm-pinephone/metadata.xml new file mode 100644 index 0000000..4fdf310 --- /dev/null +++ b/media-libs/alsa-ucm-pinephone/metadata.xml @@ -0,0 +1,8 @@ + + + + + gjdijkman@gjdwebserver.nl + Gerben Jan Dijkman + +