diff options
Diffstat (limited to 'target/linux/brcm2708/patches-4.14/950-0290-overlays-Add-support-for-Balena-Fin-board.patch')
-rw-r--r-- | target/linux/brcm2708/patches-4.14/950-0290-overlays-Add-support-for-Balena-Fin-board.patch | 121 |
1 files changed, 121 insertions, 0 deletions
diff --git a/target/linux/brcm2708/patches-4.14/950-0290-overlays-Add-support-for-Balena-Fin-board.patch b/target/linux/brcm2708/patches-4.14/950-0290-overlays-Add-support-for-Balena-Fin-board.patch new file mode 100644 index 0000000000..1c317a6acf --- /dev/null +++ b/target/linux/brcm2708/patches-4.14/950-0290-overlays-Add-support-for-Balena-Fin-board.patch @@ -0,0 +1,121 @@ +From 09e843542826ad1241d77d5ef9abb2bce21a0984 Mon Sep 17 00:00:00 2001 +From: Florin Sarbu <florin@resin.io> +Date: Mon, 30 Apr 2018 09:11:52 +0200 +Subject: [PATCH 290/454] overlays: Add support for Balena Fin board + +Signed-off-by: Florin Sarbu <florin@resin.io> +--- + arch/arm/boot/dts/overlays/Makefile | 1 + + arch/arm/boot/dts/overlays/README | 7 ++ + .../boot/dts/overlays/balena-fin-overlay.dts | 79 +++++++++++++++++++ + 3 files changed, 87 insertions(+) + create mode 100644 arch/arm/boot/dts/overlays/balena-fin-overlay.dts + +--- a/arch/arm/boot/dts/overlays/Makefile ++++ b/arch/arm/boot/dts/overlays/Makefile +@@ -17,6 +17,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \ + audioinjector-addons.dtbo \ + audioinjector-wm8731-audio.dtbo \ + audremap.dtbo \ ++ balena-fin.dtbo \ + bmp085_i2c-sensor.dtbo \ + dht11.dtbo \ + dionaudio-loco.dtbo \ +--- a/arch/arm/boot/dts/overlays/README ++++ b/arch/arm/boot/dts/overlays/README +@@ -404,6 +404,13 @@ Params: swap_lr Reverse + (default off) + + ++Name: balena-fin ++Info: Overlay that enables WiFi, Bluetooth and the GPIO expander on the ++ Balena Fin board. ++Load: dtoverlay=balena-fin ++Params: <None> ++ ++ + Name: bmp085_i2c-sensor + Info: This overlay is now deprecated - see i2c-sensor + Load: dtoverlay=bmp085_i2c-sensor +--- /dev/null ++++ b/arch/arm/boot/dts/overlays/balena-fin-overlay.dts +@@ -0,0 +1,79 @@ ++/dts-v1/; ++/plugin/; ++ ++/{ ++ compatible = "brcm,bcm2708"; ++ ++ fragment@0 { ++ target = <&mmc>; ++ sdio_wifi: __overlay__ { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&sdio_pins>; ++ bus-width = <4>; ++ brcm,overclock-50 = <35>; ++ status = "okay"; ++ }; ++ }; ++ ++ fragment@1 { ++ target = <&gpio>; ++ __overlay__ { ++ sdio_pins: sdio_pins { ++ brcm,pins = <34 35 36 37 38 39>; ++ brcm,function = <7>; /* ALT3 = SD1 */ ++ brcm,pull = <0 2 2 2 2 2>; ++ }; ++ ++ power_ctrl_pins: power_ctrl_pins { ++ brcm,pins = <40>; ++ brcm,function = <1>; // out ++ }; ++ }; ++ }; ++ ++ fragment@2 { ++ target-path = "/"; ++ __overlay__ { ++ // We should investigate how to switch to mmc-pwrseq-sd8787 ++ // Currently that module requires two GPIOs to function since it ++ // targets a slightly different chip ++ power_ctrl: power_ctrl { ++ compatible = "gpio-poweroff"; ++ gpios = <&gpio 40 1>; ++ force; ++ }; ++ ++ i2c_soft: i2c@0 { ++ compatible = "i2c-gpio"; ++ gpios = <&gpio 43 0 /* sda */ &gpio 42 0 /* scl */>; ++ i2c-gpio,delay-us = <2>; /* ~100 kHz */ ++ #address-cells = <1>; ++ #size-cells = <0>; ++ }; ++ }; ++ }; ++ ++ fragment@3 { ++ target = <&i2c_soft>; ++ __overlay__ { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ status = "okay"; ++ ++ gpio_expander: gpio_expander@20 { ++ compatible = "nxp,pca9554"; ++ gpio-controller; ++ #gpio-cells = <2>; ++ reg = <0x20>; ++ status = "okay"; ++ }; ++ ++ // rtc clock ++ ds1307: ds1307@68 { ++ compatible = "maxim,ds1307"; ++ reg = <0x68>; ++ status = "okay"; ++ }; ++ }; ++ }; ++}; |