1// SPDX-License-Identifier: GPL-2.0 OR MIT 2/* 3 * Copyright (C) 2025 E Shattow <e@freeshell.de> 4 */ 5 6/dts-v1/; 7#include <dt-bindings/interrupt-controller/irq.h> 8#include "jh7110-common.dtsi" 9 10/ { 11 aliases { 12 i2c1 = &i2c1; 13 i2c3 = &i2c3; 14 i2c4 = &i2c4; 15 serial3 = &uart3; 16 }; 17 18 sdio_pwrseq: sdio-pwrseq { 19 compatible = "mmc-pwrseq-simple"; 20 reset-gpios = <&sysgpio 33 GPIO_ACTIVE_LOW>; 21 }; 22}; 23 24&gmac0 { 25 assigned-clocks = <&aoncrg JH7110_AONCLK_GMAC0_TX>; 26 assigned-clock-parents = <&aoncrg JH7110_AONCLK_GMAC0_RMII_RTX>; 27 starfive,tx-use-rgmii-clk; 28 status = "okay"; 29}; 30 31&i2c0 { 32 status = "okay"; 33}; 34 35&i2c2 { 36 status = "disabled"; 37}; 38 39&i2c6 { 40 status = "disabled"; 41}; 42 43&mmc1 { 44 #address-cells = <1>; 45 #size-cells = <0>; 46 47 mmc-pwrseq = <&sdio_pwrseq>; 48 non-removable; 49 status = "okay"; 50 51 ap6256: wifi@1 { 52 compatible = "brcm,bcm43456-fmac", "brcm,bcm4329-fmac"; 53 reg = <1>; 54 interrupt-parent = <&sysgpio>; 55 interrupts = <34 IRQ_TYPE_LEVEL_HIGH>; 56 interrupt-names = "host-wake"; 57 pinctrl-0 = <&wifi_host_wake_irq>; 58 pinctrl-names = "default"; 59 }; 60}; 61 62&pcie0 { 63 status = "okay"; 64}; 65 66&phy0 { 67 rx-internal-delay-ps = <1500>; 68 tx-internal-delay-ps = <1500>; 69 motorcomm,rx-clk-drv-microamp = <3970>; 70 motorcomm,rx-data-drv-microamp = <2910>; 71 motorcomm,tx-clk-10-inverted; 72 motorcomm,tx-clk-100-inverted; 73 motorcomm,tx-clk-1000-inverted; 74 motorcomm,tx-clk-adj-enabled; 75}; 76 77&pwm { 78 status = "okay"; 79}; 80 81&spi0 { 82 status = "okay"; 83}; 84 85&sysgpio { 86 uart1_pins: uart1-0 { 87 tx-pins { 88 pinmux = <GPIOMUX(16, GPOUT_SYS_UART1_TX, 89 GPOEN_ENABLE, 90 GPI_NONE)>; 91 bias-disable; 92 drive-strength = <12>; 93 input-disable; 94 input-schmitt-disable; 95 }; 96 97 rx-pins { 98 pinmux = <GPIOMUX(17, GPOUT_LOW, 99 GPOEN_DISABLE, 100 GPI_SYS_UART1_RX)>; 101 bias-pull-up; 102 input-enable; 103 input-schmitt-enable; 104 }; 105 106 cts-pins { 107 pinmux = <GPIOMUX(3, GPOUT_LOW, 108 GPOEN_DISABLE, 109 GPI_SYS_UART1_CTS)>; 110 bias-disable; 111 input-enable; 112 input-schmitt-enable; 113 }; 114 115 rts-pins { 116 pinmux = <GPIOMUX(2, GPOUT_SYS_UART1_RTS, 117 GPOEN_ENABLE, 118 GPI_NONE)>; 119 bias-disable; 120 input-disable; 121 input-schmitt-disable; 122 }; 123 }; 124 125 usb0_pins: usb0-0 { 126 vbus-pins { 127 pinmux = <GPIOMUX(25, GPOUT_SYS_USB_DRIVE_VBUS, 128 GPOEN_ENABLE, 129 GPI_NONE)>; 130 bias-disable; 131 input-disable; 132 input-schmitt-disable; 133 slew-rate = <0>; 134 }; 135 }; 136 137 wifi_host_wake_irq: wifi-host-wake-irq-0 { 138 wake-pins { 139 pinmux = <GPIOMUX(34, GPOUT_LOW, 140 GPOEN_DISABLE, 141 GPI_NONE)>; 142 input-enable; 143 }; 144 }; 145}; 146 147&uart1 { 148 uart-has-rtscts; 149 pinctrl-0 = <&uart1_pins>; 150 pinctrl-names = "default"; 151 status = "okay"; 152}; 153 154&usb0 { 155 dr_mode = "host"; 156 pinctrl-names = "default"; 157 pinctrl-0 = <&usb0_pins>; 158 status = "okay"; 159}; 160