ucm2 conversion for Samsung Chromebook 2 XE503C32

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi

Historically the only way I've found to get sound working on this device, running Linux (Arch) instead of Chromeos, was to copy the ucm files from the Chromeos partition and replace the files installed by alsa-lib. Otherwise no sound (apart from clicking noises) no matter what was tried in alsmixer.
Namely:
/usr/share/alsa/ucm/DAISY-I2S/DAISY-I2S.conf
/usr/share/alsa/ucm/DAISY-I2S/HiFi.conf

It was not perfect, the headphone socket did not function, but at least there was sound.

I had not used the device for a while and when I updated it yesterday sound stopped working.

Investigation has shown that alsa has moved to ucm2 files with a slightly different syntax.

I have downgraded alsa-lib & alsa-utils to 1.1.9 and have sound back
But ideally I'd like to convert the Chromeos ucm files to ucm2 files.
My attempts at this have so far failed with syntax errors and I'm not finding a lot of documentation to help me.

I was hoping someone on here might have a better idea how to do it ?

Thanks
Lee

The relevant chromeos ucm files

/usr/share/alsa/ucm/DAISY-I2S/DAISY-I2S.conf
-----------------------------------------------------
Comment "Daisy internal card"

SectionUseCase."HiFi" {
	File "HiFi.conf"
	Comment "Default"
}
-----------------------------------------------------

/usr/share/alsa/ucm/DAISY-I2S/HiFi.conf
-----------------------------------------------------
SectionVerb {
	Value {
		OutputDspName "speaker_eq"
		MicPositions "-0.025 0 0 0.025 0 0"
	}
	EnableSequence [
		cdev "hw:DAISYI2S"
		cset "name='Left Speaker Mixer Left DAC Switch' on"
		cset "name='Right Speaker Mixer Right DAC Switch' on"
		cset "name='Headphone Left Switch' on"
		cset "name='Headphone Right Switch' on"
		cset "name='Digital EQ 3 Band Switch' off"
		cset "name='Digital EQ 5 Band Switch' off"
		cset "name='Digital EQ 7 Band Switch' off"
		cset "name='Biquad Switch' off"
		cset "name='Filter Mode' Music"
		cset "name='ADC Oversampling Rate' 0"

		cset "name='MIC2 Mux' IN34"
		cset "name='DMIC Mux' DMIC"
		cset "name='Right ADC Mixer MIC2 Switch' off"
		cset "name='Left ADC Mixer MIC2 Switch' off"

		cset "name='ADCR Boost Volume' 4"
		cset "name='ADCL Boost Volume' 4"
		cset "name='ADCR Volume' 15"
		cset "name='ADCL Volume' 15"

		cset "name='HP Left Out Switch' off"
		cset "name='HP Right Out Switch' off"

		cset "name='Speaker Left Mixer Volume' 2"
		cset "name='Speaker Right Mixer Volume' 2"
		cset "name='Record Path DC Blocking' on"
		cset "name='Playback Path DC Blocking' on"

	]
	DisableSequence [
	]
}

SectionDevice."HDMI".0 {
	Value {
		JackName "DAISY-I2S HDMI Jack"
		OutputDspName ""
		EDIDFile "/sys/devices/platform/exynos-drm/drm/card1/card1-HDMI-A-1/edid"
	}
	EnableSequence [
		cdev "hw:DAISYI2S"
		cset "name='Left Speaker Mixer Left DAC Switch' off"
		cset "name='Right Speaker Mixer Right DAC Switch' off"
	]
	DisableSequence [
		cdev "hw:DAISYI2S"
		cset "name='Left Speaker Mixer Left DAC Switch' on"
		cset "name='Right Speaker Mixer Right DAC Switch' on"
	]
}

SectionDevice."Headphone".0 {
	Value {
		JackName "DAISY-I2S Headphone Jack"
		OutputDspName ""
	}

	EnableSequence [
		cdev "hw:DAISYI2S"
		cset "name='Left Speaker Mixer Left DAC Switch' off"
		cset "name='Right Speaker Mixer Right DAC Switch' off"
		cset "name='HP Left Out Switch' on"
		cset "name='HP Right Out Switch' on"
	]
	DisableSequence [
		cdev "hw:DAISYI2S"
		cset "name='HP Left Out Switch' off"
		cset "name='HP Right Out Switch' off"
		cset "name='Left Speaker Mixer Left DAC Switch' on"
		cset "name='Right Speaker Mixer Right DAC Switch' on"
	]
}

SectionDevice."Mic".0 {
	Value {
		JackName "DAISY-I2S Mic Jack"
		CaptureControl "MIC2"
	}

	EnableSequence [
		cdev "hw:DAISYI2S"

		cset "name='Right ADC Mixer MIC2 Switch' on"
		cset "name='Left ADC Mixer MIC2 Switch' on"
		cset "name='DMIC Mux' ADC"
		cset "name='MIC2 Volume' 20"
		cset "name='Record Path DC Blocking' on"
	]

	DisableSequence [
		cdev "hw:DAISYI2S"

		cset "name='DMIC Mux' DMIC"
		cset "name='Right ADC Mixer MIC2 Switch' off"
		cset "name='Left ADC Mixer MIC2 Switch' off"
		cset "name='MIC2 Volume' 0"
		cset "name='Record Path DC Blocking' off"
	]
}
-----------------------------------------------------


_______________________________________________
Alsa-user mailing list
Alsa-user@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/alsa-user



[Index of Archives]     [ALSA Devel]     [Linux Audio Users]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]

  Powered by Linux