skl: Move Caroline followers (Cave and Chell) to kernel 4.19

This patch bump the kernel version for Chell and Cave by modifin the base
profile. For now only Cave and Chell was chosen for kernel version bump.
Also it is a chery-pick squash from commits:
(cherry picked from 2b55beb386251802b9d22d80fd8b6e28c0c5fe4f)
(cherry picked from 77f5271e72220f0564e5b500ba86e53e59c30ce5)
Which fix missing audio (HDMI and Headphones) for 4.19

4.19 kernel changes names of GPIO pins corresponding to HDMI and Headphones.
This is reflected by the change of JackDev property in the UCM file, what
allows CRAS to recognize devices correctly.

Since JackDev property is changed, it is also necessary to introduce "fully
specified UCM" what requires defining additional properties in order to fully
describe devices to CRAS.

BUG=b:149376707, b:146147564, chromium:1031327, b:144448061
TEST=1. Deploy on DUT,
2. connect DP->HDMI converter to left USB-C
3. validate the audio works over HDMI with
  "aplay -D hw:0,4 /usr/local/telemetry/src/media/test/data/bear_pcm.wav"
4. validate that cras switched output to HDMI (notification bar)
5. validate that sound from any app (Youtube for e.g) is played through HDMI
6. Put Headphones into headpone jack and check audio works

