/dts-v1/; /plugin/; /* Enable SDIO from MMC interface via various GPIO groups */ /{ compatible = "brcm,bcm2835"; fragment@0 { target = <&mmcnr>; __overlay__ { status = "disabled"; }; }; fragment@1 { target = <&mmc>; sdio_ovl: __overlay__ { pinctrl-0 = <&sdio_ovl_pins>; pinctrl-names = "default"; non-removable; bus-width = <4>; status = "okay"; }; }; fragment@2 { target = <&gpio>; __overlay__ { sdio_ovl_pins: sdio_ovl_pins { brcm,pins = <22 23 24 25 26 27>; brcm,function = <7>; /* ALT3 = SD1 */ brcm,pull = <0 2 2 2 2 2>; }; }; }; fragment@3 { target = <&sdio_ovl_pins>; __dormant__ { brcm,pins = <22 23 24 25>; brcm,pull = <0 2 2 2>; }; }; fragment@4 { target = <&sdio_ovl_pins>; __dormant__ { brcm,pins = <34 35 36 37>; brcm,pull = <0 2 2 2>; }; }; fragment@5 { target = <&sdio_ovl_pins>; __dormant__ { brcm,pins = <34 35 36 37 38 39>; brcm,pull = <0 2 2 2 2 2>; }; }; fragment@6 { target-path = "/aliases"; __overlay__ { mmc1 = "/soc/mmc@7e300000"; }; }; __overrides__ { poll_once = <&sdio_ovl>,"non-removable?"; bus_width = <&sdio_ovl>,"bus-width:0"; sdio_overclock = <&sdio_ovl>,"brcm,overclock-50:0"; gpios_22_25 = <0>,"=3"; gpios_34_37 = <0>,"=4"; gpios_34_39 = <0>,"=5"; }; };