diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README index 32e08d6d065611..f8f350ff5e9004 100644 --- a/arch/arm/boot/dts/overlays/README +++ b/arch/arm/boot/dts/overlays/README @@ -4543,7 +4543,7 @@ Load: Name: sc16is752-spi1 Info: This overlay is now deprecated. Use - "dtoverlay=sc16is75x-spi,sc16is752,spi1-0,..." instead. + "dtoverlay=sc16is75x-spi,sc16is752,spi1-1cs,spi1-0,..." instead. Load: @@ -4558,6 +4558,8 @@ Params: sc16is750 Device is a SC16IS750 UART (default on) (boolean, required) int_pin GPIO used for IRQ (default 24) xtal On-board crystal frequency (default 14745600) + spi1-1cs A special case to support sc16is752-spi1. Not + intended for general use. Name: sdhost diff --git a/arch/arm/boot/dts/overlays/overlay_map.dts b/arch/arm/boot/dts/overlays/overlay_map.dts index 36ff192fa5d453..f28f4b83b7ad03 100644 --- a/arch/arm/boot/dts/overlays/overlay_map.dts +++ b/arch/arm/boot/dts/overlays/overlay_map.dts @@ -292,16 +292,12 @@ renamed = "sc16is75x-spi,sc16is750,spi0-0"; }; - sc16is750-spi1 { - renamed = "sc16is75x-spi,sc16is750,spi1-0"; - }; - sc16is752-spi0 { renamed = "sc16is75x-spi,sc16is752,spi0-0"; }; sc16is752-spi1 { - renamed = "sc16is75x-spi,sc16is752,spi1-0"; + renamed = "sc16is75x-spi,sc16is752,spi1-1cs,spi1-0"; }; sdhost { diff --git a/arch/arm/boot/dts/overlays/sc16is75x-spi-overlay.dts b/arch/arm/boot/dts/overlays/sc16is75x-spi-overlay.dts index 76b69c46d76ef0..ba5c7b5ffaffd0 100644 --- a/arch/arm/boot/dts/overlays/sc16is75x-spi-overlay.dts +++ b/arch/arm/boot/dts/overlays/sc16is75x-spi-overlay.dts @@ -53,7 +53,7 @@ fragment@3 { target = <&gpio>; __overlay__ { - sc16is75x_pins: sc16is75x_pins@24 { + sc16is75x_pins: sc16is75x_pins@18 { brcm,pins = <24>; brcm,function = ; brcm,pull = ; @@ -61,6 +61,40 @@ }; }; + fragment@4 { + target = <&gpio>; + __dormant__ { + spi1_pins: spi1_pins { + brcm,pins = <19 20 21>; + brcm,function = <3>; /* alt4 */ + }; + + spi1_cs_pins: spi1_cs_pins { + brcm,pins = <18>; + brcm,function = <1>; /* output */ + }; + }; + }; + + fragment@5 { + target = <&spi1>; + __dormant__ { + #address-cells = <1>; + #size-cells = <0>; + pinctrl-names = "default"; + pinctrl-0 = <&spi1_pins &spi1_cs_pins>; + cs-gpios = <&gpio 18 1>; + status = "okay"; + }; + }; + + fragment@6 { + target = <&aux>; + __dormant__ { + status = "okay"; + }; + }; + __overrides__ { sc16is750 = <&sc16is75x>,"compatible=nxp,sc16is750", <&sc16is75x>, "name=sc16is750@0"; @@ -80,6 +114,7 @@ spi1-0 = <0>, "-0", <&sc16is75x_frag>, "target:0=", <&spi1>, <&sc16is75x_pins>, "name=sc16is75x_spi1_0_pins"; + spi1-1cs = <0>,"+4+5+6"; spi1-1 = <0>, "-0", <&sc16is75x_frag>, "target:0=", <&spi1>, <&sc16is75x>, "reg:0=1",