1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause 2724ba675SRob Herring/* 3724ba675SRob Herring * Copyright (C) 2023 DH electronics GmbH 4724ba675SRob Herring */ 5724ba675SRob Herring 6724ba675SRob Herring/* 7724ba675SRob Herring * Special SoM configuration: SD card 8724ba675SRob Herring * 9724ba675SRob Herring * Enabled: Micro SD card on module or 10724ba675SRob Herring * external SD card via DHCOM depends on hardware variant 11724ba675SRob Herring * GPIO H and GPIO I will be available 12724ba675SRob Herring * DHCOM UART2 will be available 13724ba675SRob Herring * Disabled: WiFi and BT 14724ba675SRob Herring */ 15724ba675SRob Herring 16724ba675SRob Herring/* 17*e7f32d8fSChristoph Niedermaier * To use usdhc1 as SD card, the WiFi node must be deleted. The associated 18*e7f32d8fSChristoph Niedermaier * pwrseq node is also deleted in order to ensure that GPIO H is released. 19724ba675SRob Herring * BT is also not available, so remove BT from the UART node. 20724ba675SRob Herring */ 21724ba675SRob Herring/delete-node/ &brcmf; 22*e7f32d8fSChristoph Niedermaier/delete-node/ &usdhc1_pwrseq; 23724ba675SRob Herring/delete-node/ &bluetooth; 24724ba675SRob Herring 25724ba675SRob Herring/ { 26724ba675SRob Herring aliases { 27724ba675SRob Herring mmc1 = &usdhc1; 28724ba675SRob Herring serial0 = &uart1; 29724ba675SRob Herring serial1 = &uart2; 30724ba675SRob Herring serial2 = &uart3; 31724ba675SRob Herring serial3 = &uart4; 32724ba675SRob Herring serial4 = &uart5; 33724ba675SRob Herring serial5 = &uart6; 34724ba675SRob Herring }; 35724ba675SRob Herring 36724ba675SRob Herring reg_sd1_vmmc: regulator-sd1-vmmc { 37724ba675SRob Herring compatible = "regulator-fixed"; 38724ba675SRob Herring regulator-max-microvolt = <3300000>; 39724ba675SRob Herring regulator-min-microvolt = <3300000>; 40724ba675SRob Herring regulator-name = "VSD_3V3"; 41724ba675SRob Herring }; 42724ba675SRob Herring}; 43724ba675SRob Herring 44724ba675SRob Herring/* Micro SD card on module or external SD card via DHCOM */ 45724ba675SRob Herring&usdhc1 { 46724ba675SRob Herring /delete-property/ #address-cells; 47724ba675SRob Herring /delete-property/ #size-cells; 48724ba675SRob Herring /delete-property/ keep-power-in-suspend; 49724ba675SRob Herring /delete-property/ mmc-pwrseq; 50724ba675SRob Herring /delete-property/ non-removable; 51724ba675SRob Herring /delete-property/ wakeup-source; 52724ba675SRob Herring cd-gpios = <&gpio1 19 GPIO_ACTIVE_LOW>; 53724ba675SRob Herring no-1-8-v; 54724ba675SRob Herring pinctrl-0 = <&pinctrl_usdhc1>; 55724ba675SRob Herring pinctrl-1 = <&pinctrl_usdhc1_100mhz>; 56724ba675SRob Herring pinctrl-2 = <&pinctrl_usdhc1_200mhz>; 57724ba675SRob Herring pinctrl-names = "default", "state_100mhz", "state_200mhz"; 58724ba675SRob Herring vmmc-supply = <®_sd1_vmmc>; 59724ba675SRob Herring status = "okay"; 60724ba675SRob Herring}; 61724ba675SRob Herring 62724ba675SRob Herring&iomuxc { 63724ba675SRob Herring pinctrl_usdhc1: usdhc1-grp { 64724ba675SRob Herring fsl,pins = < 65724ba675SRob Herring MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x17059 66724ba675SRob Herring MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x10059 67724ba675SRob Herring MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x17059 68724ba675SRob Herring MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x17059 69724ba675SRob Herring MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x17059 70724ba675SRob Herring MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x17059 71724ba675SRob Herring MX6UL_PAD_UART1_RTS_B__GPIO1_IO19 0x120b0 /* SD1 CD */ 72724ba675SRob Herring >; 73724ba675SRob Herring }; 74724ba675SRob Herring 75724ba675SRob Herring pinctrl_usdhc1_100mhz: usdhc1-100mhz-grp { 76724ba675SRob Herring fsl,pins = < 77724ba675SRob Herring MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x170b9 78724ba675SRob Herring MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x100b9 79724ba675SRob Herring MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x170b9 80724ba675SRob Herring MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x170b9 81724ba675SRob Herring MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x170b9 82724ba675SRob Herring MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x170b9 83724ba675SRob Herring MX6UL_PAD_UART1_RTS_B__GPIO1_IO19 0x120b0 /* SD1 CD */ 84724ba675SRob Herring 85724ba675SRob Herring >; 86724ba675SRob Herring }; 87724ba675SRob Herring 88724ba675SRob Herring pinctrl_usdhc1_200mhz: usdhc1-200mhz-grp { 89724ba675SRob Herring fsl,pins = < 90724ba675SRob Herring MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x170f9 91724ba675SRob Herring MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x100f9 92724ba675SRob Herring MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x170f9 93724ba675SRob Herring MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x170f9 94724ba675SRob Herring MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x170f9 95724ba675SRob Herring MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x170f9 96724ba675SRob Herring MX6UL_PAD_UART1_RTS_B__GPIO1_IO19 0x120b0 /* SD1 CD */ 97724ba675SRob Herring >; 98724ba675SRob Herring }; 99724ba675SRob Herring}; 100