blob: 17e7d26933206811456e6aa78cafc82f05f80826 [file] [log] [blame]
b.liue9582032025-04-17 19:18:16 +08001// SPDX-License-Identifier: GPL-2.0
2/*
3 * Copyright (C) 2023 ASR Microelectronics Co., Ltd.
4 */
5
6/dts-v1/;
7#include "asr1806.dtsi"
8
9/ {
10 model = "ASR 1806(FALCON-T) Board EVB";
11 compatible = "asr,1803-evb", "asr,1803";
12
13 chosen {
14 bootargs = "root=/dev/mtdblock5 rootfstype=squashfs init=/etc/preinit noinitrd console=ttyS0,115200 mem=128M";
15 };
16
17 memory {
18 reg = <0x00000000 0x10000000>;
19 };
20
21 firmware {
22 optee {
23 compatible = "linaro,optee-tz";
24 method = "smc";
25 };
26 };
27
28 soc {
29 axi@d4200000 { /* AXI */
30 usbphy: usbphy@d4207000 {
31 status = "okay";
32 };
33#ifdef CONFIG_USB_DWC2_ASR_OTG /* otg mode */
34 usb: usb@c0000000 {
35 dr_mode = "otg";
36 pinctrl-names = "default","sleep";
37 pinctrl-0 = <&usb_id_pinmux &usb_host_pinmux>;
38 pinctrl-1 = <&usb_id_pinmux_slp &usb_host_pinmux>;
39 usbid_gpio = <99>;
40 edge_detect_gpio = <99>;
41 otg,use-gpio-vbus;
42 gpio-num = <122>;
43 status = "okay";
44 };
45#else
46 usb: usb@c0000000 {
47 status = "okay";
48 };
49#endif
50
51 eth0: asr-eth@0xd4281800 {
52 compatible = "asr,asr-eth";
53 pinctrl-names = "default", "rgmii-pins";
54 pinctrl-0 = <&emac_pmx_func0 &emac_pmx_func2 &emac_pmx_func3>;
55 pinctrl-1 = <&emac_pmx_func0 &emac_pmx_func1 &emac_pmx_func2 &emac_pmx_func3>;
56 reg = <0xd4281800 0x200>;
57 interrupts = <10 11>;
58 lpm-qos = <PM_QOS_CPUIDLE_BLOCK_AXI>;
59 clocks = <&soc_clocks ASR1803_CLK_EMAC
60 &soc_clocks ASR1803_CLK_EMAC_PTP>;
61 clock-names = "emac-clk", "ptp-clk";
62 ptp-support;
63 ptp-clk-rate = <100000000>;
64 status = "okay";
b.liub17525e2025-05-14 17:22:29 +080065 enable-suspend;
hj.shaof72d6ff2025-06-10 04:34:26 -070066 // reset-gpio = <&gpio 42 0>;
67 // reset-active-low;
68 // reset-delays-us = <100000 100000 100000>;
69 local-mac-address = [02 00 00 00 10 01];
b.liub17525e2025-05-14 17:22:29 +080070 //ldo-gpio = <&gpio 40 0>;
71 //ldo-active-low;
72 // ldo-delays-us = <0 100000 100000>;
73 //vmmc-supply = <0x19>;
74 mdio-clk-div = <254>;
b.liue9582032025-04-17 19:18:16 +080075 flow-control-threshold = <60 90>;
76 clk-tuning-enable;
77 /* clk-config(32bit)
78 *
79 * clk_sel(clk-config[23:16])
80 * RGMII:
81 * tx | clk_sel: 0 - from external RX clock
82 * 1 - from inverted external RX clock
83 * rx | clk_sel: 0 - from external RX clock
84 * 1 - from inverted external RX clock
85 *
86 * RMII:
87 * tx | clk_sel: 0 - RMII clock
88 * 1 - Inverted RMII clock
89 * rx | clk_sel: 0 - RMII clock
90 * 1 - Inverted RMII clock
91 *
92 */
93#if 0
94 /* enable 1000M phy*/
95 3v3-enable = <0>; /* IO voltage, 1 - 3.3v, 0 - 1.8v */
b.liub17525e2025-05-14 17:22:29 +080096 phy-handle = <&phy3>;
b.liue9582032025-04-17 19:18:16 +080097#else
98 /* enable 100M phy*/
b.liub17525e2025-05-14 17:22:29 +080099 3v3-enable = <0>; /* IO voltage, 1 - 3.3v, 0 - 1.8v */
hj.shaofe1632a2025-06-05 00:19:33 -0700100 phy-handle = <&phy0>;
b.liue9582032025-04-17 19:18:16 +0800101#endif
102 /* enable fix link for ethernet switch */
103 /*
104 fixed-link {
105 speed = <100>;
106 full-duplex;
107 phy-mode = "rmii";
108 };
109 */
110
111 mdio: mdio-bus {
112 #address-cells = <0x1>;
113 #size-cells = <0x0>;
114 /* YT8521 10M/100M/100OM 1.8V RGMII PHY */
115 phy0: phy@0 {
116 compatible = "ethernet-phy-ieee802.3-c22";
117 device_type = "ethernet-phy";
118 reg = <0x0>; /* set phy address*/
hj.shaof72d6ff2025-06-10 04:34:26 -0700119 rst-gpio = <&gpio 42 0>;
hj.shaofb3ba9b2025-06-19 02:53:56 -0700120 //#LYNQ_MODFIY modify for task-1618 2025/6/19 start
121 power-en-gpio = <&gpio 32 1>;
122 //#LYNQ_MODFIY modify for task-1618 2025/6/19 end
b.liue9582032025-04-17 19:18:16 +0800123 phy-mode = "rgmii";
hj.shaofe1632a2025-06-05 00:19:33 -0700124 // tx_rx_delay = <0xb 0x0>; /* 150ps per step*/
b.liue9582032025-04-17 19:18:16 +0800125 };
126
127 /* YT8512B 10M/100M 3.3V RMII PHY */
b.liub17525e2025-05-14 17:22:29 +0800128 // phy3: phy@3 {
129 // compatible = "ethernet-phy-ieee802.3-c22";
130 // device_type = "ethernet-phy";
131 // reg = <0x3>; /* set phy address*/
132 // phy-mode = "rmii";
133 // driver_strength = <0x3>;
134 // };
b.liue9582032025-04-17 19:18:16 +0800135
136 /* IP175D 10M/100M 3.3V RMII SWITCH */
137 phy1: phy@1 {
138 compatible = "ethernet-phy-ieee802.3-c22";
139 device_type = "ethernet-phy";
140 reg = <0x1>; /* set phy address*/
141 phy-mode = "rmii";
142 };
b.liub17525e2025-05-14 17:22:29 +0800143
144
145 /* jl 3103 phy */
146 phy3: phy@3 {
147 compatible = "ethernet-phy-ieee802.3-c22";
148 device_type = "ethernet-phy";
149 reg = <0x3>; /* set phy address*/
150 phy-mode = "rgmii-id";
151 lynq,jl3103=<100 0>;
152 };
b.liue9582032025-04-17 19:18:16 +0800153 };
154 };
155 qspi: spi@0xd420b000 {
156 asr,qspi-freq = <78000000>;
157 status = "okay";
158 };
zw.wang3ef3a312025-06-13 16:21:25 +0800159
160#if 0
b.liue9582032025-04-17 19:18:16 +0800161 /* SD card */
162 sdh0: sdh@d4280000 {
163 pinctrl-names = "default", "slow", "fast", "sleep";
164 pinctrl-0 = <&sdh0_pmx_func1 &sdh0_pmx_func2 &sdh0_pmx_func3>;
165 pinctrl-1 = <&sdh0_pmx_func1_slow &sdh0_pmx_func2_slow &sdh0_pmx_func3>;
166 pinctrl-2 = <&sdh0_pmx_func1_fast &sdh0_pmx_func2_fast &sdh0_pmx_func3>;
167 pinctrl-3 = <&sdh0_pmx_cd_wakeup>;
168 /*
169 * Genernal use, juse set vmmc-supply and vqmmc-supply
170 * vmmc-supply = <&supply1>
171 * vqmmc-supply = <&supply2>
172 *
173 * For compatibility, to select one from two supply source
174 * vmmc-supply = <&supply1 &supply1_backup>;
175 * vqmmc-supply = <&supply2 &supply2_backup>;
176 * vmmc2-supply = <&supply1_backup &supply1>;
177 * vqmmc2-supply = <&supply2_backup &supply2>;
178 */
179 vmmc-supply = <&vcc_sdh1>;
zw.wang5deb3e82025-05-30 11:29:23 +0800180 vqmmc-supply = <&pm802ldo6 &pm803ldo8>;
b.liue9582032025-04-17 19:18:16 +0800181#ifndef CONFIG_ASR_DSDS
182 vmmc2-supply = <&vcc_sdh1 &pm802ldo4>;
183 vqmmc2-supply = <&pm803ldo8 &pm802ldo6>;
184#endif
185 bus-width = <4>;
186 no-mmc;
187 no-sdio;
188 /*non-removable;
189 broken-cd;*/
190 wp-inverted;
191 asr,sdh-pm-runtime-en;
192 asr,sdh-host-caps-disable = <(MMC_CAP_UHS_SDR104)>;
193#if 1 /* CD via gpio */
zw.wang5deb3e82025-05-30 11:29:23 +0800194 //cd-gpios = <&gpio 90 1>;
b.liue9582032025-04-17 19:18:16 +0800195 asr,sdh-quirks2 = <(
196 SDHCI_QUIRK2_SET_AIB_MMC |
197 SDHCI_QUIRK2_PRESET_VALUE_BROKEN
198 )>;
199 asr,sdh-host-caps = <(
200 MMC_CAP_CD_WAKE
201 )>;
202 asr,sdh-quirks = <(
203 SDHCI_QUIRK_BROKEN_CARD_DETECTION |
204 SDHCI_QUIRK_BROKEN_TIMEOUT_VAL
205 )>;
206#else /* CD via SDH */
207 asr,sdh-quirks = <(
208 SDHCI_QUIRK_BROKEN_TIMEOUT_VAL
209 )>;
210 asr,sdh-quirks2 = <(
211 SDHCI_QUIRK2_SET_AIB_MMC |
212 SDHCI_QUIRK2_PRESET_VALUE_BROKEN |
213 SDHCI_QUIRK2_BASE_CLOCK_ALWAYS_ON
214 )>;
215#endif
216 /* prop "sdh-dtr-data":
217 <timing preset_rate src_rate tx_delay rx_delay tx_dline_reg rx_dline_reg> */
218 asr,sdh-dtr-data =
219 <PXA_MMC_TIMING_LEGACY PXA_SDH_DTR_26M PXA_SDH_DTR_104M 0 0 0 0>,
220 <PXA_MMC_TIMING_SD_HS PXA_SDH_DTR_52M PXA_SDH_DTR_104M 0 0 0 0>,
221 <PXA_MMC_TIMING_UHS_DDR50 PXA_SDH_DTR_52M PXA_SDH_DTR_104M 0 0 0 3>,
222 <PXA_MMC_TIMING_UHS_SDR50 PXA_SDH_DTR_104M PXA_SDH_DTR_208M 0 0 0 0>,
223 <PXA_MMC_TIMING_UHS_SDR104 PXA_SDH_DTR_208M PXA_SDH_DTR_208M 0 0 0 0>,
224 <PXA_MMC_TIMING_MAX PXA_SDH_DTR_PS_NONE PXA_SDH_DTR_104M 0 0 0 0>;
225 status = "okay";
226 };
zw.wang3ef3a312025-06-13 16:21:25 +0800227#endif
228 /* EMMC*/
229 sdh0: sdh@d4280000 {
230 pinctrl-names = "default", "slow", "fast";
231 pinctrl-0 = <&sdh0_pmx_func1 &sdh0_pmx_func2 &sdh0_pmx_func3>;
232 pinctrl-1 = <&sdh0_pmx_func1_slow &sdh0_pmx_func2_slow &sdh0_pmx_func3>;
233 pinctrl-2 = <&sdh0_pmx_func1_fast &sdh0_pmx_func2_fast &sdh0_pmx_func3>;
234 vmmc-supply = <&pm803ldo6 &pm803ldo8>;
235 bus-width = <4>;
236 no-sdio;
237 no-sd;
238 non-removable;
239 broken-cd;
240 wp-inverted;
241 asr,sdh-pm-runtime-en;
242 cap-mmc-highspeed;
243 mmc-ddr-1_8v;
244 asr,sdh-host-caps-disable = <(MMC_CAP_1_2V_DDR)>;
245 asr,sdh-host-caps2-disable = <(MMC_CAP2_HSX00_1_2V | MMC_CAP2_HS400 |MMC_CAP2_HS200)>;
246 asr,sdh-host-caps2 = <(
247 MMC_CAP2_ONLY_1_8V
248 )>;
249 asr,sdh-quirks = <(
250 SDHCI_QUIRK_BROKEN_CARD_DETECTION |
251 SDHCI_QUIRK_BROKEN_TIMEOUT_VAL
252 )>;
253 asr,sdh-quirks2 = <(
254 SDHCI_QUIRK2_SET_AIB_MMC |
255 SDHCI_QUIRK2_PRESET_VALUE_BROKEN
256 )>;
257 /* prop "sdh-dtr-data":
258 <timing preset_rate src_rate tx_delay rx_delay tx_dline_reg rx_dline_reg> */
259 asr,sdh-dtr-data =
260 <PXA_MMC_TIMING_LEGACY PXA_SDH_DTR_26M PXA_SDH_DTR_104M 0 0 0 0>,
261 <PXA_MMC_TIMING_MMC_HS PXA_SDH_DTR_52M PXA_SDH_DTR_104M 0 0 0 0>,
262 <PXA_MMC_TIMING_MMC_DDR52 PXA_SDH_DTR_52M PXA_SDH_DTR_104M 0 0 0 3>,
263 <PXA_MMC_TIMING_MMC_HS200 PXA_SDH_DTR_208M PXA_SDH_DTR_208M 53 0 0 0>,
264 <PXA_MMC_TIMING_MAX PXA_SDH_DTR_PS_NONE PXA_SDH_DTR_89M 0 0 0 0>;
265 status = "okay";
266 };
b.liue9582032025-04-17 19:18:16 +0800267
268 /* SDIO */
269 sdh1: sdh@d4280800 {
270 pinctrl-names = "default", "fast", "sleep";
b.liub17525e2025-05-14 17:22:29 +0800271 pinctrl-0 = <&sdh1_pmx_func1 &sdh1_pmx_func2>;
272 pinctrl-1 = <&sdh1_pmx_func1_fast &sdh1_pmx_func2_fast>;
273 /* pinctrl-2 = <&sdh1_pmx_edge_wakeup>;*/
b.liue9582032025-04-17 19:18:16 +0800274 bus-width = <4>;
275 no-mmc;
276 no-sd;
277 non-removable;
278 keep-power-in-suspend;
279 enable-sdio-wakeup;
280 /* clk-scaling-config:
281 <up_threshold down_threshold polling_interval> */
282 clk-scaling-config = <25 12 200>;
283 min-ddr-qos = <156000 312000 400000>;
284 asr,sdh-pm-runtime-en;
285 asr,sdh-quirks = <(
286 SDHCI_QUIRK_BROKEN_CARD_DETECTION |
287 SDHCI_QUIRK_BROKEN_TIMEOUT_VAL
288 )>;
289 asr,sdh-quirks2 = <(
290 SDHCI_QUIRK2_NO_TIMER_RETUNING |
291 SDHCI_QUIRK2_PRESET_VALUE_BROKEN |
292 SDHCI_QUIRK2_BASE_CLOCK_ALWAYS_ON
293 )>;
294 asr,sdh-pm-caps = <(MMC_PM_KEEP_POWER)>;
295 asr,sdh-host-caps2 = <(
296 MMC_CAP2_ONLY_1_8V |
297 MMC_CAP2_DISABLE_PROBE_CDSCAN |
298 MMC_CAP2_CLK_SCALE |
299 MMC_CAP2_BUS_CLK_NO_SCALE
300 )>;
301 /* prop "sdh-dtr-data":
302 <timing preset_rate src_rate tx_delay rx_delay tx_dline_reg rx_dline_reg> */
303 asr,sdh-dtr-data =
304 <PXA_MMC_TIMING_LEGACY PXA_SDH_DTR_26M PXA_SDH_DTR_104M 0 0 0 0>,
305 <PXA_MMC_TIMING_SD_HS PXA_SDH_DTR_45M PXA_SDH_DTR_89M 0 0 0 0>,
306 <PXA_MMC_TIMING_UHS_DDR50 PXA_SDH_DTR_52M PXA_SDH_DTR_104M 0 0 0 3>,
307 <PXA_MMC_TIMING_UHS_SDR50 PXA_SDH_DTR_83M PXA_SDH_DTR_83M 0 0 0 3>,
b.liub17525e2025-05-14 17:22:29 +0800308 //<PXA_MMC_TIMING_UHS_SDR104 PXA_SDH_DTR_208M PXA_SDH_DTR_208M 0 0 0 0>,
309 <PXA_MMC_TIMING_UHS_SDR104 PXA_SDH_DTR_52M PXA_SDH_DTR_52M 0 0 0 0>,
b.liue9582032025-04-17 19:18:16 +0800310 <PXA_MMC_TIMING_MAX PXA_SDH_DTR_PS_NONE PXA_SDH_DTR_89M 0 0 0 0>;
311 status = "okay";
312 };
313 pcie0: pcie@0xd4288000{
314 reset-gpios = <&gpio 42 0 >;
b.liub17525e2025-05-14 17:22:29 +0800315 status = "disbabled";
b.liue9582032025-04-17 19:18:16 +0800316 };
317 pciephy0: pcie-phy@d4206000 {
318 status = "okay";
319 };
320 };
321
322 apb@d4000000 {
323 ssp_dai1: pxa-ssp-dai@1 {
324 compatible = "asr,pxa-ssp-dai";
325 reg = <0x1 0x0>;
326
327 port = <&ssp1>;
328 pinctrl-names = "default","ssp";
329 pinctrl-0 = <&i2s_gpio>;
330 pinctrl-1 = <&i2s_func>;
331 ssp-gpio = <&gpio 25 0 &gpio 26 0 &gpio 27 0 &gpio 28 0>;
332
333 dmas = <&pdma0 54 1
334 &pdma0 55 1>;
335 dma-names = "rx", "tx";
336
337 platform_driver_name = "pdma_platform";
338 burst_size = <4>;
339 playback_period_bytes = <2048>;
340 playback_buffer_bytes = <4096>;
341 capture_period_bytes = <2048>;
342 capture_buffer_bytes = <4096>;
343 };
344 mfpr: mfpr@d401e000 {
345 status = "okay";
346 /* intend to replace lpm-board-cfg
347 no-apbsd-in-d1pp = <0x1>; //"wakeup-state-d1pp"
348 pin1:pin1@d401e01B0 {
349 offset = <0x1B0>;
350 udr-cfg = <0xA040>;
351 };
352 pin2:pin2@d401e01B4 {
353 offset = <0x1B4>;
354 udr-cfg = <0xA040>;
355 };
356 */
357 };
358 timer0: timer@d4014000 {
359 status = "okay";
360 };
361 uart1: uart@d4017000 { /* nezhas evb use ap uart */
362 pinctrl-names = "default","sleep";
363 pinctrl-0 = <&uart1_pmx_func1 &uart1_pmx_func2>;
364 pinctrl-1 = <&uart1_pmx_func1_sleep &uart1_pmx_func2>;
b.liub17525e2025-05-14 17:22:29 +0800365 //edge-wakeup-gpio = <&gpio 29 0>; /* GPIO29: AP UART rx pin */
b.liue9582032025-04-17 19:18:16 +0800366 status = "okay";
367 };
368 uart2: uart@d4036000 {
369 pinctrl-names = "default";
hj.shao9f48a912025-06-11 00:19:29 -0700370
371 //#LYNQ_MODFIY modify for task-1618 2025/6/11 start
372 pinctrl-0 = <&gps_pmx_uart_rxd &gps_pmx_uart_txd>; //&gps_pmx_func_cts_rts>;
373 //#LYNQ_MODFIY modify for task-1618 2025/6/11 end
b.liue9582032025-04-17 19:18:16 +0800374 status = "okay";
375 };
376 uart3: uart@d4018000 {
377 pinctrl-names = "default";
378 pinctrl-0 = <&uart3_pmx_func>;
b.liub17525e2025-05-14 17:22:29 +0800379 status = "okay";
b.liue9582032025-04-17 19:18:16 +0800380 };
381 uart4: uart@d401f000 {
382 pinctrl-names = "default";
b.liub17525e2025-05-14 17:22:29 +0800383 pinctrl-0 = <&uart4_pmx_func>; /*BAUD :9600*/
384 /*pinctrl-0 = <&uart4_pmx_func_rxd &uart4_pmx_func_txd &uart4_pmx_func_cts_rts>;*/
385 status = "okay";
b.liue9582032025-04-17 19:18:16 +0800386 };
387 rtc: rtc@d4010000 {
388 status = "okay";
389 };
390 pmx: pinmux@d401e000 {
391 /* pin base = base_addr / 4, nr pins & gpio function */
392 pinctrl-single,gpio-range = <
393 /*
394 * GPIO number is hardcoded for range at here.
395 * In gpio chip, GPIO number is not hardcoded for range.
396 * Since one gpio pin may be routed to multiple pins,
397 * define these gpio range in pxa910-dkb.dts not pxa910.dtsi.
398 */
399 /*&range 80 4 0 */ /* GPIO25 ~ GPIO28 */
400 &range 55 32 0 /* GPIO0 ~ GPIO31 */
401 &range 87 32 0 /* GPIO32 ~ GPIO63 */
402 &range 119 32 0 /* GPIO64 ~ GPIO95 */
403 &range 151 32 0 /* GPIO96 ~ GPIO127 */
404 >;
405
406 ssp0_pmx_func: ssp0_pmx_func {
407 pinctrl-single,pins = <
408 GPIO36 AF1 /* TXD */
409 GPIO35 AF1 /* RXD */
410 GPIO34 AF1 /* FRM */
411 /*GPIO34 AF0*/ /* FRM *//* DXS101 Use the config of Cs-gpios */
412 GPIO33 AF1 /* SCLK */
413 >;
b.liub17525e2025-05-14 17:22:29 +0800414 DS_SLOW0;PULL_NONE;EDGE_NONE;SL_NORMAL; //DS_MEDIUM modify for overvoltage
415 };
416 ssp2_pmx_func: ssp2_pmx_func {
417 pinctrl-single,pins = <
418 GPIO37 AF3 /* TXD */
419 GPIO38 AF3 /* SCLK */
420 GPIO39 AF3 /* FRM */
421 GPIO40 AF3 /* RXD */
422 >;
423 DS_SLOW0;PULL_NONE;EDGE_NONE;SL_NORMAL; //DS_MEDIUM modify for overvoltage
b.liue9582032025-04-17 19:18:16 +0800424 };
425 lcd_bl_func: lcd_bl_func {
426 pinctrl-single,pins = <
b.liub17525e2025-05-14 17:22:29 +0800427 /* VCXO_OUT AF1 GPIO126, lcd bl */
428 /* GPIO24 AF0 reset */
429 /* GPIO22 AF0 lcd d/c */
b.liue9582032025-04-17 19:18:16 +0800430 >;
431 MFP_DEFAULT;
432 };
433 uart1_pmx_func1: uart1_pmx_func1 {
434 pinctrl-single,pins = <
435 GPIO29 AF1
436 >;
437 MFP_DEFAULT;
438 };
439 uart1_pmx_func2: uart1_pmx_func2 {
440 pinctrl-single,pins = <
441 GPIO30 AF1
442 >;
443 MFP_DEFAULT;
444 };
445 uart1_pmx_func1_sleep: uart1_pmx_func1_sleep {
446 pinctrl-single,pins = <
447 GPIO29 AF1
448 >;
b.liub17525e2025-05-14 17:22:29 +0800449 DS_MEDIUM;PULL_NONE;EDGE_NONE;SL_NORMAL;
b.liue9582032025-04-17 19:18:16 +0800450 };
451 twsi0_pmx_func: twsi0_pmx_func {
452 pinctrl-single,pins = <
453 GPIO49 AF1
454 GPIO50 AF1
455 >;
b.liub17525e2025-05-14 17:22:29 +0800456 DS_MEDIUM;PULL_NONE;EDGE_NONE;LPM_FLOAT;
b.liue9582032025-04-17 19:18:16 +0800457 };
458 twsi0_pmx_gpio: twsi0_pmx_gpio {
459 pinctrl-single,pins = <
460 GPIO49 AF0
461 GPIO50 AF0
462 >;
b.liub17525e2025-05-14 17:22:29 +0800463 DS_MEDIUM;PULL_NONE;EDGE_NONE;LPM_FLOAT;
b.liue9582032025-04-17 19:18:16 +0800464 };
b.liub17525e2025-05-14 17:22:29 +0800465#if 1
b.liue9582032025-04-17 19:18:16 +0800466 twsi1_pmx_func: twsi1_pmx_func {
467 pinctrl-single,pins = <
468 GPIO10 AF1
469 GPIO11 AF1
470 >;
b.liub17525e2025-05-14 17:22:29 +0800471 DS_SLOW0;PULL_NONE;EDGE_NONE;LPM_FLOAT;
b.liue9582032025-04-17 19:18:16 +0800472 };
473 twsi1_pmx_gpio: twsi1_pmx_gpio {
474 pinctrl-single,pins = <
475 GPIO10 AF0
476 GPIO11 AF0
477 >;
b.liub17525e2025-05-14 17:22:29 +0800478 DS_SLOW0;PULL_NONE;EDGE_NONE;LPM_FLOAT;
b.liue9582032025-04-17 19:18:16 +0800479 };
480#endif
481 /* no pull, no LPM */
482 dvc_pmx_func: dvc_pmx_func {
483 /* hw-dvc */
484 pinctrl-single,pins = <
485 TDS_DIO0 AF0
486 TDS_DIO1 AF0
487 >;
488 DS_MEDIUM;PULL_FLOAT;EDGE_NONE;SL_NORMAL;
489 };
490 leds_pmx_func: leds_pmx_func {
491 pinctrl-single,pins = <
492 DF_IO10 AF1
493 DF_IO11 AF1
494 DF_IO12 AF1
495 >;
496 DS_MEDIUM;PULL_FLOAT;EDGE_NONE;SL_NORMAL;
497 };
498
499 gps_pmx_onoff: gps_pmx_onoff {
500 pinctrl-single,pins = <
501 TDS_TXREV AF1
502 >;
503 DS_MEDIUM;PULL_DOWN;EDGE_NONE;SL_NORMAL;
504 };
505 gps_pmx_reset: gps_pmx_reset {
506 pinctrl-single,pins = <
507 TDS_RXON AF1
508 >;
509 DS_MEDIUM;PULL_DOWN;EDGE_NONE;SL_NORMAL;
510 };
b.liub17525e2025-05-14 17:22:29 +0800511
512 //zqy
513 gnss_clk_on: gnss_clk_on {
514 pinctrl-single,pins = <
515 GPIO43 AF2 /*32K CLK */
516
517 /*VCXO_REQ AF1 GPIO[125] GPS_WAKE_HOST */
518 GPIO47 AF0 /* HOST_WAKE_GPS */
519 GPIO45 AF0 /*RESET */
520 CLK_REQ AF1 /*sleep en*/
521
522 >;
523 DS_MEDIUM;PULL_NONE;EDGE_NONE;SL_LOW;
524 };
b.liue9582032025-04-17 19:18:16 +0800525 gps_pmx_uart_rxd: gps_pmx_uart_rxd {
526 /* gps dedicated uart */
527 pinctrl-single,pins = <
528 GPIO51 AF1
hj.shao9f48a912025-06-11 00:19:29 -0700529
530 //#LYNQ_MODFIY modify for task-1618 2025/6/11 start
531 /*GPIO32 AF1*/
532 //#LYNQ_MODFIY modify for task-1618 2025/6/11 end
b.liue9582032025-04-17 19:18:16 +0800533 >;
b.liub17525e2025-05-14 17:22:29 +0800534 DS_MEDIUM;PULL_NONE;EDGE_NONE;SL_NORMAL;
b.liue9582032025-04-17 19:18:16 +0800535 };
536 gps_pmx_uart_txd: gps_pmx_uart_txd {
537 /* gps dedicated uart */
538 pinctrl-single,pins = <
539 GPIO52 AF1
hj.shao9f48a912025-06-11 00:19:29 -0700540 //#LYNQ_MODFIY modify for task-1618 2025/6/11 start
541 /*GPIO31 AF1*/
542 //#LYNQ_MODFIY modify for task-1618 2025/6/11 end
b.liue9582032025-04-17 19:18:16 +0800543 >;
b.liub17525e2025-05-14 17:22:29 +0800544 DS_MEDIUM;PULL_NONE;EDGE_NONE;SL_NORMAL;
b.liue9582032025-04-17 19:18:16 +0800545 };
b.liub17525e2025-05-14 17:22:29 +0800546 gps_pmx_func_cts_rts: gps_pmx_func_cts_rts {
547 pinctrl-single,pins = <
548 GPIO31 AF1 /* cts */
549 GPIO32 AF1 /* rts */
550 >;
551 DS_MEDIUM;PULL_NONE;EDGE_NONE;SL_NORMAL;
552 };
553
b.liue9582032025-04-17 19:18:16 +0800554 uart3_pmx_func: uart3_pmx_func {
555 pinctrl-single,pins = <
556 GPIO53 AF1 /* RX */
yu.dongca721ca2025-06-04 07:21:21 -0700557 /* GPIO54 AF1 TX */
b.liue9582032025-04-17 19:18:16 +0800558 >;
559 MFP_DEFAULT;
560 };
b.liub17525e2025-05-14 17:22:29 +0800561
562
563 uart4_pmx_func_rxd: uart4_pmx_func_rxd {
564 pinctrl-single,pins = <
565 GPIO37 AF2
566 GPIO40 AF2
567 >;
568 DS_MEDIUM;PULL_NONE;EDGE_NONE;SL_NORMAL;
569 };
570 uart4_pmx_func_txd: uart4_pmx_func_txd {
571 pinctrl-single,pins = <
572 GPIO38 AF2
573 GPIO39 AF2
574 >;
575 DS_MEDIUM;PULL_NONE;EDGE_NONE;SL_NORMAL;
576 };
577
578 uart4_pmx_func_cts_rts: uart4_pmx_func_cts_rts {
579 pinctrl-single,pins = <
580 GPIO39 AF2
581 GPIO40 AF2
582 >;
583 DS_MEDIUM;PULL_NONE;EDGE_NONE;SL_NORMAL;
584 };
b.liue9582032025-04-17 19:18:16 +0800585 uart4_pmx_func: uart4_pmx_func {
586 pinctrl-single,pins = <
587 GPIO44 AF1 /* RX */
588 GPIO45 AF1 /* TX */
589 >;
b.liub17525e2025-05-14 17:22:29 +0800590 DS_MEDIUM;PULL_NONE;EDGE_NONE;SL_NORMAL;
b.liue9582032025-04-17 19:18:16 +0800591 };
592 panel_rst_func: panel_rst_func {
593 pinctrl-single,pins = <
594 DF_nCS1 AF1
595 >;
596 DS_MEDIUM;PULL_FLOAT;EDGE_NONE;SL_NORMAL;
597 };
598
599 sd_ldo_en: sd_ldo_en {
600 pinctrl-single,pins = <
601 GPIO45 AF0
602 >;
603 MFP_PULL_DOWN;
604 };
605 sdh0_pmx_func1: sdh0_pmx_func1 {
606 pinctrl-single,pins = <
607 MMC1_DAT3 AF0
608 MMC1_DAT2 AF0
609 MMC1_DAT1 AF0
610 MMC1_DAT0 AF0
611 MMC1_CMD AF0
612 >;
613 DS_MEDIUM;PULL_NONE;EDGE_NONE;SL_NORMAL;
614 };
615 sdh0_pmx_func2: sdh0_pmx_func2 {
616 pinctrl-single,pins = <
617 MMC1_CLK AF0
618 >;
619 DS_MEDIUM;PULL_NONE;EDGE_NONE;
620 };
621 sdh0_pmx_func3: sdh0_pmx_func3 {
622 pinctrl-single,pins = <
623 MMC1_CD AF1
624 >;
625 DS_MEDIUM;PULL_UP;EDGE_NONE;SL_NORMAL;
626 };
627 sdh0_pmx_cd_wakeup: sdh0_pmx_func1_cd_wakeup {
628 pinctrl-single,pins = <
629 MMC1_CD AF1
630 >;
631 DS_MEDIUM;PULL_UP;EDGE_BOTH;SL_NORMAL;
632 };
633 sdh0_pmx_func1_slow: sdh0_pmx_func1_slow {
634 pinctrl-single,pins = <
635 MMC1_DAT3 AF0
636 MMC1_DAT2 AF0
637 MMC1_DAT1 AF0
638 MMC1_DAT0 AF0
639 MMC1_CMD AF0
640 >;
641 DS_FAST0;PULL_NONE;EDGE_NONE;SL_NORMAL;
642 };
643 sdh0_pmx_func2_slow: sdh0_pmx_func2_slow {
644 pinctrl-single,pins = <
645 MMC1_CLK AF0
646 >;
647 DS_FAST0;PULL_NONE;EDGE_NONE;
648 };
649 sdh0_pmx_func1_fast: sdh0_pmx_func1_fast {
650 pinctrl-single,pins = <
651 MMC1_DAT3 AF0
652 MMC1_DAT2 AF0
653 MMC1_DAT1 AF0
654 MMC1_DAT0 AF0
655 MMC1_CMD AF0
656 >;
657 DS_FAST1;PULL_NONE;EDGE_NONE;SL_NORMAL;
658 };
659 sdh0_pmx_func2_fast: sdh0_pmx_func2_fast {
660 pinctrl-single,pins = <
661 MMC1_CLK AF0
662 >;
663 DS_FAST1;PULL_NONE;EDGE_NONE;
664 };
665 sdh1_pmx_func1_fast: sdh1_pmx_func1_fast {
666 pinctrl-single,pins = <
667 TDS_DIO13 AF0 /* WLAN_DAT3 */
668 TDS_DIO14 AF0 /* WLAN_DAT2 */
669 TDS_DIO15 AF0 /* WLAN_DAT1 */
670 TDS_DIO16 AF0 /* WLAN_DAT0 */
671 TDS_DIO17 AF0 /* WLAN_CMD */
672 >;
673 DS_FAST0;PULL_NONE;EDGE_NONE;SL_NORMAL;
674 };
675 sdh1_pmx_func2_fast: sdh1_pmx_func2_fast {
676 pinctrl-single,pins = <
677 TDS_DIO18 AF0 /* WLAN_CLK */
678 >;
679 DS_FAST0;PULL_DOWN;EDGE_NONE;SL_NORMAL;
680 };
681 sdh1_pmx_func1: sdh1_pmx_func1 {
682 pinctrl-single,pins = <
683 TDS_DIO13 AF0 /* WLAN_DAT3 */
684 TDS_DIO14 AF0 /* WLAN_DAT2 */
685 TDS_DIO15 AF0 /* WLAN_DAT1 */
686 TDS_DIO16 AF0 /* WLAN_DAT0 */
687 TDS_DIO17 AF0 /* WLAN_CMD */
688 >;
689 DS_MEDIUM;PULL_NONE;EDGE_NONE;SL_LOW;
690 };
691 sdh1_pmx_func2: sdh1_pmx_func2 {
692 pinctrl-single,pins = <
693 TDS_DIO18 AF0 /* WLAN_CLK */
694 >;
695 DS_MEDIUM;PULL_DOWN;EDGE_NONE;SL_LOW;
696 };
697 sdh1_pmx_func3: sdh1_pmx_func3 {
698 pinctrl-single,pins = <
699 GPIO10 AF0 /* VCXO_REQ AF1 WLAN_WAKE_HOST */
700 >;
701 MFP_PULL_DOWN;
702 };
703 sdh1_pmx_edge_wakeup: sdh1_pmx_edge_wakeup {
704 pinctrl-single,pins = <
705 GPIO10 AF0 /* VCXO_REQ AF1 */
706 >;
707 DS_MEDIUM;PULL_DOWN;EDGE_RISE;SL_NORMAL;
708 };
709 sdh1_pmx_pd_rst_off: sdh1_pmx_pd_rst_off {
710 pinctrl-single,pins = <
b.liub17525e2025-05-14 17:22:29 +0800711 /* GPIO11 AF0 GPIO31 AF0 WLAN_PDn */
712 /* GPIO08 AF0 GPIO32 AF0 LDO_EN */
713 MMC1_CD AF1
b.liue9582032025-04-17 19:18:16 +0800714 >;
715 MFP_PULL_DOWN;
716 };
717 sdh1_pmx_pd_rst_on: sdh1_pmx_pd_rst_on {
718 pinctrl-single,pins = <
b.liub17525e2025-05-14 17:22:29 +0800719 /* GPIO11 AF0 GPIO31 AF0 WLAN_PDn */
720 /* GPIO08 AF0 GPIO32 AF0 LDO_EN */
721 MMC1_CD AF1
722 >;
723 MFP_PULL_UP;
724 };
725
726
727 mbtk_sdh_pmx_off: mbtk_sdh_pmx_off {
728 pinctrl-single,pins = <
729 VCXO_REQ AF1 //gpio125 wlan en
730 GPIO123 AF1 //wlan pwr en
you.chen9824a892025-06-04 20:23:26 +0800731 /*VCXO_OUT AF1 /*gpio127 wifi wake*/
b.liub17525e2025-05-14 17:22:29 +0800732 >;
733 MFP_PULL_DOWN;
734 };
735 mbtk_sdh_pmx_on: mbtk_sdh_pmx_on {
736 pinctrl-single,pins = <
737 VCXO_REQ AF1 //gpio125 wlan en
738 GPIO123 AF1 //wlan pwr en
you.chen9824a892025-06-04 20:23:26 +0800739 /*VCXO_OUT AF1 /*gpio127 wifi wake*/
b.liue9582032025-04-17 19:18:16 +0800740 >;
741 MFP_PULL_UP;
742 };
743 alc5616_pmx_func1: alc5616_pmx_func1 {
744 pinctrl-single,pins = <
b.liub17525e2025-05-14 17:22:29 +0800745 /* GPIO08 AF0 AP_UART1_DCD_N -> CODEC_IRQ */
b.liue9582032025-04-17 19:18:16 +0800746 GPIO20 AF7 /* MCLK:I2S_SYSCLK */
747 >;
748 MFP_DEFAULT;
749 };
750 alc5616_pmx_func2: alc5616_pmx_func2 {
751 pinctrl-single,pins = <
b.liub17525e2025-05-14 17:22:29 +0800752 /* GPIO08 AF0 AP_UART1_DCD_N -> CODEC_IRQ */
753 GPIO20 AF7 /* MCLK:I2S_SYSCLK */
754 >;
755 MFP_DEFAULT;
756 };
757
758 es8311_pa_func1: es8311_pa_func1 {
759 pinctrl-single,pins = <
760 GPIO20 AF7 /* MCLK:I2S_SYSCLK */
yu.dongb3e49372025-06-23 23:57:56 -0700761 GPIO54 AF0 /* CODEC_VDDD_EN */
762 GPIO24 AF0 /* NAD_PA_PWR_EN */
b.liub17525e2025-05-14 17:22:29 +0800763 >;
764 MFP_DEFAULT;
765 };
766 es8311_pa_func2: es8311_pa_func2 {
767 pinctrl-single,pins = <
b.liue9582032025-04-17 19:18:16 +0800768 GPIO20 AF7 /* MCLK:I2S_SYSCLK */
yu.dongb3e49372025-06-23 23:57:56 -0700769 GPIO54 AF0 /* CODEC_VDDD_EN */
770 GPIO24 AF0 /* NAD_PA_PWR_EN */
b.liue9582032025-04-17 19:18:16 +0800771 >;
772 MFP_DEFAULT;
773 };
774 audio_pa_pmx_func: audio_pa_pmx_func {
775 pinctrl-single,pins = <
776 GPIO14 AF0 /* PA */
777 >;
778 MFP_DEFAULT;
779 };
780 ecall_pmx_func: ecall_pmx_func {
781 pinctrl-single,pins = <
782 GPIO08 AF0 /* auto mode ecall */
783 GPIO09 AF0 /* manual mode ecall */
784 >;
785 MFP_DEFAULT;
786 };
787 slic_pmx_func1: slic_pmx_func1 {
788 pinctrl-single,pins = <
789 GPIO20 AF0 /* SLIC_INT, GPIO20 */
790 VCXO_OUT AF1 /* GPIO127, SLIC_3V3LDO_EN/LCD_BK_EN */
791 >;
792 MFP_DEFAULT;
793 };
794 slic_pmx_func2: slic_pmx_func2 {
795 pinctrl-single,pins = <
796 GPIO21 AF0 /* SLIC_RESET, GPIO21 */
797 >;
798 MFP_DEFAULT;
799 };
800 slic_pmx_func1_sleep: slic_pmx_func1_sleep {
801 pinctrl-single,pins = <
802 GPIO20 AF0 /* SLIC_INT, GPIO20 */
803 >;
804 DS_MEDIUM;PULL_UP;EDGE_BOTH;SL_NORMAL;
805 };
806
807 otg_vbus_func: otg_vbus_func {
808 pinctrl-single,pins = <
b.liub17525e2025-05-14 17:22:29 +0800809 /* VBUS_DRV AF1 GPIO[122] */
b.liue9582032025-04-17 19:18:16 +0800810 >;
811 DS_MEDIUM;PULL_DOWN;EDGE_NONE;
812 };
813
814 emac_pmx_func0: emac_pmx_func0 {
815 pinctrl-single,pins = <
816 GPIO00 AF1 /* GMAC1_RX_DV */
817 GPIO01 AF1 /* GMAC1_RX_D0 */
818 GPIO02 AF1 /* GMAC1_RX_D1 */
819 GPIO03 AF1 /* GMAC1_RX_CLK */
820 /* GPIO04 AF1 GMAC1_RX_D2 */
821 /* GPIO05 AF1 GMAC1_RX_D3 */
822 GPIO06 AF1 /* GMAC1_TX_D0 */
823 GPIO07 AF1 /* GMAC1_TX_D1 */
824 /* GPIO12 AF1 GMAC1_TX_CLK */
825 /* GPIO13 AF1 GMAC1_TX_D2 */
826 /* GPIO14 AF1 GMAC1_TX_D3 */
827 GPIO15 AF1 /* GMAC1_TX_EN */
828 GPIO16 AF1 /* GMAC1_TX_MDC */
829 /* GPIO17 AF1 GMAC1_TX_MDIO */
830 >;
831 DS_MEDIUM;PULL_DOWN;EDGE_NONE;SL_NORMAL;
832 };
833 emac_pmx_func1: emac_pmx_func1 {
834 pinctrl-single,pins = <
835 GPIO04 AF1 /* GMAC1_RX_D2 */
836 GPIO05 AF1 /* GMAC1_RX_D3 */
837 GPIO12 AF1 /* GMAC1_TX_CLK */
838 GPIO13 AF1 /* GMAC1_TX_D2 */
839 GPIO14 AF1 /* GMAC1_TX_D3 */
840 >;
841 DS_MEDIUM;PULL_DOWN;EDGE_NONE;SL_NORMAL;
842 };
843 emac_pmx_func2: emac_pmx_func2 {
844 pinctrl-single,pins = <
845 GPIO17 AF1 /* GMAC1_TX_MDIO */
846 GPIO18 AF1 /* GMAC1_TX_INT_N */
847 >;
848 DS_MEDIUM;PULL_UP;EDGE_NONE;SL_NORMAL;
849 };
850 emac_pmx_func3: emac_pmx_func3 {
851 pinctrl-single,pins = <
b.liub17525e2025-05-14 17:22:29 +0800852 GPIO42 AF0 /* RESET */
hj.shaofb3ba9b2025-06-19 02:53:56 -0700853 //#LYNQ_MODFIY modify for task-1618 2025/6/19 start
854 GPIO32 AF0 /* POWER EN */
855 //#LYNQ_MODFIY modify for task-1618 2025/6/19 end
b.liub17525e2025-05-14 17:22:29 +0800856 /* GPIO40 AF0 LDO_EN */
b.liue9582032025-04-17 19:18:16 +0800857 >;
858 DS_SLOW0;PULL_FLOAT;EDGE_NONE;SL_NORMAL;
859 };
860 usim1_pmx_func: usim1_pmx_func {
861 pinctrl-single,pins = <
yq.wang107f9862025-05-12 15:44:50 +0800862 PRI_TCK AF1
b.liue9582032025-04-17 19:18:16 +0800863 >;
864 DS_MEDIUM;PULL_UP;EDGE_NONE;SL_NORMAL;
865 };
866 usim1_pmx_func_sleep: usim1_pmx_func_sleep {
867 pinctrl-single,pins = <
yq.wang107f9862025-05-12 15:44:50 +0800868 PRI_TCK AF1
b.liue9582032025-04-17 19:18:16 +0800869 >;
870 DS_MEDIUM;PULL_UP;EDGE_BOTH;SL_NORMAL;
871 };
872 usim2_pmx_func: usim2_pmx_func {
873 pinctrl-single,pins = <
874 GPIO44 AF0
875 >;
876 DS_MEDIUM;PULL_UP;EDGE_NONE;SL_NORMAL;
877 };
878 usim2_pmx_func_sleep: usim2_pmx_func_sleep {
879 pinctrl-single,pins = <
880 GPIO44 AF0
881 >;
882 DS_MEDIUM;PULL_UP;EDGE_BOTH;SL_NORMAL;
883 };
884 pcie_pmx_pd_rst_off: pcie_pmx_pd_rst_off {
885 pinctrl-single,pins = <
886 GPIO42 AF0 /* PERST_N */
887 GPIO24 AF0 /* DC_EN */
888 >;
889 MFP_PULL_DOWN;
890 };
891 pcie_pmx_pd_rst_on: pcie_pmx_pd_rst_on {
892 pinctrl-single,pins = <
893 GPIO42 AF0 /* PERST_N */
894 GPIO24 AF0 /* DC_EN */
895 >;
896 MFP_PULL_UP;
897 };
b.liub17525e2025-05-14 17:22:29 +0800898 pin_func_work: pin_func_work {
899 pinctrl-single,pins = <
900
901 GPIO08 AF0 /*T108 status led* /
902
903 VBUS_DRV AF2 /*32k*/
904
905
906 GPIO46 AF0 /*wifi en*/
907
908 GPIO19 AF0 /*bt en*/
909
910 >;
911 MFP_DEFAULT;
912 };
913
914
915 sc_ext_int0: sc_ext_int0 {
916 pinctrl-single,pins = <
917 GPIO21 AF0
918 >;
919 DS_MEDIUM;PULL_NONE;EDGE_BOTH;SL_NORMAL;
920 };
921 sc_ext_int1: sc_ext_int1 {
922 pinctrl-single,pins = <
923 GPIO22 AF0
924 >;
925 MFP_DEFAULT;
926 };
927
928 sc_ext_int2: sc_ext_int2 {
929 pinctrl-single,pins = <
930 GPIO23 AF0
931 >;
932 MFP_DEFAULT;
933 };
934
935
936 sc_ext_int3: sc_ext_int3 {
937 pinctrl-single,pins = <
938 GPIO24 AF0
939 >;
940 MFP_DEFAULT;
941 };
942
943
944 mbtk_plat_irq_func: mbtk_plat_irq_func {
945 pinctrl-single,pins = <
946
you.chen9824a892025-06-04 20:23:26 +0800947 /*GPIO21 AF0
948 GPIO22 AF0 */
b.liub17525e2025-05-14 17:22:29 +0800949 GPIO23 AF0
yu.dongca721ca2025-06-04 07:21:21 -0700950 GPIO24 AF0
b.liub17525e2025-05-14 17:22:29 +0800951
952 >;
953 DS_MEDIUM;PULL_NONE;EDGE_NONE;SL_NORMAL;
954 };
955 mbtk_plat_irq_func_sleep: mbtk_plat_irq_func_sleep {
956 pinctrl-single,pins = <
you.chen9824a892025-06-04 20:23:26 +0800957 /*GPIO21 AF0
958 GPIO22 AF0*/
b.liub17525e2025-05-14 17:22:29 +0800959 GPIO23 AF0
yu.dongca721ca2025-06-04 07:21:21 -0700960 GPIO24 AF0
b.liub17525e2025-05-14 17:22:29 +0800961 >;
962 DS_MEDIUM;PULL_NONE;EDGE_BOTH;SL_NORMAL;
963 };
964
965
b.liue9582032025-04-17 19:18:16 +0800966 gpiokey_pmx_func: gpiokey_pmx_func {
967 pinctrl-single,pins = <
968 GPIO09 AF0
969 >;
970 DS_MEDIUM;PULL_UP;EDGE_NONE;SL_NORMAL;
971 };
b.liub17525e2025-05-14 17:22:29 +0800972
973 wake_pmx_func1: wake_pmx_func1 {
974 pinctrl-single,pins = <
975 USB_ID AF1
976 >;
977 DS_MEDIUM;PULL_NONE;EDGE_NONE;SL_NORMAL;
978 };
979
hong.liuf2416882025-05-23 20:41:06 -0700980 led_pmx_func1: led_pmx_func1 {
981 pinctrl-single,pins = <
982 GPIO08 AF0
983 >;
984 DS_MEDIUM;PULL_NONE;EDGE_NONE;SL_NORMAL;
985 };
986
b.liub17525e2025-05-14 17:22:29 +0800987
988 wake_pmx_func: wake_pmx_func {
989 pinctrl-single,pins = <
990 PRI_TDI AF1 /*GPIO117 WAKEUP_OUT*/
991
992 PRI_TMS AF1 /*GPIO118 WAKEUP_IN*/
993 GPIO41 AF0
994 PRI_TDO AF1 /*GPIO120*/
995
996
997 >;
998 DS_MEDIUM;PULL_NONE;EDGE_NONE;SL_NORMAL;
999 };
1000 wake_pmx_func_sleep: wake_pmx_func_sleep {
1001 pinctrl-single,pins = <
1002 PRI_TDI AF1 /*GPIO117 WAKEUP_OUT*/
1003
1004 PRI_TMS AF1 /*GPIO118 WAKEUP_IN*/
1005 GPIO41 AF0
1006 PRI_TDO AF1 /*GPIO120*/
1007
1008 >;
1009 DS_MEDIUM;PULL_NONE;EDGE_BOTH;SL_NORMAL;
1010 };
1011 usb_id_pinmux: usb_id_pinmux {
b.liue9582032025-04-17 19:18:16 +08001012 pinctrl-single,pins = <
1013 USB_ID AF1/* usbid-gpio99 */
1014 >;
1015 DS_MEDIUM;PULL_UP;EDGE_NONE;LPM_NONE;
1016 };
1017 usb_id_pinmux_slp: usb_id_pinmux_slp {
1018 pinctrl-single,pins = <
1019 USB_ID AF1 /* usbid-gpio99 */
1020 >;
1021 DS_MEDIUM;PULL_UP;EDGE_BOTH;LPM_NONE;
1022 };
1023 usb_host_pinmux: usb_host_pinmux {
1024 pinctrl-single,pins = <
1025 VBUS_DRV AF1 /* gpio-122 */
1026 >;
1027 DS_MEDIUM;PULL_FLOAT;EDGE_NONE;LPM_NONE;
1028 };
1029 i2s_func: i2s_func {
1030 pinctrl-single,pins = <
1031 GPIO25 AF2
1032 GPIO26 AF2
1033 GPIO27 AF2
1034 GPIO28 AF2
1035 >;
1036 MFP_DEFAULT;
1037 };
1038 i2s_gpio: i2s_gpio {
1039 pinctrl-single,pins = <
1040 GPIO25 AF0
1041 GPIO26 AF0
1042 GPIO27 AF0
1043 GPIO28 AF0
1044 >;
1045 MFP_LPM_FLOAT;
1046 };
you.chen9824a892025-06-04 20:23:26 +08001047 sensors_int:sensors_int {
1048 pinctrl-single,pins = <
1049 GPIO22 AF0
1050 >;
1051 MFP_PULL_DOWN;
1052 };
1053 sensors_csb:sensors_csb {
1054 pinctrl-single,pins = <
1055 VCXO_OUT AF1
1056 >;
1057 DS_MEDIUM;PULL_UP;EDGE_NONE;
1058 };
b.liue9582032025-04-17 19:18:16 +08001059 };
1060
1061 ssp0: spi@d401b000 {
1062 status = "okay";
1063 pinctrl-names = "default";
1064 pinctrl-0 = <&ssp0_pmx_func>;
1065 asr,spi-inc-mode;
1066#ifdef CONFIG_FB_SPI_LCD
1067 /* this enhancemnet feature is not suitable for
1068 3 line 9bits spi lcd. */
1069 /* asr,ssp-enhancement; */
1070
1071 lcd: spidev@0 {
1072 #address-cells = <1>;
1073 #size-cells = <1>;
1074 compatible = "spilcd";
b.liub17525e2025-05-14 17:22:29 +08001075 // pinctrl-names = "default";
1076 // pinctrl-0 = <&lcd_bl_func>;
b.liue9582032025-04-17 19:18:16 +08001077 reg = <0>;
1078 /* ST7735: need to set spi-max-frequency to 26M
1079 * ST7789V: can set spi-max-frequency to 52M
1080 */
1081 spi-max-frequency = <26000000>;
1082 xres = <128>;
1083 yres = <128>;
1084 bits = <8>; /* 8: 4line, 9: 3line */
1085 rst_gpio = <&gpio 24 0>;
b.liub17525e2025-05-14 17:22:29 +08001086 // bl_gpio = <&gpio 126 0>;
b.liue9582032025-04-17 19:18:16 +08001087 rs_gpio = <&gpio 22 0>;
1088 /* if comment the following statement, it means
1089 * the avdd is sit on the "always-on" ldo.
1090 */
1091 /* avdd-supply = <&LDO1>; */
1092 };
1093#else
1094 /*cs-gpios = <&gpio 34 0>;*//* DXS101 Use the config of Cs-gpios */
1095 slic: spidev@0{
1096 #address-cells = <1>;
1097 #size-cells = <1>;
1098 compatible = "asr,slic";
1099 reg = <0>;
1100 spi-cpol;
1101 spi-cpha;
1102 spi-max-frequency = <6500000>;
1103 };
1104#endif
1105 };
b.liub17525e2025-05-14 17:22:29 +08001106 ssp2: spi@d401c000{
1107 status = "okay";
1108 pinctrl-names = "default";
1109 pinctrl-0 = <&ssp2_pmx_func>;
1110 asr,spi-inc-mode;
1111 cs-gpios = <&gpio 39 0>;
1112 status = "okay";
1113 mbtk: spidev@0{
1114 compatible = "asr,spidev";
1115 reg = <0>;
1116 status = "okay";
1117 spi-cpol;
1118 spi-cpha;
1119 spi-max-frequency = <6500000>;
1120 };
1121 };
b.liue9582032025-04-17 19:18:16 +08001122 twsi0: i2c@d4011000 {
1123 status= "okay";
1124 alc5616@1b {
b.liub17525e2025-05-14 17:22:29 +08001125 status= "disabled";
b.liue9582032025-04-17 19:18:16 +08001126 compatible = "asrmicro,alc5616";
1127 reg = <0x1b>;
1128 pinctrl-names = "default", "sleep";
1129 pinctrl-0 = <&alc5616_pmx_func1>;
1130 pinctrl-1 = <&alc5616_pmx_func2>;
1131 clocks = <&soc_clocks ASR1803_CLK_I2S_SYSCLK>;
1132 clock-names = "i2s_sys_clk";
1133#if 0
1134 3V3-gpio = <&gpio 23 0>;/* CODEC_LDO_EN */
1135 irq-gpio = <&gpio 24 0>;/* CODEC_IRQ for headset detection */
1136#else
1137 irq-gpio = <&gpio 8 0>;/* CODEC_IRQ for headset detection */
1138#endif
1139 };
1140
b.liub17525e2025-05-14 17:22:29 +08001141 nau8810@1a {
1142 compatible = "marvell,nau8810";
1143 clocks = <&soc_clocks ASR1803_CLK_I2S_SYSCLK>;
1144 clock-names = "i2s_sys_clk";
1145
1146
1147 pinctrl-names = "default";
1148 pinctrl-0 = <&es8311_pa_func1>;
1149 pinctrl-1 = <&es8311_pa_func2>;
1150 reg = <0x1a>;
1151 status= "disabled";
1152 };
1153
1154 es8311@18 {
1155 compatible = "ambarella,es8311";
1156 reg = <0x18>;
1157 clocks = <&soc_clocks ASR1803_CLK_I2S_SYSCLK>;
1158 clock-names = "i2s_sys_clk";
1159
1160 pinctrl-names = "default";
1161 pinctrl-0 = <&es8311_pa_func1>;
1162 pinctrl-1 = <&es8311_pa_func2>;
yu.dongb3e49372025-06-23 23:57:56 -07001163 gpios = <&gpio 54 0>;
b.liub17525e2025-05-14 17:22:29 +08001164
1165 // gpios = <&gpio 21 0>,
1166 // <&gpio 23 0>,
1167 // <&gpio 24 0>,
1168 // <&gpio 22 0>;
1169
1170 status= "okay";
1171 };
1172
you.chen9824a892025-06-04 20:23:26 +08001173 asm330lhhx-imu@0x6a {
1174 compatible = "st,asm330lhhx";
1175 reg = <0x6b>;
1176 pinctrl-names = "default";
1177 pinctrl-0 = <&sensors_int &sensors_csb>;
1178 interrupt-parent = <&gpio>;
1179 interrupts = <22 1>;
1180 //interrupts = <22>;
1181 vddio-supply = <&sensors_vddio>;
1182 //vdd-supply = <&sensors_vdd>;
1183 st,int-pin = <1>;
1184 //st,mlc-int-pin = <2>;
1185 mount-matrix = "1", "0", "0",
1186 "0", "1", "0",
1187 "0", "0", "1";
1188 };
yu.dongb39db3e2025-06-06 03:15:42 -07001189 /* AWINIC AW87XXX Smart K PA */
1190 aw87xxx_pa@58 {
1191 compatible = "awinic,aw87xxx_pa";
1192 reg = <0x58>;
1193 reset-gpio = <&gpio 24 0>;
1194 dev_index = < 0 >;
1195 status = "okay";
1196 };
1197 /* AWINIC AW87XXX Smart K PA End */
b.liue9582032025-04-17 19:18:16 +08001198 /*
1199 pmic4: 88pm805@38 {
1200 compatible = "marvell,88pm805";
1201 reg = <0x38>;
1202 };
1203 */
1204 };
1205 twsi1: i2c@d4010800 {
b.liub17525e2025-05-14 17:22:29 +08001206#if 1
b.liue9582032025-04-17 19:18:16 +08001207 pinctrl-names = "default","gpio";
1208 pinctrl-0 = <&twsi1_pmx_func>;
1209 pinctrl-1 = <&twsi1_pmx_gpio>;
1210 i2c-gpio = <&gpio 10 0 &gpio 11 0>;
1211#endif
b.liub17525e2025-05-14 17:22:29 +08001212 status= "okay";
1213 //nau8810@1a {
1214 // compatible = "marvell,nau8810";
1215 // reg = <0x1a>;
1216 //};
1217
1218
b.liue9582032025-04-17 19:18:16 +08001219 };
1220 twsi2: i2c@d4037000 {
1221 status = "okay";
1222
1223 pmic4: 88pm805@38 {
1224 compatible = "marvell,88pm805";
1225 reg = <0x38>;
1226 };
1227
1228 pmic5: pm802@0 {
1229 compatible = "asr,pm802";
1230 reg = <0x00>;
1231 interrupts = <4>;
1232 interrupt-parent = <&intc>;
1233 interrupt-controller;
1234 #interrupt-cells = <1>;
1235 chg_irq_from_exton;
1236 scs-int-active-high;
1237 battery {
1238 compatible = "asr,pm802-bat";
1239 status = "disabled";
1240
1241 online-gpadc = <1>;
1242 temperature-gpadc = <1>;
1243
1244 hi-volt-online = <1150>; /* mV */
1245 lo-volt-online = <20>; /* mV */
1246 hi-volt-temp = <1150>; /* mV */
1247 lo-volt-temp = <200>; /* mV */
1248
1249 sw-fg-use-ntc;
1250 full-capacity = <2050>; /* mAh */
1251 r1-resistor = <40>; /* mohm */
1252 r2-resistor = <30>; /* mohm */
1253 rs-resistor = <120>; /* mohm */
1254 roff-resistor = <0>; /* mohm */
1255 roff-initial-resistor = <0>; /* mohm */
1256
1257 times-in-zero-degree = <1>;
1258 offset-in-zero-degree = <0>;
1259
1260 times-in-ten-degree = <2>;
1261 offset-in-ten-degree = <100>;
1262
1263 power-off-threshold = <3350>; /* mV */
1264 safe-power-off-threshold = <3200>; /* mV */
1265
1266 online-gp-bias-curr = <11>; /* uA */
1267
1268 soc-ramp-up-interval = <150>; /* s */
1269 /* choose -20C, 0C, 10C, 40C, 45C, 55C as threshold */
1270 tbat-threshold = <20 0 10 40 45 55>; /* ohm */
1271 ntc-table-size = <88>;
1272 stop-chg-for-vbatmeas;
1273 /* -24C, -23C, ..., 62C, 63C */
1274 ntc-table = <
1275 89680 85130 80840 76790 72970 69360 65960 62740
1276 59700 56830 54130 51530 49100 46800 44610 42550
1277 40590 38730 36970 35300 33710 32210 30780 29420
1278 28130 26910 25750 24640 23590 22580 21630 20720
1279 19860 19030 18250 17500 16790 16110 15460 14840
1280 14250 13690 13150 12640 12150 11680 11230 10800
1281 10390 10000 9620 9270 8920 8590 8280 7980
1282 7690 7410 7150 6890 6650 6410 6190 5970
1283 5770 5570 5380 5190 5020 4850 4680 4530
1284 4380 4230 4100 3960 3830 3710 3590 3480
1285 3370 3260 3160 3060 2960 2870 2780 2700
1286 >;
1287 };
1288 usb {
1289 status = "disabled";
1290 vbus_gpio = <0xff>; /* set_vbus */
1291 id-gpadc = <0xff>; /* usb-id */
1292 vchg-from-exton = <1>;
1293 vbus-detect = <1>; /* vbus-irq */
1294 get-vbus = <1>; /* get-vbus */
1295 };
1296 };
1297 pmic6: pm803@30 {
1298 compatible = "asr,pm803";
1299 reg = <0x30>;
1300 interrupts = <4>;
1301 interrupt-parent = <&intc>;
1302 interrupt-controller;
1303 #interrupt-cells = <1>;
1304 chg_irq_from_exton;
1305 scs-int-active-high;
1306 battery {
1307 compatible = "asr,pm803-bat";
1308 status = "disabled";
1309
1310 online-gpadc = <1>;
1311 temperature-gpadc = <1>;
1312
1313 hi-volt-online = <1150>; /* mV */
1314 lo-volt-online = <20>; /* mV */
1315 hi-volt-temp = <1150>; /* mV */
1316 lo-volt-temp = <200>; /* mV */
1317
1318 sw-fg-use-ntc;
1319 full-capacity = <2050>; /* mAh */
1320 r1-resistor = <40>; /* mohm */
1321 r2-resistor = <30>; /* mohm */
1322 rs-resistor = <120>; /* mohm */
1323 roff-resistor = <0>; /* mohm */
1324 roff-initial-resistor = <0>; /* mohm */
1325
1326 times-in-zero-degree = <1>;
1327 offset-in-zero-degree = <0>;
1328
1329 times-in-ten-degree = <2>;
1330 offset-in-ten-degree = <100>;
1331
1332 power-off-threshold = <3350>; /* mV */
1333 safe-power-off-threshold = <3200>; /* mV */
1334
1335 online-gp-bias-curr = <11>; /* uA */
1336
1337 soc-ramp-up-interval = <150>; /* s */
1338 /* choose -20C, 0C, 10C, 40C, 45C, 55C as threshold */
1339 tbat-threshold = <20 0 10 40 45 55>; /* ohm */
1340 ntc-table-size = <88>;
1341 stop-chg-for-vbatmeas;
1342 /* -24C, -23C, ..., 62C, 63C */
1343 ntc-table = <
1344 89680 85130 80840 76790 72970 69360 65960 62740
1345 59700 56830 54130 51530 49100 46800 44610 42550
1346 40590 38730 36970 35300 33710 32210 30780 29420
1347 28130 26910 25750 24640 23590 22580 21630 20720
1348 19860 19030 18250 17500 16790 16110 15460 14840
1349 14250 13690 13150 12640 12150 11680 11230 10800
1350 10390 10000 9620 9270 8920 8590 8280 7980
1351 7690 7410 7150 6890 6650 6410 6190 5970
1352 5770 5570 5380 5190 5020 4850 4680 4530
1353 4380 4230 4100 3960 3830 3710 3590 3480
1354 3370 3260 3160 3060 2960 2870 2780 2700
1355 >;
1356 };
1357 usb {
1358 status = "disabled";
1359 vbus_gpio = <0xff>; /* set_vbus */
1360 id-gpadc = <0xff>; /* usb-id */
1361 vchg-from-exton = <1>;
1362 vbus-detect = <1>; /* vbus-irq */
1363 get-vbus = <1>; /* get-vbus */
1364 };
1365 };
1366 };
1367 };
1368 };
1369
1370 vcc_sdh1: sd-regulator {
1371 compatible = "regulator-fixed";
b.liub17525e2025-05-14 17:22:29 +08001372 /*pinctrl-names = "default";*/
1373 /*pinctrl-0 = <&sd_ldo_en>;*/
b.liue9582032025-04-17 19:18:16 +08001374 regulator-name = "SDH1 VCC";
1375 regulator-min-microvolt = <3300000>;
1376 regulator-max-microvolt = <3300000>;
b.liub17525e2025-05-14 17:22:29 +08001377 /* gpio = <&gpio 45 0>;*/
b.liue9582032025-04-17 19:18:16 +08001378 enable-active-high;
1379 status = "okay";
1380 };
1381
you.chen9824a892025-06-04 20:23:26 +08001382 sensors_vddio: imu-regulator {
1383 compatible = "regulator-fixed";
1384 /*pinctrl-names = "default";*/
1385 /*pinctrl-0 = <&sd_ldo_en>;*/
1386 regulator-name = "IMU VDDIO";
1387 gpio = <&gpio 21 0>;
1388 enable-active-high;
1389 status = "okay";
1390 };
1391
b.liue9582032025-04-17 19:18:16 +08001392 asr-rfkill {
1393 compatible = "asr,asr-rfkill";
1394 pinctrl-names = "off", "on";
1395 pinctrl-0 = <&sdh1_pmx_pd_rst_off>;
1396 pinctrl-1 = <&sdh1_pmx_pd_rst_on>;
b.liub17525e2025-05-14 17:22:29 +08001397 sd-host = <&sdh0>;
1398 //pd-gpio = <&gpio 90 0>;
1399 rst-gpio = <&gpio 90 0>;
1400
1401 /*3v3-ldo-gpio = <&gpio 8 0>;*/
1402 /*edge-wakeup-gpio = <&gpio 10 0>;*/
1403 status = "okay";
1404 };
1405
1406 mbtk-sdh{
1407 compatible = "mbtk,mbtk-sdh";
1408 pinctrl-names = "off", "on";
1409 pinctrl-0 = <&mbtk_sdh_pmx_off>;
1410 pinctrl-1 = <&mbtk_sdh_pmx_on>;
1411 sd-host = <&sdh1>;
1412 1v8-ldo-gpio = <&gpio 123 0>;
you.chen9824a892025-06-04 20:23:26 +08001413 //host-wakeup-wlan-gpio = <&gpio 127 0>;
b.liub17525e2025-05-14 17:22:29 +08001414 wlan_en_gpio = <&gpio 125 0>;
1415 status = "okay";
1416 };
1417
1418 asr-gps {
1419 compatible = "asr,asr-gnss";
1420 pinctrl-names = "default";
1421 pinctrl-0 = <&gnss_clk_on>;
1422 enable_vctcxo_out1;
1423 host-wakeup-gnss-gpio = <&gpio 47 0>;
1424 /*gnss-wakeup-host-gpio = <&gpio 47 0>;*/
1425 rst-gpio = <&gpio 45 0>;
b.liue9582032025-04-17 19:18:16 +08001426 status = "okay";
1427 };
1428
1429 pcie-rfkill {
1430 compatible = "mrvl,pcie-rfkill";
1431 pinctrl-names = "off", "on";
1432 pinctrl-0 = <&pcie_pmx_pd_rst_off>;
1433 pinctrl-1 = <&pcie_pmx_pd_rst_on>;
1434 rst-gpio = <&gpio 42 0>;
1435 3v3-ldo-gpio = <&gpio 24 0>;
b.liub17525e2025-05-14 17:22:29 +08001436 status = "disabled";
b.liue9582032025-04-17 19:18:16 +08001437 };
1438
1439 sound {
1440 compatible = "ASRMICRO,asrmicro-snd-card";
1441 ssp-controllers = <&ssp_dai1>;
1442 };
1443
b.liub17525e2025-05-14 17:22:29 +08001444 asr-adc {
1445 compatible = "asr,adc";
1446 //pinctrl-names = "default";
1447 //pinctrl-0 = <&pin_func_work>;
1448 status = "okay";
1449 };
1450
1451#if 0
1452
1453 mbtk_PlatIrq{
1454 compatible = "mbtk,plat-irq";
1455 pinctrl-names = "sc_irq0", "sc_irq1", "sc_irq2", "sc_irq3";
1456
1457 pinctrl-0 = <&sc_ext_int0>;
1458 pinctrl-1 = <&sc_ext_int1>;
1459 pinctrl-2 = <&sc_ext_int2>;
1460 pinctrl-3 = <&sc_ext_int3>;
yu.dongca721ca2025-06-04 07:21:21 -07001461 status = "disabled";
b.liub17525e2025-05-14 17:22:29 +08001462 };
1463
1464#else
1465
1466 mbtk_PlatIrq{
1467 compatible = "mbtk,plat-irq";
1468 pinctrl-names = "default", "sleep";
1469 pinctrl-0 = <&mbtk_plat_irq_func>;
1470 pinctrl-1 = <&mbtk_plat_irq_func_sleep>;
you.chen9824a892025-06-04 20:23:26 +08001471 //gpio_irq0 = <&gpio 21 0>;
1472 //gpio_irq1 = <&gpio 22 0>;
b.liub17525e2025-05-14 17:22:29 +08001473 gpio_irq2 = <&gpio 23 0>;
1474 gpio_irq3 = <&gpio 24 0>;
yu.dongca721ca2025-06-04 07:21:21 -07001475 status = "disabled";
b.liub17525e2025-05-14 17:22:29 +08001476 };
1477
1478#endif
1479
b.liue9582032025-04-17 19:18:16 +08001480 ecall {
1481 compatible = "asr,ecall-event";
1482 pinctrl-names = "default";
1483 pinctrl-0 = <&ecall_pmx_func>;
1484 gpio-auto-ecall = <8>;
1485 gpio-manual-ecall = <9>;
1486 status = "disabled";
1487 };
1488
1489 usim1: usim1 {
1490 compatible = "asr,usim1";
1491 pinctrl-names = "default", "sleep";
1492 pinctrl-0 = <&usim1_pmx_func>;
1493 pinctrl-1 = <&usim1_pmx_func_sleep>;
yq.wang107f9862025-05-12 15:44:50 +08001494 edge_detect_gpio = <119>; /* GPIO19: SIM detect pin */
b.liue9582032025-04-17 19:18:16 +08001495 status = "okay";
1496 };
1497 /* set okay for this node if usim2 is needed */
1498 usim2: usim2 {
1499 compatible = "asr,usim2";
1500 pinctrl-names = "default", "sleep";
1501 pinctrl-0 = <&usim2_pmx_func>;
1502 pinctrl-1 = <&usim2_pmx_func_sleep>;
1503 edge_detect_gpio = <44>; /* GPIO44: SIM detect pin */
1504#ifdef CONFIG_ASR_DSDS
1505 status = "okay";
1506#else
1507 status = "disabled";
1508#endif
1509 };
1510 gpio_keys {
1511 compatible = "gpio-keys";
1512 #address-cells = <1>;
1513 #size-cells = <0>;
1514 /* autorepeat; */
1515 pinctrl-names = "default";
1516 pinctrl-0 = <&gpiokey_pmx_func>;
1517 button@1 {
1518 label = "qrcode-key";
1519 linux,code = <139>; /* KEY_MENU, refer to linux/input.h */
1520 /* NOTE:
1521 * We use the FORCE DOWNLOAD key to implement the qrcode key in DKB.
1522 * Customer SHOULD change it to any other gpios.
1523 * Because user may do the misoperation that
1524 * powerup with FDL key pressed,
1525 * then the borad will enter force download mode.
1526 */
1527 gpios = <&gpio 9 1>;
1528 gpio-key,wakeup;
1529 };
1530 };
1531
1532 audio_pa {
1533 compatible = "asrmicro,audio-pa";
1534 pinctrl-names = "default";
1535 pinctrl-0 = <&audio_pa_pmx_func>;
1536 pa-gpio = <&gpio 14 0>;
b.liub17525e2025-05-14 17:22:29 +08001537 status = "disabled";
b.liue9582032025-04-17 19:18:16 +08001538 };
b.liub17525e2025-05-14 17:22:29 +08001539 mbtk_GpioWakeUp {
1540 compatible = "mbtk,GpioWakeUp";
1541 pinctrl-names = "default", "sleep";
1542 pinctrl-0 = <&wake_pmx_func &wake_pmx_func1>;
1543 pinctrl-1 = <&wake_pmx_func_sleep>;
1544 wakeup-in-gpio = <&gpio 118 0>;
1545 wakeup-out-gpio = <&gpio 117 0>;
1546 status = "okay";
1547 };
b.liue9582032025-04-17 19:18:16 +08001548
hong.liuf2416882025-05-23 20:41:06 -07001549
1550 dtsleds{
1551 compatible = "gpio-leds";
1552 pinctrl-names = "default";
1553 pinctrl-0 = <&led_pmx_func1>;
1554 status = "okay";
1555 led0{
1556 label = "red";
1557 gpios = <&gpio 8 0>;
1558 linux,default-trigger = "pattern";
1559 led-pattern = "100:100:100";
1560 default-state = "on";
1561
1562 };
1563
1564 // led1{
1565 // label = "blue";
1566 // gpios = <&gpio 99 0>;
1567 // linux,default-trigger = "timer";
1568 // timer-delay-on = <100>;
1569 // timer-delay-off = <100>;
1570 // brightness-levels = <100>;
1571 // brightness-max = <100>;
1572 // default-state = "on";
1573 // };
1574
1575 };
1576
b.liue9582032025-04-17 19:18:16 +08001577 audio_regs {
1578 compatible = "ASRMICRO,audio-registers";
1579 reg = <0xD4050044 0x4>;
1580 status = "okay";
1581 };
1582
1583 nz3-slic {
1584 compatible = "asr,nz3-slic";
1585 pinctrl-names = "default", "sleep";
1586 pinctrl-0 = <&slic_pmx_func1 &slic_pmx_func2>;
1587 pinctrl-1 = <&slic_pmx_func1_sleep &slic_pmx_func2>;
1588 rst-gpio = <&gpio 21 0>;
1589 edge-wakeup-gpio = <&gpio 20 0>;
1590 vdd-3v3-gpio = <&gpio 127 0>;
1591 status = "disabled";
1592 };
1593 microsemi-slic {
1594 compatible = "asr,microsemi-slic";
1595 pinctrl-names = "default", "sleep";
1596 pinctrl-0 = <&slic_pmx_func1>;
1597 pinctrl-1 = <&slic_pmx_func1_sleep>;
1598 edge-wakeup-gpio = <&gpio 20 0>;
1599 vdd-3v3-gpio = <&gpio 127 0>;
1600 status = "disabled";
1601 };
1602 maxlinear-slic {
1603 compatible = "asr,maxlinear-slic";
1604 pinctrl-names = "default", "sleep";
1605 pinctrl-0 = <&slic_pmx_func1 &slic_pmx_func2>;
1606 pinctrl-1 = <&slic_pmx_func1_sleep &slic_pmx_func2>;
1607 rst-gpio = <&gpio 21 0>;
1608 edge-wakeup-gpio = <&gpio 20 0>;
1609 vdd-3v3-gpio = <&gpio 127 0>;
1610 status = "disabled";
1611 };
1612 /* deprecated, move to mfpr@d401e000
1613 lpm-board-cfg {
1614 compatible = "asr,lpm-board-cfg";
1615 wakeup-state-d1pp = <0x1>;
1616 udr-mfpr-config = <0x1B0 0xA040 0x0
1617 0x1B4 0xA040 0x0>;
1618 };
1619 */
1620};
1621#ifdef CONFIG_ASR_DSDS
1622#include "asr_pm802_2usim.dtsi"
1623#include "88pm805.dtsi"
1624#include "asr_pm803_2usim.dtsi"
1625#else
1626#include "asr_pm802.dtsi"
1627#include "88pm805.dtsi"
1628#include "asr_pm803.dtsi"
1629#endif
1630
1631#ifdef CONFIG_AB_SYSTEM
1632#include "asr1806_ab_flash_layout.dtsi"
1633#else
1634#include "asr1806_flash_layout.dtsi"
1635#endif