1 // SPDX-License-Identifier: GPL-2.0+ 2 /* 3 * Copyright (C) 2024 Josua Mayer <josua@solid-run.com> 4 * 5 * DTS for SolidRun CN9130 Clearfog Base. 6 * 7 */ 8 9 /dts-v1/; 10 11 #include <dt-bindings/input/input.h> 12 #include <dt-bindings/leds/common.h> 13 14 #include "cn9130.dtsi" 15 #include "cn9130-sr-som.dtsi" 16 #include "cn9130-cf.dtsi" 17 18 / { 19 model = "SolidRun CN9130 Clearfog Base"; 20 compatible = "solidrun,cn9130-clearfog-base", 21 "solidrun,cn9130-sr-som", "marvell,cn9130"; 22 23 gpio-keys { 24 compatible = "gpio-keys"; 25 pinctrl-0 = <&rear_button_pins>; 26 pinctrl-names = "default"; 27 28 button-0 { 29 /* The rear SW3 button */ 30 label = "Rear Button"; 31 gpios = <&cp0_gpio1 31 GPIO_ACTIVE_LOW>; 32 linux,can-disable; 33 linux,code = <BTN_0>; 34 }; 35 }; 36 37 rfkill-m2-gnss { 38 compatible = "rfkill-gpio"; 39 label = "m.2 GNSS"; 40 radio-type = "gps"; 41 /* rfkill-gpio inverts internally */ 42 shutdown-gpios = <&expander0 9 GPIO_ACTIVE_HIGH>; 43 }; 44 45 /* M.2 is B-keyed, so w-disable is for WWAN */ 46 rfkill-m2-wwan { 47 compatible = "rfkill-gpio"; 48 label = "m.2 WWAN"; 49 radio-type = "wwan"; 50 /* rfkill-gpio inverts internally */ 51 shutdown-gpios = <&expander0 8 GPIO_ACTIVE_HIGH>; 52 }; 53 }; 54 55 /* SRDS #3 - SGMII 1GE */ 56 &cp0_eth1 { 57 phy = <&phy1>; 58 phys = <&cp0_comphy3 1>; 59 phy-mode = "sgmii"; 60 status = "okay"; 61 }; 62 63 &cp0_eth2_phy { 64 /* 65 * Configure LEDs default behaviour: 66 * - LED[0]: link/activity: On/blink (green) 67 * - LED[1]: link is 100/1000Mbps: On (yellow) 68 * - LED[2]: high impedance (floating) 69 */ 70 marvell,reg-init = <3 16 0xf000 0x0a61>; 71 72 leds { 73 #address-cells = <1>; 74 #size-cells = <0>; 75 76 led@0 { 77 reg = <0>; 78 color = <LED_COLOR_ID_GREEN>; 79 function = LED_FUNCTION_WAN; 80 default-state = "keep"; 81 }; 82 83 led@1 { 84 reg = <1>; 85 color = <LED_COLOR_ID_YELLOW>; 86 function = LED_FUNCTION_WAN; 87 default-state = "keep"; 88 }; 89 }; 90 }; 91 92 &cp0_gpio1 { 93 sim-select-hog { 94 gpio-hog; 95 gpios = <27 GPIO_ACTIVE_HIGH>; 96 output-high; 97 line-name = "sim-select"; 98 }; 99 }; 100 101 &cp0_mdio { 102 phy1: ethernet-phy@1 { 103 reg = <1>; 104 /* 105 * Configure LEDs default behaviour: 106 * - LED[0]: link/activity: On/blink (green) 107 * - LED[1]: link is 100/1000Mbps: On (yellow) 108 * - LED[2]: high impedance (floating) 109 * 110 * Configure LEDs electrical polarity 111 * - on-state: low 112 * - off-state: high (not hi-z, to avoid residual glow) 113 */ 114 marvell,reg-init = <3 16 0xf000 0x0a61>, 115 <3 17 0x003f 0x000a>; 116 117 leds { 118 #address-cells = <1>; 119 #size-cells = <0>; 120 121 led@0 { 122 reg = <0>; 123 color = <LED_COLOR_ID_GREEN>; 124 function = LED_FUNCTION_LAN; 125 default-state = "keep"; 126 }; 127 128 led@1 { 129 reg = <1>; 130 color = <LED_COLOR_ID_YELLOW>; 131 function = LED_FUNCTION_LAN; 132 default-state = "keep"; 133 }; 134 }; 135 }; 136 }; 137 138 &cp0_pinctrl { 139 pinctrl-0 = <&sim_select_pins>; 140 pintrl-names = "default"; 141 142 rear_button_pins: cp0-rear-button-pins { 143 marvell,pins = "mpp31"; 144 marvell,function = "gpio"; 145 }; 146 147 sim_select_pins: cp0-sim-select-pins { 148 marvell,pins = "mpp27"; 149 marvell,function = "gpio"; 150 }; 151 }; 152 153 /* 154 * SRDS #4 - USB 3.0 host on M.2 connector 155 * USB-2.0 Host on Type-A connector 156 */ 157 &cp0_usb3_1 { 158 phys = <&cp0_comphy4 1>, <&cp0_utmi1>; 159 phy-names = "comphy", "utmi"; 160 dr_mode = "host"; 161 status = "okay"; 162 }; 163 164 &expander0 { 165 m2-full-card-power-off-hog { 166 gpio-hog; 167 gpios = <2 GPIO_ACTIVE_LOW>; 168 output-low; 169 line-name = "m2-full-card-power-off"; 170 }; 171 172 m2-reset-hog { 173 gpio-hog; 174 gpios = <10 GPIO_ACTIVE_LOW>; 175 output-low; 176 line-name = "m2-reset"; 177 }; 178 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.