Change-Id: I5a82f471a4d03f823df455b79337fbfdf3eafc8f
Signed-off-by: Radoslaw Biernacki <biernacki@google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/overlays/board-overlays/+/2108725
Reviewed-by: Ross Zwisler <zwisler@google.com>
Commit-Queue: Ross Zwisler <zwisler@google.com>
Tested-by: Ross Zwisler <zwisler@google.com>
diff --git a/overlay-cave/chromeos-base/chromeos-bsp-cave/chromeos-bsp-cave-0.0.1-r26.ebuild b/overlay-cave/chromeos-base/chromeos-bsp-cave/chromeos-bsp-cave-0.0.1-r27.ebuild
similarity index 100%
rename from overlay-cave/chromeos-base/chromeos-bsp-cave/chromeos-bsp-cave-0.0.1-r26.ebuild
rename to overlay-cave/chromeos-base/chromeos-bsp-cave/chromeos-bsp-cave-0.0.1-r27.ebuild
diff --git a/overlay-cave/chromeos-base/chromeos-bsp-cave/files/audio-config/ucm-config/sklnau8825max/HiFi.conf b/overlay-cave/chromeos-base/chromeos-bsp-cave/files/audio-config/ucm-config/sklnau8825max/HiFi.conf
index eadd80d..99f9dbe 100644
--- a/overlay-cave/chromeos-base/chromeos-bsp-cave/files/audio-config/ucm-config/sklnau8825max/HiFi.conf
+++ b/overlay-cave/chromeos-base/chromeos-bsp-cave/files/audio-config/ucm-config/sklnau8825max/HiFi.conf
@@ -1,5 +1,6 @@
 SectionVerb {
 	Value {
+		FullySpecifiedUCM "1"
 	}
 
 	EnableSequence [
@@ -11,9 +12,15 @@
 		cset "name='Headset Mic Switch' off"
 		cset "name='media0_out mo codec0_in mi Switch' off"
 		cset "name='media0_out mo dmic01_hifi_in mi Switch' on"
-		cset "name='Pin 5 Mux' 1"
-		cset "name='Pin 6 Mux' 2"
-		cset "name='Pin 7 Mux' 3"
+		cset "name='Pin5-Port0 Mux' cvt 1"
+		cset "name='Pin5-Port1 Mux' cvt 2"
+		cset "name='Pin5-Port2 Mux' cvt 3"
+		cset "name='Pin6-Port0 Mux' cvt 1"
+		cset "name='Pin6-Port1 Mux' cvt 2"
+		cset "name='Pin6-Port2 Mux' cvt 3"
+		cset "name='Pin7-Port0 Mux' cvt 1"
+		cset "name='Pin7-Port1 Mux' cvt 2"
+		cset "name='Pin7-Port2 Mux' cvt 3"
 		cset "name='Mic Volume' 255"
 	]
 
@@ -24,6 +31,7 @@
 SectionDevice."Speaker".0 {
 	Value {
 		DspName "speaker_eq"
+		PlaybackPCM "hw:sklnau8825adi,0"
 	}
 
 	EnableSequence [
@@ -36,6 +44,7 @@
 SectionDevice."Internal Mic".0 {
 	Value {
 		IntrinsicSensitivity "-2600"
+		CapturePCM "hw:sklnau8825adi,1"
 	}
 
 	EnableSequence [
@@ -48,6 +57,7 @@
 SectionDevice."Headphone".0 {
 	Value {
 		JackDev "sklnau8825max Headset Jack"
+		PlaybackPCM "hw:sklnau8825adi,0"
 	}
 
 	EnableSequence [
@@ -72,6 +82,7 @@
 		JackDev "sklnau8825max Headset Jack"
 		CaptureControl "Mic"
 		DspName "extmic_eq"
+		CapturePCM "hw:sklnau8825adi,1"
 	}
 
 	EnableSequence [
@@ -91,7 +102,8 @@
 
 SectionDevice."HDMI1".0 {
 	Value {
-		JackDev "HDMI/DP, pcm=4 Jack"
+		JackDev "sklnau8825adi HDMI/DP, pcm=4 Jack"
+		PlaybackPCM "hw:sklnau8825adi,4"
 	}
 
 	EnableSequence [
@@ -103,7 +115,8 @@
 
 SectionDevice."HDMI2".0 {
 	Value {
-		JackDev "HDMI/DP, pcm=5 Jack"
+		JackDev "sklnau8825adi HDMI/DP, pcm=5 Jack"
+		PlaybackPCM "hw:sklnau8825adi,5"
 	}
 
 	EnableSequence [
diff --git a/overlay-cave/profiles/base/make.defaults b/overlay-cave/profiles/base/make.defaults
index 498692e..9d4fcd8 100644
--- a/overlay-cave/profiles/base/make.defaults
+++ b/overlay-cave/profiles/base/make.defaults
@@ -34,3 +34,6 @@
 
 # Enable background blur.
 USE="${USE} background_blur"
+
+# Move the kernel to 4.19
+USE="${USE} -kernel-3_18 kernel-4_19"
diff --git a/overlay-chell/chromeos-base/chromeos-bsp-chell/chromeos-bsp-chell-0.0.1-r24.ebuild b/overlay-chell/chromeos-base/chromeos-bsp-chell/chromeos-bsp-chell-0.0.1-r25.ebuild
similarity index 100%
rename from overlay-chell/chromeos-base/chromeos-bsp-chell/chromeos-bsp-chell-0.0.1-r24.ebuild
rename to overlay-chell/chromeos-base/chromeos-bsp-chell/chromeos-bsp-chell-0.0.1-r25.ebuild
diff --git a/overlay-chell/chromeos-base/chromeos-bsp-chell/files/audio-config/ucm-config/sklnau8825adi/HiFi.conf b/overlay-chell/chromeos-base/chromeos-bsp-chell/files/audio-config/ucm-config/sklnau8825adi/HiFi.conf
index 6d4e9dc..83772fe 100644
--- a/overlay-chell/chromeos-base/chromeos-bsp-chell/files/audio-config/ucm-config/sklnau8825adi/HiFi.conf
+++ b/overlay-chell/chromeos-base/chromeos-bsp-chell/files/audio-config/ucm-config/sklnau8825adi/HiFi.conf
@@ -1,5 +1,6 @@
 SectionVerb {
 	Value {
+		FullySpecifiedUCM "1"
 	}
 
 	EnableSequence [
@@ -13,9 +14,15 @@
 		cset "name='codec0_iv_in Switch' 0"
 		cset "name='media0_out mo codec0_in mi Switch' off"
 		cset "name='media0_out mo dmic01_hifi_in mi Switch' on"
-		cset "name='Pin 5 Mux' cvt 2"
-		cset "name='Pin 6 Mux' cvt 3"
-		cset "name='Pin 7 Mux' cvt 4"
+		cset "name='Pin5-Port0 Mux' cvt 2"
+		cset "name='Pin5-Port1 Mux' cvt 2"
+		cset "name='Pin5-Port2 Mux' cvt 2"
+		cset "name='Pin6-Port0 Mux' cvt 3"
+		cset "name='Pin6-Port1 Mux' cvt 3"
+		cset "name='Pin6-Port2 Mux' cvt 3"
+		cset "name='Pin7-Port0 Mux' cvt 4"
+		cset "name='Pin7-Port1 Mux' cvt 4"
+		cset "name='Pin7-Port2 Mux' cvt 4"
 		cset "name='Mic Volume' 255"
 	]
 
@@ -26,6 +33,7 @@
 SectionDevice."Internal Mic".0 {
 	Value {
 		IntrinsicSensitivity "-2600"
+		CapturePCM "hw:sklnau8825adi,1"
 	}
 
 	EnableSequence [
@@ -39,6 +47,7 @@
 	Value {
 		CoupledMixers "Left Master,Right Master"
 		DspName "speaker_eq"
+		PlaybackPCM "hw:sklnau8825adi,0"
 	}
 
 	EnableSequence [
@@ -50,7 +59,8 @@
 
 SectionDevice."HDMI1".0 {
 	Value {
-		JackDev "HDMI/DP, pcm=4 Jack"
+		JackDev "sklnau8825adi HDMI/DP, pcm=4 Jack"
+		PlaybackPCM "hw:sklnau8825adi,4"
 	}
 
 	EnableSequence [
@@ -62,7 +72,8 @@
 
 SectionDevice."HDMI2".0 {
 	Value {
-		JackDev "HDMI/DP, pcm=5 Jack"
+		JackDev "sklnau8825adi HDMI/DP, pcm=5 Jack"
+		PlaybackPCM "hw:sklnau8825adi,5"
 	}
 
 	EnableSequence [
@@ -75,6 +86,7 @@
 SectionDevice."Headphone".0 {
 	Value {
 		JackDev "sklnau8825adi Headset Jack"
+		PlaybackPCM "hw:sklnau8825adi,0"
 	}
 
 	EnableSequence [
@@ -98,6 +110,7 @@
 		CaptureControl "Mic"
 		DefaultNodeGain "2800"
 		DspName "extmic_eq"
+		CapturePCM "hw:sklnau8825adi,1"
 	}
 
 	EnableSequence [
diff --git a/overlay-chell/profiles/base/make.defaults b/overlay-chell/profiles/base/make.defaults
index 4a0b274..43cbe56 100644
--- a/overlay-chell/profiles/base/make.defaults
+++ b/overlay-chell/profiles/base/make.defaults
@@ -33,3 +33,6 @@
 
 # Enable background blur.
 USE="${USE} background_blur"
+
+# Move the kernel to 4.19
+USE="${USE} -kernel-3_18 kernel-4_19"