// SPDX-License-Identifier: GPL-2.0+ /* * Support optional Wifi/Bluetooth on Variscite VAR-SOM-6UL module. * * Copyright 2019-2024 Variscite Ltd. * Copyright 2026 Dimonoff */ / { reg_sd1_vmmc: regulator_sd1_vmmc { compatible = "regulator-fixed"; regulator-name = "VMMC1"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; gpio = <&gpio5 2 GPIO_ACTIVE_HIGH>; enable-active-high; startup-delay-us = <10000>; }; usdhc1_pwrseq: usdhc1-pwrseq { compatible = "mmc-pwrseq-simple"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_brcm_wifi>; reset-gpios = <&gpio5 6 GPIO_ACTIVE_LOW>; }; }; &iomuxc { pinctrl_32k_clk: 32kclkgrp { /* * For TP option, an additional oscillator is assembled on the * SOM to provide 32 kHz to the WiFi module. Without TP option, * this pin is configured to provide the 32 KHz clock to the * WiFi module. */ fsl,pins = < MX6UL_PAD_GPIO1_IO03__OSC32K_32K_OUT 0x03029 >; }; }; &tsc { status = "disabled"; }; /* Bluetooth UART */ &uart2 { bluetooth { compatible = "brcm,bcm43438-bt"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_brcm_bt>; shutdown-gpios = <&gpio5 4 GPIO_ACTIVE_HIGH>; vbat-supply = <®_3p3v>; vddio-supply = <®_3p3v>; }; }; &usdhc1 { #address-cells = <1>; #size-cells = <0>; pinctrl-names = "default", "state_100mhz", "state_200mhz"; pinctrl-0 = <&pinctrl_usdhc1>, <&pinctrl_32k_clk>; pinctrl-1 = <&pinctrl_usdhc1_100mhz>, <&pinctrl_32k_clk>; pinctrl-2 = <&pinctrl_usdhc1_200mhz>, <&pinctrl_32k_clk>; no-1-8-v; non-removable; mmc-pwrseq = <&usdhc1_pwrseq>; vmmc-supply = <®_sd1_vmmc>; status = "okay"; brcmf: wifi@1 { compatible = "brcm,bcm4329-fmac"; /* LWB option: Sterling LWB5 */ reg = <1>; }; };