The addr parameter of the mcp23017 overlay was broken by the addition
of the noints parameter; splitting the mcp node in two without also
modifying the second half from the addr parameter would cause the two
halves to separate. Change the implementation strategy to patch
fragment 2 (as was originally proposed). This will prevent the
overlay from being applied at runtime until the "dtoverlay" command
is improved, but the overlay already has this restriction due to
fragment 3 so this isn't a step backwards.
See: https://github.com/raspberrypi/linux/issues/3449
Signed-off-by: Phil Elwell <phil@raspberrypi.com>
};
fragment@4 {
- target = <&i2c1>;
- __overlay__ {
- mcp23017_irq: mcp@20 {
- #interrupt-cells=<2>;
- interrupt-parent = <&gpio>;
- interrupts = <4 2>;
- interrupt-controller;
- microchip,irq-mirror;
- };
+ target = <&mcp23017>;
+ mcp23017_irq: __overlay__ {
+ #interrupt-cells=<2>;
+ interrupt-parent = <&gpio>;
+ interrupts = <4 2>;
+ interrupt-controller;
+ microchip,irq-mirror;
};
};