diff options
Diffstat (limited to 'target/linux/bcm27xx/patches-5.4/950-0988-overlays-Add-ghost-amp-overlay.patch')
-rw-r--r-- | target/linux/bcm27xx/patches-5.4/950-0988-overlays-Add-ghost-amp-overlay.patch | 163 |
1 files changed, 0 insertions, 163 deletions
diff --git a/target/linux/bcm27xx/patches-5.4/950-0988-overlays-Add-ghost-amp-overlay.patch b/target/linux/bcm27xx/patches-5.4/950-0988-overlays-Add-ghost-amp-overlay.patch deleted file mode 100644 index 7404bf7f7a..0000000000 --- a/target/linux/bcm27xx/patches-5.4/950-0988-overlays-Add-ghost-amp-overlay.patch +++ /dev/null @@ -1,163 +0,0 @@ -From 96f25d50e2352922e16ae74bb16fd8b6985f0f66 Mon Sep 17 00:00:00 2001 -From: Phil Elwell <phil@raspberrypi.com> -Date: Wed, 30 Sep 2020 12:17:48 +0100 -Subject: [PATCH] overlays: Add ghost-amp overlay - -Add an overlay for the Ghost amplifier. - -Signed-off-by: Phil Elwell <phil@raspberrypi.com> ---- - arch/arm/boot/dts/overlays/Makefile | 1 + - arch/arm/boot/dts/overlays/README | 7 ++ - .../boot/dts/overlays/ghost-amp-overlay.dts | 119 ++++++++++++++++++ - 3 files changed, 127 insertions(+) - create mode 100644 arch/arm/boot/dts/overlays/ghost-amp-overlay.dts - ---- a/arch/arm/boot/dts/overlays/Makefile -+++ b/arch/arm/boot/dts/overlays/Makefile -@@ -45,6 +45,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \ - exc3000.dtbo \ - fe-pi-audio.dtbo \ - fsm-demo.dtbo \ -+ ghost-amp.dtbo \ - goodix.dtbo \ - googlevoicehat-soundcard.dtbo \ - gpio-fan.dtbo \ ---- a/arch/arm/boot/dts/overlays/README -+++ b/arch/arm/boot/dts/overlays/README -@@ -775,6 +775,13 @@ Load: dtoverlay=fsm-demo,<param>=<val> - Params: fsm_debug Enable debug logging (default off) - - -+Name: ghost-amp -+Info: An overlay for the Ghost amplifier. -+Load: dtoverlay=ghost-amp,<param>=<val> -+Params: fsm_debug Enable debug logging of the GPIO FSM (default -+ off) -+ -+ - Name: goodix - Info: Enables I2C connected Goodix gt9271 multiple touch controller using - GPIOs 4 and 17 (pins 7 and 11 on GPIO header) for interrupt and reset. ---- /dev/null -+++ b/arch/arm/boot/dts/overlays/ghost-amp-overlay.dts -@@ -0,0 +1,119 @@ -+// Overlay for the PCM5122-based Ghost amplifier using gpio-fsm -+/dts-v1/; -+/plugin/; -+ -+#include <dt-bindings/gpio/gpio-fsm.h> -+ -+#define ENABLE GF_SW(0) -+#define FAULT GF_IP(0) // GPIO5 -+#define RELAY1 GF_OP(0) // GPIO22 -+#define RELAY2 GF_OP(1) // GPIO23 -+ -+/ { -+ compatible = "brcm,bcm2835"; -+ -+ fragment@0 { -+ target = <&i2s>; -+ __overlay__ { -+ status = "okay"; -+ }; -+ }; -+ -+ fragment@1 { -+ target = <&i2c1>; -+ __overlay__ { -+ #address-cells = <1>; -+ #size-cells = <0>; -+ status = "okay"; -+ -+ pcm5122@4c { -+ #sound-dai-cells = <0>; -+ compatible = "ti,pcm5122"; -+ reg = <0x4c>; -+ AVDD-supply = <&vdd_3v3_reg>; -+ DVDD-supply = <&vdd_3v3_reg>; -+ CPVDD-supply = <&vdd_3v3_reg>; -+ status = "okay"; -+ }; -+ }; -+ }; -+ -+ fragment@2 { -+ target = <&sound>; -+ iqaudio_dac: __overlay__ { -+ compatible = "iqaudio,iqaudio-dac"; -+ i2s-controller = <&i2s>; -+ mute-gpios = <& 0 0>; -+ iqaudio-dac,auto-mute-amp; -+ status = "okay"; -+ }; -+ }; -+ -+ fragment@3 { -+ target-path = "/"; -+ __overlay__ { -+ amp: ghost-amp { -+ compatible = "rpi,gpio-fsm"; -+ -+ debug = <0>; -+ gpio-controller; -+ #gpio-cells = <2>; -+ num-soft-gpios = <1>; -+ gpio-line-names = "enable"; -+ input-gpios = <&gpio 5 1>; // FAULT (active low) -+ output-gpios = <&gpio 22 0>, // RELAY1 -+ <&gpio 23 0>; // RELAY2 -+ shutdown-timeout-ms = <1000>; -+ -+ amp_off { -+ start_state; -+ shutdown_state; -+ -+ set = <RELAY2 0>, -+ <RELAY1 0>; -+ amp_on_1 = <ENABLE 1>; -+ fault = <FAULT 1>; -+ }; -+ -+ amp_on_1 { -+ set = <RELAY1 1>; -+ amp_on = <GF_DELAY 1500>; -+ amp_off = <ENABLE 0>; -+ fault = <FAULT 1>; -+ }; -+ -+ amp_on { -+ set = <RELAY2 1>; -+ amp_off_wait = <ENABLE 0>; -+ fault = <FAULT 1>; -+ }; -+ -+ amp_off_wait { -+ amp_off_1 = <GF_DELAY (30*60*1000)>, -+ <GF_SHUTDOWN 0>; -+ amp_on = <ENABLE 1>; -+ fault = <FAULT 1>; -+ }; -+ -+ amp_off_1 { -+ set = <RELAY2 0>; -+ amp_on = <ENABLE 1>; -+ amp_off = <GF_DELAY 100>; -+ fault = <FAULT 1>; -+ }; -+ -+ // Keep this a distinct state to prevent -+ // changes and for the diagnostic output -+ fault { -+ set = <RELAY2 0>, -+ <RELAY1 0>; -+ shutdown_state; -+ }; -+ }; -+ }; -+ }; -+ -+ __overrides__ { -+ fsm_debug = <&>,"debug:0"; -+ }; -+}; |