xx_vv_immortalwrt/target/linux/bcm27xx/patches-6.6/950-1164-spi-dt-bindings-Add-RPI-RP2040-GPIO-Bridge.patch
Christian Marangi f63d64ede0
generic: move patch from pending to backport
Move all patch that got merged upstream from pending to backport and add
related tag. This is to make it easier to update to kernel 6.12.

Patch 680 required some special care as the upstream version had to be
split in a series of 6 patch.

Referesh all affected patch.

Link: https://github.com/openwrt/openwrt/pull/18464
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2025-04-14 10:28:48 +02:00

109 lines
2.7 KiB
Diff

From afd949f5f64d224cf7a016ef933257842bc170ab Mon Sep 17 00:00:00 2001
From: Richard Oliver <richard.oliver@raspberrypi.com>
Date: Fri, 24 May 2024 10:34:45 +0100
Subject: [PATCH 1164/1215] spi: dt-bindings: Add RPI RP2040 GPIO Bridge
Add YAML device tree bindings for the Raspberry Pi RP2040 GPIO Bridge.
Signed-off-by: Richard Oliver <richard.oliver@raspberrypi.com>
---
.../spi/raspberrypi,rp2040-gpio-bridge.yaml | 77 +++++++++++++++++++
MAINTAINERS | 5 ++
2 files changed, 82 insertions(+)
create mode 100644 Documentation/devicetree/bindings/spi/raspberrypi,rp2040-gpio-bridge.yaml
--- /dev/null
+++ b/Documentation/devicetree/bindings/spi/raspberrypi,rp2040-gpio-bridge.yaml
@@ -0,0 +1,77 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/spi/raspberrypi,rp2040-gpio-bridge.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Raspberry Pi RP2040 GPIO Bridge
+
+maintainers:
+ - Raspberry Pi <kernel-list@raspberrypi.com>
+
+description: |-
+ The Raspberry Pi PR2040 GPIO bridge can be used as a GPIO expander and
+ Tx-only SPI master.
+
+properties:
+ reg:
+ description: I2C slave address
+ const: 0x40
+
+ compatible:
+ const: raspberrypi,rp2040-gpio-bridge
+
+ power-supply:
+ description: Phandle to the regulator that powers the RP2040.
+
+ '#address-cells':
+ const: 1
+
+ '#size-cells':
+ const: 0
+
+ '#gpio-cells':
+ const: 2
+
+ gpio-controller: true
+
+ fast_xfer_requires_i2c_lock:
+ description: Set if I2C bus should be locked during fast transfer.
+
+ fast_xfer_recv_gpio_base:
+ description: RP2040 GPIO base for fast transfer pair.
+
+ fast_xfer-gpios:
+ description: RP1 GPIOs to use for fast transfer clock and data.
+
+required:
+ - reg
+ - compatible
+ - power-supply
+ - '#gpio-cells'
+ - gpio-controller
+
+additionalProperties: false
+
+examples:
+ - |
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ spi@40 {
+ reg = <0x40>;
+ compatible = "raspberrypi,rp2040-gpio-bridge";
+ status = "disabled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ power-supply = <&cam_dummy_reg>;
+
+ #gpio-cells = <2>;
+ gpio-controller;
+ };
+ };
+
+...
+
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -18028,6 +18028,11 @@ F: drivers/ras/
F: include/linux/ras.h
F: include/ras/ras_event.h
+RASPBERRY PI RP2040 GPIO BRIDGE DRIVER
+M: Raspberry Pi Kernel Maintenance <kernel-list@raspberrypi.com>
+S: Maintained
+F: Documentation/devicetree/bindings/spi/raspberrypi,rp2040-gpio-bridge.yaml
+
RAYLINK/WEBGEAR 802.11 WIRELESS LAN DRIVER
L: linux-wireless@vger.kernel.org
S: Orphan