162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright (C) 2023 DH electronics GmbH 462306a36Sopenharmony_ci */ 562306a36Sopenharmony_ci 662306a36Sopenharmony_ci/* 762306a36Sopenharmony_ci * Special SoM configuration: SD card 862306a36Sopenharmony_ci * 962306a36Sopenharmony_ci * Enabled: Micro SD card on module or 1062306a36Sopenharmony_ci * external SD card via DHCOM depends on hardware variant 1162306a36Sopenharmony_ci * GPIO H and GPIO I will be available 1262306a36Sopenharmony_ci * DHCOM UART2 will be available 1362306a36Sopenharmony_ci * Disabled: WiFi and BT 1462306a36Sopenharmony_ci */ 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ci/* 1762306a36Sopenharmony_ci * To use usdhc1 as SD card, the WiFi node must be deleted. 1862306a36Sopenharmony_ci * BT is also not available, so remove BT from the UART node. 1962306a36Sopenharmony_ci */ 2062306a36Sopenharmony_ci/delete-node/ &brcmf; 2162306a36Sopenharmony_ci/delete-node/ &bluetooth; 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ci/ { 2462306a36Sopenharmony_ci aliases { 2562306a36Sopenharmony_ci mmc1 = &usdhc1; 2662306a36Sopenharmony_ci serial0 = &uart1; 2762306a36Sopenharmony_ci serial1 = &uart2; 2862306a36Sopenharmony_ci serial2 = &uart3; 2962306a36Sopenharmony_ci serial3 = &uart4; 3062306a36Sopenharmony_ci serial4 = &uart5; 3162306a36Sopenharmony_ci serial5 = &uart6; 3262306a36Sopenharmony_ci }; 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ci reg_sd1_vmmc: regulator-sd1-vmmc { 3562306a36Sopenharmony_ci compatible = "regulator-fixed"; 3662306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 3762306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 3862306a36Sopenharmony_ci regulator-name = "VSD_3V3"; 3962306a36Sopenharmony_ci }; 4062306a36Sopenharmony_ci}; 4162306a36Sopenharmony_ci 4262306a36Sopenharmony_ci/* Micro SD card on module or external SD card via DHCOM */ 4362306a36Sopenharmony_ci&usdhc1 { 4462306a36Sopenharmony_ci /delete-property/ #address-cells; 4562306a36Sopenharmony_ci /delete-property/ #size-cells; 4662306a36Sopenharmony_ci /delete-property/ keep-power-in-suspend; 4762306a36Sopenharmony_ci /delete-property/ mmc-pwrseq; 4862306a36Sopenharmony_ci /delete-property/ non-removable; 4962306a36Sopenharmony_ci /delete-property/ wakeup-source; 5062306a36Sopenharmony_ci cd-gpios = <&gpio1 19 GPIO_ACTIVE_LOW>; 5162306a36Sopenharmony_ci no-1-8-v; 5262306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_usdhc1>; 5362306a36Sopenharmony_ci pinctrl-1 = <&pinctrl_usdhc1_100mhz>; 5462306a36Sopenharmony_ci pinctrl-2 = <&pinctrl_usdhc1_200mhz>; 5562306a36Sopenharmony_ci pinctrl-names = "default", "state_100mhz", "state_200mhz"; 5662306a36Sopenharmony_ci vmmc-supply = <®_sd1_vmmc>; 5762306a36Sopenharmony_ci status = "okay"; 5862306a36Sopenharmony_ci}; 5962306a36Sopenharmony_ci 6062306a36Sopenharmony_ci&iomuxc { 6162306a36Sopenharmony_ci pinctrl_usdhc1: usdhc1-grp { 6262306a36Sopenharmony_ci fsl,pins = < 6362306a36Sopenharmony_ci MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x17059 6462306a36Sopenharmony_ci MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x10059 6562306a36Sopenharmony_ci MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x17059 6662306a36Sopenharmony_ci MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x17059 6762306a36Sopenharmony_ci MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x17059 6862306a36Sopenharmony_ci MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x17059 6962306a36Sopenharmony_ci MX6UL_PAD_UART1_RTS_B__GPIO1_IO19 0x120b0 /* SD1 CD */ 7062306a36Sopenharmony_ci >; 7162306a36Sopenharmony_ci }; 7262306a36Sopenharmony_ci 7362306a36Sopenharmony_ci pinctrl_usdhc1_100mhz: usdhc1-100mhz-grp { 7462306a36Sopenharmony_ci fsl,pins = < 7562306a36Sopenharmony_ci MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x170b9 7662306a36Sopenharmony_ci MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x100b9 7762306a36Sopenharmony_ci MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x170b9 7862306a36Sopenharmony_ci MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x170b9 7962306a36Sopenharmony_ci MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x170b9 8062306a36Sopenharmony_ci MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x170b9 8162306a36Sopenharmony_ci MX6UL_PAD_UART1_RTS_B__GPIO1_IO19 0x120b0 /* SD1 CD */ 8262306a36Sopenharmony_ci 8362306a36Sopenharmony_ci >; 8462306a36Sopenharmony_ci }; 8562306a36Sopenharmony_ci 8662306a36Sopenharmony_ci pinctrl_usdhc1_200mhz: usdhc1-200mhz-grp { 8762306a36Sopenharmony_ci fsl,pins = < 8862306a36Sopenharmony_ci MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x170f9 8962306a36Sopenharmony_ci MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x100f9 9062306a36Sopenharmony_ci MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x170f9 9162306a36Sopenharmony_ci MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x170f9 9262306a36Sopenharmony_ci MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x170f9 9362306a36Sopenharmony_ci MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x170f9 9462306a36Sopenharmony_ci MX6UL_PAD_UART1_RTS_B__GPIO1_IO19 0x120b0 /* SD1 CD */ 9562306a36Sopenharmony_ci >; 9662306a36Sopenharmony_ci }; 9762306a36Sopenharmony_ci}; 98