You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
openwrt/target/linux/bcm27xx/patches-4.19/950-0690-overlays-mcp23017-...

67 lines
1.8 KiB
Diff

From b37ac8c50684c3517fb9c6f737e7ea444a7d7405 Mon Sep 17 00:00:00 2001
From: Dave Stevenson <dave.stevenson@raspberrypi.org>
Date: Thu, 5 Sep 2019 17:41:46 +0100
Subject: [PATCH] overlays: mcp23017: Add option for not connecting the
int GPIO
The interrupt GPIO is optional to the driver, therefore add an
option to not configure it.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
---
arch/arm/boot/dts/overlays/README | 1 +
.../boot/dts/overlays/mcp23017-overlay.dts | 21 +++++++++++++------
2 files changed, 16 insertions(+), 6 deletions(-)
--- a/arch/arm/boot/dts/overlays/README
+++ b/arch/arm/boot/dts/overlays/README
@@ -1427,6 +1427,7 @@ Params: gpiopin Gpio pin
addr I2C address of the MCP23017 (default: 0x20)
mcp23008 Configure an MCP23008 instead.
+ noints Disable the interrupt GPIO line.
Name: mcp23s17
--- a/arch/arm/boot/dts/overlays/mcp23017-overlay.dts
+++ b/arch/arm/boot/dts/overlays/mcp23017-overlay.dts
@@ -34,11 +34,6 @@
reg = <0x20>;
gpio-controller;
#gpio-cells = <2>;
- #interrupt-cells=<2>;
- interrupt-parent = <&gpio>;
- interrupts = <4 2>;
- interrupt-controller;
- microchip,irq-mirror;
status = "okay";
};
@@ -52,11 +47,25 @@
};
};
+ fragment@4 {
+ target = <&i2c1>;
+ __overlay__ {
+ mcp23017_irq: mcp@20 {
+ #interrupt-cells=<2>;
+ interrupt-parent = <&gpio>;
+ interrupts = <4 2>;
+ interrupt-controller;
+ microchip,irq-mirror;
+ };
+ };
+ };
+
__overrides__ {
gpiopin = <&mcp23017_pins>,"brcm,pins:0",
- <&mcp23017>,"interrupts:0";
+ <&mcp23017_irq>,"interrupts:0";
addr = <&mcp23017>,"reg:0", <&mcp23017_pins>,"reg:0";
mcp23008 = <0>,"=3";
+ noints = <0>,"!1!4";
};
};