diff options
Diffstat (limited to 'target/linux/brcm2708/patches-4.14/950-0219-Add-support-for-SuperAudioBoard-sound-card-2386.patch')
-rw-r--r-- | target/linux/brcm2708/patches-4.14/950-0219-Add-support-for-SuperAudioBoard-sound-card-2386.patch | 147 |
1 files changed, 147 insertions, 0 deletions
diff --git a/target/linux/brcm2708/patches-4.14/950-0219-Add-support-for-SuperAudioBoard-sound-card-2386.patch b/target/linux/brcm2708/patches-4.14/950-0219-Add-support-for-SuperAudioBoard-sound-card-2386.patch new file mode 100644 index 0000000000..a348d2d6e1 --- /dev/null +++ b/target/linux/brcm2708/patches-4.14/950-0219-Add-support-for-SuperAudioBoard-sound-card-2386.patch @@ -0,0 +1,147 @@ +From 98f993e9d2b66f3219ac9841ad836ef79a341908 Mon Sep 17 00:00:00 2001 +From: RF William Hollender <whollender@gmail.com> +Date: Sun, 18 Feb 2018 14:41:43 -0600 +Subject: [PATCH 219/454] Add support for SuperAudioBoard sound card (#2386) + +SuperAudioBoard support using simple-audio-card driver. +--- + arch/arm/boot/dts/overlays/Makefile | 1 + + arch/arm/boot/dts/overlays/README | 6 ++ + .../dts/overlays/superaudioboard-overlay.dts | 73 +++++++++++++++++++ + arch/arm/configs/bcm2709_defconfig | 1 + + arch/arm/configs/bcmrpi_defconfig | 1 + + arch/arm64/configs/bcmrpi3_defconfig | 1 + + 6 files changed, 83 insertions(+) + create mode 100755 arch/arm/boot/dts/overlays/superaudioboard-overlay.dts + +--- a/arch/arm/boot/dts/overlays/Makefile ++++ b/arch/arm/boot/dts/overlays/Makefile +@@ -118,6 +118,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \ + spi2-1cs.dtbo \ + spi2-2cs.dtbo \ + spi2-3cs.dtbo \ ++ superaudioboard.dtbo \ + tinylcd35.dtbo \ + uart0.dtbo \ + uart1.dtbo \ +--- a/arch/arm/boot/dts/overlays/README ++++ b/arch/arm/boot/dts/overlays/README +@@ -1658,6 +1658,12 @@ Params: cs0_pin GPIO pin + is 'okay' or enabled). + + ++Name: superaudioboard ++Info: Configures the SuperAudioBoard sound card ++Load: dtoverlay=superaudioboard,<param>=<val> ++Params: gpiopin GPIO pin for codec reset ++ ++ + Name: tinylcd35 + Info: 3.5" Color TFT Display by www.tinylcd.com + Options: Touch, RTC, keypad +--- /dev/null ++++ b/arch/arm/boot/dts/overlays/superaudioboard-overlay.dts +@@ -0,0 +1,73 @@ ++// Definitions for SuperAudioBoard ++/dts-v1/; ++/plugin/; ++ ++/ { ++ compatible = "brcm,bcm2708"; ++ ++ fragment@0 { ++ target = <&sound>; ++ __overlay__ { ++ compatible = "simple-audio-card"; ++ i2s-controller = <&i2s>; ++ status = "okay"; ++ ++ simple-audio-card,name = "SuperAudioBoard"; ++ ++ simple-audio-card,widgets = ++ "Line", "Line In", ++ "Line", "Line Out"; ++ ++ simple-audio-card,routing = ++ "Line Out","AOUTA+", ++ "Line Out","AOUTA-", ++ "Line Out","AOUTB+", ++ "Line Out","AOUTB-", ++ "AINA","Line In", ++ "AINB","Line In"; ++ ++ simple-audio-card,format = "i2s"; ++ ++ simple-audio-card,bitclock-master = <&sound_master>; ++ simple-audio-card,frame-master = <&sound_master>; ++ ++ simple-audio-card,cpu { ++ sound-dai = <&i2s>; ++ dai-tdm-slot-num = <2>; ++ dai-tdm-slot-width = <32>; ++ }; ++ ++ sound_master: simple-audio-card,codec { ++ sound-dai = <&cs4271>; ++ system-clock-frequency = <24576000>; ++ }; ++ }; ++ }; ++ ++ fragment@1 { ++ target = <&i2s>; ++ __overlay__ { ++ status = "okay"; ++ }; ++ }; ++ ++ fragment@2 { ++ target = <&i2c1>; ++ __overlay__ { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ status = "okay"; ++ ++ cs4271: cs4271@10 { ++ #sound-dai-cells = <0>; ++ compatible = "cirrus,cs4271"; ++ reg = <0x10>; ++ status = "okay"; ++ reset-gpio = <&gpio 26 0>; /* Pin 26, active high */ ++ }; ++ }; ++ }; ++ __overrides__ { ++ gpiopin = <&cs4271>,"reset-gpio:4"; ++ }; ++}; +--- a/arch/arm/configs/bcm2709_defconfig ++++ b/arch/arm/configs/bcm2709_defconfig +@@ -895,6 +895,7 @@ CONFIG_SND_PISOUND=m + CONFIG_SND_SOC_ADAU1701=m + CONFIG_SND_SOC_ADAU7002=m + CONFIG_SND_SOC_AK4554=m ++CONFIG_SND_SOC_CS4271_I2C=m + CONFIG_SND_SOC_SPDIF=m + CONFIG_SND_SOC_WM8804_I2C=m + CONFIG_SND_SIMPLE_CARD=m +--- a/arch/arm/configs/bcmrpi_defconfig ++++ b/arch/arm/configs/bcmrpi_defconfig +@@ -888,6 +888,7 @@ CONFIG_SND_PISOUND=m + CONFIG_SND_SOC_ADAU1701=m + CONFIG_SND_SOC_ADAU7002=m + CONFIG_SND_SOC_AK4554=m ++CONFIG_SND_SOC_CS4271_I2C=m + CONFIG_SND_SOC_SPDIF=m + CONFIG_SND_SOC_WM8804_I2C=m + CONFIG_SND_SIMPLE_CARD=m +--- a/arch/arm64/configs/bcmrpi3_defconfig ++++ b/arch/arm64/configs/bcmrpi3_defconfig +@@ -870,6 +870,7 @@ CONFIG_SND_BCM2708_SOC_ALLO_PIANO_DAC=m + CONFIG_SND_PISOUND=m + CONFIG_SND_SOC_ADAU1701=m + CONFIG_SND_SOC_AK4554=m ++CONFIG_SND_SOC_CS4271_I2C=m + CONFIG_SND_SOC_WM8804_I2C=m + CONFIG_SND_SIMPLE_CARD=m + CONFIG_SOUND_PRIME=m |