diff --git a/alarm/firmware-gru/HiFi.conf b/alarm/firmware-gru/HiFi.conf new file mode 100644 index 000000000..3f11cba8f --- /dev/null +++ b/alarm/firmware-gru/HiFi.conf @@ -0,0 +1,152 @@ +SectionVerb { + Value { + OutputDspName "speaker_eq" + FullySpecifiedUCM "1" + } + EnableSequence [ + cdev "hw:rk3399grusound" + + cset "name='Stereo1 DMIC Mux' DMIC1" + cset "name='Sto1 ADC MIXL DMIC Switch' on" + cset "name='Sto1 ADC MIXR DMIC Switch' on" + + cset "name='Mixer Out FilterL DACL Switch' on" + cset "name='Mixer Out FilterR DACR Switch' on" + cset "name='Playback Digital Switch' on" + cset "name='Headphone Switch' on" + + cset "name='Mixin Volume' 11" + cset "name='Mixin Switch' on" + cset "name='Mixer In Mic Switch' on" + cset "name='Out DAIL Mux' ADC" + cset "name='Out DAIR Mux' ADC" + cset "name='ADC1 Capture Volume' 51" + cset "name='Mic Volume' 6" + cset "name='Capture Digital Switch' on" + cset "name='Mic Switch' on" + + cset "name='Headphones Switch' off" + cset "name='Headset Mic Switch' off" + ] + DisableSequence [ + ] +} + +SectionDevice."Speaker".0 { + Value { + PlaybackPCM "hw:rk3399-gru-sound,0" + MixerName "Speakers" + } + EnableSequence [ + cdev "hw:rk3399grusound" + + cset "name='Speakers Switch' on" + ] + DisableSequence [ + cdev "hw:rk3399grusound" + + cset "name='Speakers Switch' off" + ] +} +SectionDevice."Internal Mic".0 { + Value { + CapturePCM "hw:rk3399-gru-sound,1" + MixerName "ADC1" + CaptureRate "48000" + } + EnableSequence [ + cdev "hw:rk3399grusound" + + cset "name='Int Mic Switch' on" + ] + DisableSequence [ + cdev "hw:rk3399grusound" + + cset "name='Int Mic Switch' off" + ] +} +SectionDevice."Headphone".0 { + Value { + PlaybackPCM "hw:rk3399-gru-sound,2" + MixerName "Headphone" + JackType "gpio" + JackName "rk3399-gru-sound Headset Jack" + JackSwitch "2" + OutputDspName "" + } + EnableSequence [ + cdev "hw:rk3399grusound" + + cset "name='Headphones Switch' on" + cset "name='DAC Soft Mute Switch' off" + cset "name='Headphone Switch' on" + ] + DisableSequence [ + cdev "hw:rk3399grusound" + + cset "name='Headphone Switch' off" + cset "name='DAC Soft Mute Switch' on" + cset "name='Headphones Switch' off" + ] +} +SectionDevice."Line Out".0 { + Value { + PlaybackPCM "hw:rk3399-gru-sound,2" + MixerName "Headphone" + JackType "gpio" + JackName "rk3399-gru-sound Headset Jack" + JackSwitch "6" + OutputDspName "" + } + EnableSequence [ + cdev "hw:rk3399grusound" + + cset "name='Headphones Switch' on" + cset "name='DAC Soft Mute Switch' off" + cset "name='Headphone Switch' on" + ] + DisableSequence [ + cdev "hw:rk3399grusound" + + cset "name='Headphone Switch' off" + cset "name='DAC Soft Mute Switch' on" + cset "name='Headphones Switch' off" + ] +} +SectionDevice."Mic".0 { + Value { + CapturePCM "hw:rk3399-gru-sound,2" + MixerName "Mic" + JackType "gpio" + JackName "rk3399-gru-sound Headset Jack" + CaptureRate "48000" + } + EnableSequence [ + cdev "hw:rk3399grusound" + + cset "name='Headset Mic Switch' on" + ] + DisableSequence [ + cdev "hw:rk3399grusound" + + cset "name='Headset Mic Switch' off" + ] +} +SectionDevice."HDMI".0 { + Value { + PlaybackPCM "hw:rk3399-gru-sound,3" + JackName "rk3399-gru-sound DP Jack" + JackType "gpio" + OutputDspName "" + EDIDFile "/sys/class/drm/card1-DP-1/edid" + } +} +SectionDevice."Wake on Voice".0 { + Value { + CapturePCM "hw:rk3399-gru-sound,4" + } + EnableSequence [ + ] + DisableSequence [ + ] +} diff --git a/alarm/firmware-gru/PKGBUILD b/alarm/firmware-gru/PKGBUILD new file mode 100644 index 000000000..ad78dbfda --- /dev/null +++ b/alarm/firmware-gru/PKGBUILD @@ -0,0 +1,20 @@ +# Maintainer: Kevin Mihelich + +buildarch=8 + +pkgname=firmware-gru +pkgver=1.0 +pkgrel=1 +pkgdesc="Additional firmware for Gru chromebooks" +arch=('aarch64') +url="https://archlinuxarm.org" +license=('custom') +source=('rk3399-gru-sound.conf' + 'HiFi.conf') +md5sums=('fa7ad41bc99ed3fe90e5725f70360428' + 'e76ab605dadfca14689de1d40233dae5') + +package() { + install -m 0755 -d "${pkgdir}/opt/alsa/ucm/rk3399-gru-sound" + install -m 0644 rk3399-gru-sound.conf HiFi.conf "${pkgdir}/opt/alsa/ucm/rk3399-gru-sound" +} diff --git a/alarm/firmware-gru/rk3399-gru-sound.conf b/alarm/firmware-gru/rk3399-gru-sound.conf new file mode 100644 index 000000000..f91d50333 --- /dev/null +++ b/alarm/firmware-gru/rk3399-gru-sound.conf @@ -0,0 +1,6 @@ +Comment "Kevin internal card" + +SectionUseCase."HiFi" { + File "HiFi.conf" + Comment "Default" +}