huangcm
2025-09-01 53d8e046ac1bf2ebe94f671983e3d3be059df91a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
/*
 * Allwinner sun50iw9 pin config info.
 */
 
/ {
   soc@03000000{
       r_pio: pinctrl@07022000 {
           compatible = "allwinner,sun50iw9p1-r-pinctrl";
           reg = <0x0 0x07022000 0x0 0x400>;
           clocks = <&clk_cpurpio>;
           device_type = "r_pio";
           gpio-controller;
           interrupt-controller;
           #interrupt-cells = <3>;
           #size-cells = <0>;
           #gpio-cells = <6>;
 
           s_rsb0_pins_a: s_rsb0@0 {
               allwinner,pins = "PL0", "PL1";
               allwinner,function = "s_rsb0";
               allwinner,muxsel = <2>;
               allwinner,drive = <2>;
               allwinner,pull = <1>;
           };
 
           s_twi0_pins_a: s_twi0@0 {
               allwinner,pins = "PL0", "PL1";
               allwinner,pname = "s_twi0_scl", "s_twi0_sda";
               allwinner,function = "s_twi0";
               allwinner,muxsel = <3>;
               allwinner,drive = <1>;
               allwinner,pull = <1>;
           };
 
           s_twi0_pins_b: s_twi0@1 {
               allwinner,pins = "PL0", "PL1";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
       };
 
       pio: pinctrl@0300b000 {
           compatible = "allwinner,sun50iw9p1-pinctrl";
           reg = <0x0 0x0300b000 0x0 0x400>;
           interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>,  /* AW1823_GIC_Spec: GPIOA: 83-32=51 */
                    <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>,
                    <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>,
                    <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>,
                    <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>,
                    <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>,
                    <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
           device_type = "pio";
           clocks = <&clk_pio>, <&clk_losc>, <&clk_hosc>;
           gpio-controller;
           interrupt-controller;
           #interrupt-cells = <3>;
           #size-cells = <0>;
           #gpio-cells = <6>;
           /* takes the debounce time in usec as argument */
           input-debounce = <0 0 0 0 0 0 0>;
 
           clk_losc_pins_a: clk_losc@0 {
               allwinner,pins = "PG10";
               allwinner,function = "x32kfout";
               allwinner,muxsel = <3>;
               allwinner,drive = <2>;
               allwinner,pull = <1>;
           };
 
           s_cir0_pins_a: s_cir0@0{
                   allwinner,pins = "PH10";
                   allwinner,function = "ir";
                   allwinner,muxsel = <3>;
                   allwinner,drive = <2>;
                   allwinner,pull = <1>;
           };
 
           vdevice_pins_a: vdevice@0 {
               allwinner,pins = "PA1", "PA2";
               allwinner,function = "Vdevice";
               allwinner,muxsel = <5>;
               allwinner,drive = <1>;
               allwinner,pull = <1>;
           };
 
           uart0_pins_a: uart0@0 {
               allwinner,pins = "PH0", "PH1";
               allwinner,pname = "uart0_tx", "uart0_rx";
               allwinner,function = "uart0";
               allwinner,muxsel = <2>;
               allwinner,drive = <1>;
               allwinner,pull = <1>;
           };
 
           uart0_pins_b: uart0@1 {
               allwinner,pins = "PH0", "PH1";
               allwinner,function = "uart0";  /* io_disabled */
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
           uart1_pins_a: uart1@0 {
               allwinner,pins = "PG6", "PG7", "PG8", "PG9";
               allwinner,pname = "uart1_tx", "uart1_rx",
                         "uart1_rts", "uart1_cts";
               allwinner,function = "uart1";
               allwinner,muxsel = <2>;
               allwinner,drive = <1>;
               allwinner,pull = <1>;
           };
 
           uart1_pins_b: uart1@1 {
               allwinner,pins = "PG6", "PG7", "PG8", "PG9";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           uart2_pins_a: uart2@0 {
               allwinner,pins = "PH5", "PH6", "PH7", "PH8";
               allwinner,pname = "uart2_tx", "uart2_rx",
                         "uart2_rts", "uart2_cts";
               allwinner,function = "uart2";
               allwinner,muxsel = <2>;
               allwinner,drive = <1>;
               allwinner,pull = <1>;
           };
 
           uart2_pins_b: uart2@1 {
               allwinner,pins = "PH5", "PH6", "PH7", "PH8";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           uart3_pins_a: uart3@0 {
               allwinner,pins = "PI9", "PI10", "PI11", "PI12";
               allwinner,pname = "uart3_tx", "uart3_rx",
                         "uart3_rts", "uart3_cts";
               allwinner,function = "uart3";
               allwinner,muxsel = <3>;
               allwinner,drive = <1>;
               allwinner,pull = <1>;
           };
 
           uart3_pins_b: uart3@1 {
               allwinner,pins = "PI9", "PI10", "PI11", "PI12";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           uart4_pins_a: uart4@0 {
               allwinner,pins = "PI13", "PI14", "PI15", "PI16";
               allwinner,pname = "uart4_tx", "uart4_rx",
                         "uart4_rts", "uart4_cts";
               allwinner,function = "uart4";
               allwinner,muxsel = <3>;
               allwinner,drive = <1>;
               allwinner,pull = <1>;
           };
 
           uart4_pins_b: uart4@1 {
               allwinner,pins = "PI13", "PI14", "PI15", "PI16";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           uart5_pins_a: uart5@0 {
               allwinner,pins = "PH2", "PH3";
               allwinner,pname = "uart3_tx", "uart3_rx";
               allwinner,function = "uart5";
               allwinner,muxsel = <2>;
               allwinner,drive = <1>;
               allwinner,pull = <1>;
           };
 
           uart5_pins_b: uart5@1 {
               allwinner,pins = "PH2", "PH3";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           twi0_pins_a: twi0@0 {
               allwinner,pins = "PA0", "PA1";
               allwinner,pname = "twi0_scl", "twi0_sda";
               allwinner,function = "twi0";
               allwinner,muxsel = <4>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           twi0_pins_b: twi0@1 {
               allwinner,pins = "PA0", "PA1";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           twi1_pins_a: twi1@0 {
               allwinner,pins = "PA2", "PA3";
               allwinner,pname = "twi1_scl", "twi1_sda";
               allwinner,function = "twi1";
               allwinner,muxsel = <4>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           twi1_pins_b: twi1@1 {
               allwinner,pins = "PA2", "PA3";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           twi2_pins_a: twi2@0 {
               allwinner,pins = "PH2", "PH3";
               allwinner,pname = "twi2_scl", "twi2_sda";
               allwinner,function = "twi2";
               allwinner,muxsel = <5>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           twi2_pins_b: twi2@1 {
               allwinner,pins = "PH2", "PH3";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           twi3_pins_a: twi3@0 {
               allwinner,pins = "PA10", "PA11";
               allwinner,pname = "twi3_scl", "twi3_sda";
               allwinner,function = "twi3";
               allwinner,muxsel = <2>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           twi3_pins_b: twi3@1 {
               allwinner,pins = "PA10", "PA11";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           twi4_pins_a: twi4@0 {
               allwinner,pins = "PG15", "PG16";
               allwinner,pname = "twi4_scl", "twi4_sda";
               allwinner,function = "twi4";
               allwinner,muxsel = <2>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           twi4_pins_b: twi4@1 {
               allwinner,pins = "PG15", "PG16";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           ts0_pins_a: ts0@0 {
               allwinner,pins = "PD0", "PD1", "PD2", "PD3",
                        "PD4", "PD5", "PD6", "PD7",
                        "PD8", "PD9", "PD10", "PD11";
               allwinner,pname = "ts0_clk", "ts0_err",
                         "ts0_sync", "ts0_dvld",
                         "ts0_d0", "ts0_d1",
                         "ts0_d2", "ts0_d3",
                         "ts0_d4", "ts0_d5",
                         "ts0_d6", "ts0_d7";
               allwinner,function = "ts0";
               allwinner,muxsel = <4>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           ts0_pins_b: ts0_sleep@0 {
               allwinner,pins = "PD0", "PD1", "PD2", "PD3",
                        "PD4", "PD5", "PD6", "PD7",
                        "PD8", "PD9", "PD10", "PD11";
               allwinner,pname = "ts0_clk", "ts0_err",
                         "ts0_sync", "ts0_dvld",
                         "ts0_d0", "ts0_d1",
                         "ts0_d2", "ts0_d3",
                         "ts0_d4", "ts0_d5",
                         "ts0_d6", "ts0_d7";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           spi0_pins_a: spi0@0 {
               allwinner,pins = "PC0", "PC2", "PC4", "PC15", "PC16";
               allwinner,pname = "spi0_sclk", "spi0_mosi",
                         "spi0_miso", "spi0_wp", "spi0_hold";
               allwinner,function = "spi0";
               allwinner,muxsel = <4>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           spi0_pins_b: spi0@1 {
               allwinner,pins = "PC3", "PC7";
               allwinner,pname = "spi0_cs0", "spi0_cs1";
               allwinner,function = "spi0";
               allwinner,muxsel = <4>;
               allwinner,drive = <1>;
               allwinner,pull = <1>;    // only CS should be pulled up
           };
 
           spi0_pins_c: spi0@2 {
               allwinner,pins = "PC0", "PC2", "PC3", "PC4", "PC7",
                   "PC15", "PC16";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           spi1_pins_a: spi1@0 {
               allwinner,pins = "PH6", "PH7", "PH8";
               allwinner,pname = "spi1_sclk", "spi1_mosi",
                         "spi1_miso";
               allwinner,function = "spi1";
               allwinner,muxsel = <4>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           spi1_pins_b: spi1@1 {
               allwinner,pins = "PH5";
               allwinner,pname = "spi1_cs0";
               allwinner,function = "spi1";
               allwinner,muxsel = <4>;
               allwinner,drive = <1>;
               allwinner,pull = <1>;    // only CS should be pulled up
           };
 
           spi1_pins_c: spi1@2 {
               allwinner,pins = "PH5", "PH6", "PH7", "PH8";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           sdc0_pins_a: sdc0@0 {
               allwinner,pins = "PF0", "PF1", "PF2",
                        "PF3", "PF4", "PF5";
               allwinner,function = "sdc0";
               allwinner,muxsel = <2>;
               allwinner,drive = <3>;
               allwinner,pull = <1>;
           };
 
           sdc0_pins_b: sdc0@1 {
               allwinner,pins = "PF0", "PF1", "PF2",
                        "PF3", "PF4", "PF5";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <1>;
           };
 
           sdc0_pins_c: sdc0@2 {
               allwinner,pins = "PF0", "PF1", "PF2",
                        "PF3", "PF4", "PF5";
               allwinner,function = "uart0_jtag";
               allwinner,muxsel = <3>;
               allwinner,drive = <1>;
               allwinner,pull = <1>;
           };
 
           sdc1_pins_a: sdc1@0 {
               allwinner,pins = "PG0", "PG1", "PG2",
                        "PG3", "PG4", "PG5";
               allwinner,function = "sdc1";
               allwinner,muxsel = <2>;
               allwinner,drive = <3>;
               allwinner,pull = <1>;
           };
 
           sdc1_pins_b: sdc1@1 {
               allwinner,pins = "PG0", "PG1", "PG2",
                        "PG3", "PG4", "PG5";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <1>;
           };
 
           sdc2_pins_a: sdc2@0 {
               allwinner,pins = "PC1", "PC5", "PC6",
                        "PC8", "PC9", "PC10", "PC11",
                        "PC13", "PC14", "PC15", "PC16";
               allwinner,function = "sdc2";
               allwinner,muxsel = <3>;
               allwinner,drive = <2>;
               allwinner,pull = <1>;
           };
 
           sdc2_pins_b: sdc2@1 {
               allwinner,pins = "PC0", "PC1", "PC5", "PC6",
                        "PC8", "PC9", "PC10", "PC11",
                        "PC13", "PC14", "PC15", "PC16";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <1>;
           };
 
           sdc2_pins_c: sdc2@2 {
               allwinner,pins = "PC0";
               allwinner,function = "sdc2";
               allwinner,muxsel = <3>;
               allwinner,drive = <2>;
               allwinner,pull = <2>;
           };
 
           spdif_pins_a: spdif@0 {
               allwinner,pins = "PH2", "PH3", "PH4";
               allwinner,function = "spdif";
               allwinner,muxsel = <3>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           spdif_pins_b: spdif_sleep@0 {
               allwinner,pins = "PH2", "PH3", "PH4";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           dmic_pins_a: dmic@0 {
               allwinner,pins = "PI0", "PI1", "PI2", "PI3", "PI4";
               allwinner,function = "dmic";
               allwinner,muxsel = <3>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           dmic_pins_b: dmic_sleep@0 {
               allwinner,pins = "PI0", "PI1", "PI2", "PI3", "PI4";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           /* this set of daudio0 pins is used for t507 board */
           ahub_daudio0_pins_a: ahub_daudio0@0 {
               allwinner,pins = "PA6", "PA7", "PA8", "PA9";
               allwinner,function = "h_i2s0";
               allwinner,muxsel = <3>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           ahub_daudio0_pins_b: ahub_daudio0_sleep@0 {
               allwinner,pins = "PA6", "PA7", "PA8", "PA9";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           /* this set of daudio0 pins is used for h616 board */
           ahub_daudio0_pins_c: h_ahub_daudio0@0 {
               allwinner,pins = "PI0", "PI1", "PI2", "PI3", "PI4";
               allwinner,function = "h_i2s0";
               allwinner,muxsel = <4>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           ahub_daudio0_pins_d: h_ahub_daudio0_sleep@0 {
               allwinner,pins = "PI0", "PI1", "PI2", "PI3", "PI4";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           ahub_daudio2_pins_a: ahub_daudio2@0 {
               allwinner,pins = "PG11", "PG12", "PG13", "PG14";
               allwinner,function = "h_i2s2";
               allwinner,muxsel = <2>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           ahub_daudio2_pins_b: ahub_daudio2_sleep@0 {
               allwinner,pins = "PG11", "PG12", "PG13", "PG14";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           ahub_daudio3_pins_a: ahub_daudio3@0 {
               allwinner,pins = "PH5", "PH6", "PH7", "PH8", "PH9";
               allwinner,function = "h_i2s3";
               allwinner,muxsel = <3>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           ahub_daudio3_pins_b: ahub_daudio3_sleep@0 {
               allwinner,pins = "PH5", "PH6", "PH7", "PH8", "PH9";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           csi1_pins_a: csi1@0 {
               allwinner,pins = "PE0", "PE2", "PE3", "PE4", "PE5",
                        "PE6", "PE7", "PE8", "PE9", "PE10", "PE11",
                        "PE12", "PE13", "PE14", "PE15", "PE16", "PE17",
                         "PE18", "PE19";
               allwinner,pname = "csi1_pck", "csi1_hsync", "csi1_vsync",
                         "csi1_d0", "csi1_d1", "csi1_d2", "csi1_d3",
                         "csi1_d4", "csi1_d5", "csi1_d6", "csi1_d7",
                         "csi1_d8", "csi1_d9", "csi1_d10", "csi1_d11",
                         "csi1_d12", "csi1_d13", "csi1_d14", "csi1_d15";
               allwinner,function = "csi1";
               allwinner,muxsel = <2>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           csi1_pins_b: csi1@1 {
               allwinner,pins = "PE0", "PE2", "PE3", "PE4", "PE5",
                        "PE6", "PE7", "PE8", "PE9", "PE10", "PE11",
                        "PE12", "PE13", "PE14", "PE15", "PE16", "PE17",
                         "PE18", "PE19";
               allwinner,pname = "csi1_pck", "csi1_hsync", "csi1_vsync",
                         "csi1_d0", "csi1_d1", "csi1_d2", "csi1_d3",
                         "csi1_d4", "csi1_d5", "csi1_d6", "csi1_d7",
                         "csi1_d8", "csi1_d9", "csi1_d10", "csi1_d11",
                         "csi1_d12", "csi1_d13", "csi1_d14", "csi1_d15";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
           csi_mclk0_pins_a: csi_mclk0@0 {
               allwinner,pins = "PG19";
               allwinner,pname = "csi_mclk0";
               allwinner,function = "csi_mclk0";
               allwinner,muxsel = <3>;
               allwinner,drive = <2>;
               allwinner,pull = <0>;
           };
           csi_mclk0_pins_b: csi_mclk0@1 {
               allwinner,pins = "PG19";
               allwinner,pname = "csi_mclk0";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <2>;
               allwinner,pull = <0>;
           };
           csi_cci0_pins_a: csi_cci0@0 {
               allwinner,pins = "PG17","PG18";
               allwinner,pname = "csi_cci0_sck","csi_cci0_sda";
               allwinner,function = "csi_cci0";
               allwinner,muxsel = <3>;
               allwinner,drive = <2>;
               allwinner,pull = <0>;
           };
           csi_cci0_pins_b: csi_cci0@1 {
               allwinner,pins = "PG17","PG18";
               allwinner,pname = "csi_cci0_sck","csi_cci0_sda";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <2>;
               allwinner,pull = <0>;
           };
           csi_mclk1_pins_a: csi_mclk1@0 {
               allwinner,pins = "PE1";
               allwinner,pname = "csi_mclk1";
               allwinner,function = "csi_mclk1";
               allwinner,muxsel = <2>;
               allwinner,drive = <2>;
               allwinner,pull = <0>;
           };
           csi_mclk1_pins_b: csi_mclk1@1 {
               allwinner,pins = "PE1";
               allwinner,pname = "csi_mclk1";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <2>;
               allwinner,pull = <0>;
           };
           csi_cci1_pins_a: csi_cci1@0 {
               allwinner,pins = "PE20","PE21";
               allwinner,pname = "csi_cci1_sck","csi_cci1_sda";
               allwinner,function = "csi_cci1";
               allwinner,muxsel = <2>;
               allwinner,drive = <2>;
               allwinner,pull = <0>;
           };
           csi_cci1_pins_b: csi_cci1@1 {
               allwinner,pins = "PE20","PE21";
               allwinner,pname = "csi_cci1_sck","csi_cci1_sda";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <2>;
               allwinner,pull = <0>;
           };
           scr0_pins_a: scr0@0 {
               allwinner,pins = "PG13", "PG14", "PG10", "PG11", "PG12";
               allwinner,pname = "scr0_rst", "scr0_det", "scr0_vccen", "scr0_sck", "scr0_sda";
               allwinner,function = "sim0";
               allwinner,muxsel = <4>;
               allwinner,drive = <0>;
               allwinner,pull = <1>;
           };
 
           scr0_pins_b: scr0@1 {
               allwinner,pins = "PG8", "PG9";
               allwinner,pname = "scr0_vppen", "scr0_vppp";
               allwinner,function = "sim0";
               allwinner,muxsel = <4>;
               allwinner,drive = <0>;
               allwinner,pull = <1>;
           };
 
           scr0_pins_c: scr0@2 {
               allwinner,pins = "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <0>;
               allwinner,pull = <0>;
           };
 
           scr1_pins_a: scr1@0 {
               allwinner,pins = "PH5", "PH6", "PH2",
                        "PH3", "PH4";
               allwinner,pname = "scr1_rst", "scr1_det",
                         "scr1_vccen", "scr1_sck",
                         "scr1_sda";
               allwinner,function = "sim1";
               allwinner,muxsel = <5>;
               allwinner,drive = <1>;
               allwinner,pull = <1>;
           };
 
           scr1_pins_b: scr1@1 {
               allwinner,pins = "PH0", "PH1";
               allwinner,pname = "scr1_vppen", "scr1_vppp";
               allwinner,function = "sim1";
               allwinner,muxsel = <5>;
               allwinner,drive = <1>;
               allwinner,pull = <1>;
           };
 
           scr1_pins_c: scr1@2 {
               allwinner,pins = "PH0", "PH1", "PH2",
                        "PH3", "PH4", "PH5",
                        "PH6";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           nand0_pins_a: nand0@0 {
               allwinner,pins = "PC0", "PC1", "PC2", "PC5",
                        "PC16", "PC15", "PC14", "PC13",
                        "PC11", "PC10", "PC9", "PC8",
                        "PC12";
               allwinner,pname= "nand0_we", "nand0_ale","nand0_cle", "nand0_nre",
                        "nand0_d0", "nand0_d1", "nand0_d2", "nand0_d3",
                        "nand0_d4", "nand0_d5", "nand0_d6", "nand0_d7",
                        "nand0_ndqs";
               allwinner,function = "nand0";
               allwinner,muxsel = <2>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           nand0_pins_b: nand0@1 {
               allwinner,pins = "PC4", "PC6", "PC3", "PC7";
               allwinner,pname= "nand0_ce0", "nand0_rb0", "nand0_ce1", "nand0_rb1";
               allwinner,function = "nand0";
               allwinner,muxsel = <2>;
               allwinner,drive = <1>;
               allwinner,pull = <1>;// only RB&CE should be pulled up
           };
 
           nand0_pins_c: nand0@2 {
               allwinner,pins = "PC0", "PC1", "PC2", "PC3",
                        "PC4", "PC5", "PC6", "PC7",
                        "PC8", "PC9", "PC10", "PC11",
                        "PC12", "PC13", "PC14", "PC15",
                        "PC16";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           ccir_clk_pin_a: ac200@2 {
               allwinner,pins = "PB0";
               allwinner,function = "ac200";
               allwinner,muxsel = <2>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           ccir_clk_pin_b: ac200@3 {
               allwinner,pins = "PB0";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <1>;
               allwinner,pull = <0>;
           };
 
           gmac_pins_a: gmac@0 {
               allwinner,pins = "PI0", "PI1", "PI2", "PI3",
                        "PI4", "PI5", "PI6", "PI7",
                        "PI8", "PI9", "PI10", "PI11",
                        "PI12", "PI13", "PI14", "PI15",
                        "PI16";
               allwinner,function = "gmac0";
               allwinner,muxsel = <2>;
               allwinner,drive = <3>;
               allwinner,pull = <0>;
           };
 
           gmac_pins_b: gmac@1 {
               allwinner,pins = "PI0", "PI1", "PI2", "PI3",
                        "PI4", "PI5", "PI6", "PI7",
                        "PI8", "PI9", "PI10", "PI11",
                        "PI12", "PI13", "PI14", "PI15",
                        "PI16";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <3>;
               allwinner,pull = <0>;
           };
 
           gmac1_pins_a: gmac1@0 {
               allwinner,pins = "PA0", "PA1", "PA2", "PA3",
                        "PA4", "PA5", "PA6", "PA7",
                        "PA8", "PA9";
               allwinner,function = "gmac1";
               allwinner,muxsel = <2>;
               allwinner,drive = <3>;
               allwinner,pull = <0>;
           };
 
           gmac1_pins_b: gmac1@1 {
               allwinner,pins = "PA0", "PA1", "PA2", "PA3",
                        "PA4", "PA5", "PA6", "PA7",
                        "PA8", "PA9";
               allwinner,function = "io_disabled";
               allwinner,muxsel = <7>;
               allwinner,drive = <3>;
               allwinner,pull = <0>;
           };
 
           lvds0_pins_a: lvds0@0 {
               allwinner,pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD8", "PD9", "PD6", "PD7";
               allwinner,pname = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD8", "PD9", "PD6", "PD7";
               allwinner,function = "lvds0";
               allwinner,muxsel = <3>;
               allwinner,drive = <3>;
               allwinner,pull = <0>;
           };
           lvds0_pins_b: lvds0@1 {
               allwinner,pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD8", "PD9", "PD6", "PD7";
               allwinner,pname = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD8", "PD9", "PD6", "PD7";
               allwinner,function = "lvds0_suspend";
               allwinner,muxsel = <7>;
               allwinner,drive = <3>;
               allwinner,pull = <0>;
           };
 
           lvds1_pins_a: lvds1@0 {
               allwinner,pins = "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD18", "PD19", "PD16", "PD17";
               allwinner,pname = "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD18", "PD19", "PD16", "PD17";
               allwinner,function = "lvds1";
               allwinner,muxsel = <3>;
               allwinner,drive = <3>;
               allwinner,pull = <0>;
           };
           lvds1_pins_b: lvds1@1 {
               allwinner,pins = "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD18", "PD19", "PD16", "PD17";
               allwinner,pname = "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD18", "PD19", "PD16", "PD17";
               allwinner,function = "lvds1_suspend";
               allwinner,muxsel = <7>;
               allwinner,drive = <3>;
               allwinner,pull = <0>;
           };
 
           lvds2link_pins_a: lvds2link@0 {
               allwinner,pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD8", "PD9", "PD6", "PD7", \
               "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD18", "PD19", "PD16", "PD17";
               allwinner,pname = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD8", "PD9", "PD6", "PD7", \
               "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD18", "PD19", "PD16", "PD17";
               allwinner,function = "lvds1";
               allwinner,muxsel = <3>;
               allwinner,drive = <3>;
               allwinner,pull = <0>;
           };
           lvds2link_pins_b: lvds2link@1 {
               allwinner,pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD8", "PD9", "PD6", "PD7", \
               "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD18", "PD19", "PD16", "PD17";
               allwinner,pname = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD8", "PD9", "PD6", "PD7", \
               "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD18", "PD19", "PD16", "PD17";
               allwinner,function = "lvds1_suspend";
               allwinner,muxsel = <7>;
               allwinner,drive = <3>;
               allwinner,pull = <0>;
           };
 
           rgb24_pins_a: rgb24@0 {
               allwinner,pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", \
               "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PD18", "PD19", \
               "PD20", "PD21", "PD22", "PD23", "PD24", "PD25", "PD26", "PD27";
               allwinner,pname = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", \
               "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PD18", "PD19", \
               "PD20", "PD21", "PD22", "PD23", "PD24", "PD25", "PD26", "PD27";
               allwinner,function = "rgb24";
               allwinner,muxsel = <2>;
               allwinner,drive = <3>;
               allwinner,pull = <0>;
           };
           rgb24_pins_b: rgb24@1 {
               allwinner,pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", \
               "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PD18", "PD19", \
               "PD20", "PD21", "PD22", "PD23", "PD24", "PD25", "PD26", "PD27";
               allwinner,pname = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", \
               "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PD18", "PD19", \
               "PD20", "PD21", "PD22", "PD23", "PD24", "PD25", "PD26", "PD27";
               allwinner,function = "rgb24_suspend";
               allwinner,muxsel = <7>;
               allwinner,drive = <3>;
               allwinner,pull = <0>;
           };
       };
   };
};