mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-29 01:59:02 +00:00
20ea6adbf1
Build system: x86_64 Build-tested: bcm2708, bcm2709, bcm2710, bcm2711 Run-tested: bcm2708/RPiB+, bcm2709/RPi3B, bcm2710/RPi3B, bcm2711/RPi4B Signed-off-by: Marty Jones <mj8263788@gmail.com> Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
85 lines
2.1 KiB
Diff
85 lines
2.1 KiB
Diff
From 623f4a862134202e9f0705812cabe2abef6c2f9b Mon Sep 17 00:00:00 2001
|
|
From: Phil Elwell <phil@raspberrypi.com>
|
|
Date: Mon, 31 Jan 2022 21:01:25 +0000
|
|
Subject: [PATCH] overlays: Add spi0-0cs overlay
|
|
|
|
An overlay to enable SPI0 without claiming any chip select GPIOs.
|
|
|
|
Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
|
---
|
|
arch/arm/boot/dts/overlays/Makefile | 1 +
|
|
arch/arm/boot/dts/overlays/README | 8 ++++
|
|
.../boot/dts/overlays/spi0-0cs-overlay.dts | 39 +++++++++++++++++++
|
|
3 files changed, 48 insertions(+)
|
|
create mode 100644 arch/arm/boot/dts/overlays/spi0-0cs-overlay.dts
|
|
|
|
--- a/arch/arm/boot/dts/overlays/Makefile
|
|
+++ b/arch/arm/boot/dts/overlays/Makefile
|
|
@@ -195,6 +195,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \
|
|
spi-gpio35-39.dtbo \
|
|
spi-gpio40-45.dtbo \
|
|
spi-rtc.dtbo \
|
|
+ spi0-0cs.dtbo \
|
|
spi0-1cs.dtbo \
|
|
spi0-2cs.dtbo \
|
|
spi1-1cs.dtbo \
|
|
--- a/arch/arm/boot/dts/overlays/README
|
|
+++ b/arch/arm/boot/dts/overlays/README
|
|
@@ -3115,6 +3115,14 @@ Params: ds3232 Select t
|
|
cs_high This device requires an active-high CS
|
|
|
|
|
|
+Name: spi0-0cs
|
|
+Info: Don't claim any CS pins for SPI0. Requires a device with its chip
|
|
+ select permanently enabled, but frees a GPIO for e.g. a DPI display.
|
|
+Load: dtoverlay=spi0-0cs,<param>=<val>
|
|
+Params: no_miso Don't claim and use the MISO pin (9), freeing
|
|
+ it for other uses.
|
|
+
|
|
+
|
|
Name: spi0-1cs
|
|
Info: Only use one CS pin for SPI0
|
|
Load: dtoverlay=spi0-1cs,<param>=<val>
|
|
--- /dev/null
|
|
+++ b/arch/arm/boot/dts/overlays/spi0-0cs-overlay.dts
|
|
@@ -0,0 +1,39 @@
|
|
+/dts-v1/;
|
|
+/plugin/;
|
|
+
|
|
+/ {
|
|
+ compatible = "brcm,bcm2835";
|
|
+
|
|
+ fragment@0 {
|
|
+ target = <&spi0_cs_pins>;
|
|
+ frag0: __overlay__ {
|
|
+ brcm,pins;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ fragment@1 {
|
|
+ target = <&spi0>;
|
|
+ __overlay__ {
|
|
+ cs-gpios;
|
|
+ status = "okay";
|
|
+ };
|
|
+ };
|
|
+
|
|
+ fragment@2 {
|
|
+ target = <&spidev1>;
|
|
+ __overlay__ {
|
|
+ status = "disabled";
|
|
+ };
|
|
+ };
|
|
+
|
|
+ fragment@3 {
|
|
+ target = <&spi0_pins>;
|
|
+ __dormant__ {
|
|
+ brcm,pins = <10 11>;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ __overrides__ {
|
|
+ no_miso = <0>,"=3";
|
|
+ };
|
|
+};
|