~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/arm64/boot/dts/rockchip/rk3326-gameforce-chi.dts

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
  2 /*
  3  * Copyright (c) 2024 Chris Morgan <macromorgan@hotmail.com>
  4  */
  5 
  6 /dts-v1/;
  7 #include <dt-bindings/gpio/gpio.h>
  8 #include <dt-bindings/input/input.h>
  9 #include <dt-bindings/leds/common.h>
 10 #include <dt-bindings/pinctrl/rockchip.h>
 11 #include "rk3326.dtsi"
 12 
 13 / {
 14         model = "GameForce Chi";
 15         compatible = "gameforce,chi", "rockchip,rk3326";
 16         chassis-type = "handset";
 17 
 18         aliases {
 19                 mmc0 = &sdmmc;
 20                 mmc1 = &sdio;
 21         };
 22 
 23         chosen {
 24                 stdout-path = "serial2:115200n8";
 25         };
 26 
 27         adc_joystick: adc-joystick {
 28                 compatible = "adc-joystick";
 29                 io-channels = <&saradc 0>,
 30                               <&saradc 1>;
 31                 poll-interval = <100>;
 32                 #address-cells = <1>;
 33                 #size-cells = <0>;
 34 
 35                 axis@0 {
 36                         reg = <0>;
 37                         abs-flat = <10>;
 38                         abs-fuzz = <10>;
 39                         abs-range = <850 175>;
 40                         linux,code = <ABS_Y>;
 41                 };
 42 
 43                 axis@1 {
 44                         reg = <1>;
 45                         abs-flat = <10>;
 46                         abs-fuzz = <10>;
 47                         abs-range = <800 190>;
 48                         linux,code = <ABS_X>;
 49                 };
 50         };
 51 
 52         adc_keys: adc-keys {
 53                 compatible = "adc-keys";
 54                 io-channels = <&saradc 2>;
 55                 io-channel-names = "buttons";
 56                 keyup-threshold-microvolt = <1800000>;
 57                 poll-interval = <60>;
 58 
 59                 button-1 {
 60                         label = "HAPPY1";
 61                         linux,code = <BTN_TRIGGER_HAPPY1>;
 62                         press-threshold-microvolt = <15000>;
 63                 };
 64 
 65                 button-2 {
 66                         label = "HAPPY2";
 67                         linux,code = <BTN_TRIGGER_HAPPY2>;
 68                         press-threshold-microvolt = <300000>;
 69                 };
 70         };
 71 
 72         backlight: backlight {
 73                 compatible = "pwm-backlight";
 74                 power-supply = <&vcc_bl>;
 75                 pwms = <&pwm1 0 25000 0>;
 76         };
 77 
 78         battery: battery {
 79                 compatible = "simple-battery";
 80                 charge-full-design-microamp-hours = <3000000>;
 81                 charge-term-current-microamp = <300000>;
 82                 constant-charge-current-max-microamp = <1500000>;
 83                 constant-charge-voltage-max-microvolt = <4200000>;
 84                 factory-internal-resistance-micro-ohms = <180000>;
 85                 ocv-capacity-celsius = <20>;
 86                 ocv-capacity-table-0 =  <4106000 100>, <4071000 95>, <4018000 90>, <3975000 85>,
 87                                         <3946000 80>, <3908000 75>, <3877000 70>, <3853000 65>,
 88                                         <3834000 60>, <3816000 55>, <3802000 50>, <3788000 45>,
 89                                         <3774000 40>, <3760000 35>, <3748000 30>, <3735000 25>,
 90                                         <3718000 20>, <3697000 15>, <3685000 10>, <3625000 5>,
 91                                         <3400000 0>;
 92                 voltage-max-design-microvolt = <4250000>;
 93                 voltage-min-design-microvolt = <3400000>;
 94         };
 95 
 96         gpio_leds: gpio-leds {
 97                 compatible = "gpio-leds";
 98                 pinctrl-names = "default";
 99                 pinctrl-0 = <&led_pins>;
100 
101                 red_led: led-0 {
102                         color = <LED_COLOR_ID_RED>;
103                         gpios = <&gpio3 RK_PC4 GPIO_ACTIVE_HIGH>;
104                 };
105 
106                 green_led: led-1 {
107                         color = <LED_COLOR_ID_GREEN>;
108                         gpios = <&gpio3 RK_PC5 GPIO_ACTIVE_HIGH>;
109                 };
110 
111                 blue_led: led-2 {
112                         color = <LED_COLOR_ID_BLUE>;
113                         gpios = <&gpio3 RK_PC6 GPIO_ACTIVE_HIGH>;
114                 };
115 
116                 white_led: led-3 {
117                         color = <LED_COLOR_ID_WHITE>;
118                         function = LED_FUNCTION_STATUS;
119                         gpios = <&gpio3 RK_PB3 GPIO_ACTIVE_HIGH>;
120                 };
121 
122                 chg_led: led-4 {
123                         color = <LED_COLOR_ID_RED>;
124                         function = LED_FUNCTION_CHARGING;
125                         gpios = <&gpio3 RK_PB2 GPIO_ACTIVE_HIGH>;
126                 };
127 
128         };
129 
130         gpio_keys: gpio-keys {
131                 compatible = "gpio-keys";
132                 pinctrl-0 = <&btn_pins_ctrl>;
133                 pinctrl-names = "default";
134 
135                 button-a {
136                         gpios = <&gpio2 RK_PB0 GPIO_ACTIVE_LOW>;
137                         label = "EAST";
138                         linux,code = <BTN_EAST>;
139                 };
140 
141                 button-b {
142                         gpios = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>;
143                         label = "SOUTH";
144                         linux,code = <BTN_SOUTH>;
145                 };
146 
147                 button-down {
148                         gpios = <&gpio1 RK_PB5 GPIO_ACTIVE_LOW>;
149                         label = "DPAD-DOWN";
150                         linux,code = <BTN_DPAD_DOWN>;
151                 };
152 
153                 button-home {
154                         gpios = <&gpio2 RK_PA0 GPIO_ACTIVE_LOW>;
155                         label = "HOME";
156                         linux,code = <BTN_MODE>;
157                 };
158 
159                 button-l1 {
160                         gpios = <&gpio2 RK_PA6 GPIO_ACTIVE_LOW>;
161                         label = "TL";
162                         linux,code = <BTN_TL>;
163                 };
164 
165                 button-l2 {
166                         gpios = <&gpio2 RK_PA4 GPIO_ACTIVE_LOW>;
167                         label = "TL2";
168                         linux,code = <BTN_TL2>;
169                 };
170 
171                 button-left {
172                         gpios = <&gpio1 RK_PB6 GPIO_ACTIVE_LOW>;
173                         label = "DPAD-LEFT";
174                         linux,code = <BTN_DPAD_LEFT>;
175                 };
176 
177                 button-r1 {
178                         gpios = <&gpio2 RK_PA7 GPIO_ACTIVE_LOW>;
179                         label = "TR";
180                         linux,code = <BTN_TR>;
181                 };
182 
183                 button-r2 {
184                         gpios = <&gpio2 RK_PA5 GPIO_ACTIVE_LOW>;
185                         label = "TR2";
186                         linux,code = <BTN_TR2>;
187                 };
188 
189                 button-right {
190                         gpios = <&gpio1 RK_PB7 GPIO_ACTIVE_LOW>;
191                         label = "DPAD-RIGHT";
192                         linux,code = <BTN_DPAD_RIGHT>;
193                 };
194 
195                 button-select {
196                         gpios = <&gpio2 RK_PA3 GPIO_ACTIVE_LOW>;
197                         label = "SELECT";
198                         linux,code = <BTN_SELECT>;
199                 };
200 
201                 button-start {
202                         gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_LOW>;
203                         label = "START";
204                         linux,code = <BTN_START>;
205                 };
206 
207                 button-up {
208                         gpios = <&gpio1 RK_PB4 GPIO_ACTIVE_LOW>;
209                         label = "DPAD-UP";
210                         linux,code = <BTN_DPAD_UP>;
211                 };
212 
213                 button-x {
214                         gpios = <&gpio2 RK_PB3 GPIO_ACTIVE_LOW>;
215                         label = "NORTH";
216                         linux,code = <BTN_NORTH>;
217                 };
218 
219                 button-y {
220                         gpios = <&gpio2 RK_PB2 GPIO_ACTIVE_LOW>;
221                         label = "WEST";
222                         linux,code = <BTN_WEST>;
223                 };
224         };
225 
226         multi-led {
227                 compatible = "leds-group-multicolor";
228                 color = <LED_COLOR_ID_RGB>;
229                 function = LED_FUNCTION_KBD_BACKLIGHT;
230                 leds = <&red_led>, <&green_led>, <&blue_led>;
231         };
232 
233         spk_amp: audio-amplifier {
234                 compatible = "simple-audio-amplifier";
235                 enable-gpios = <&gpio2 RK_PB5 GPIO_ACTIVE_HIGH>;
236                 pinctrl-0 = <&spk_amp_enable_h>;
237                 pinctrl-names = "default";
238                 sound-name-prefix = "Speaker Amp";
239         };
240 
241         sound {
242                 compatible = "simple-audio-card";
243                 pinctrl-0 = <&hp_det>;
244                 pinctrl-names = "default";
245                 simple-audio-card,name = "rk817_ext";
246                 simple-audio-card,aux-devs = <&spk_amp>;
247                 simple-audio-card,format = "i2s";
248                 simple-audio-card,hp-det-gpio = <&gpio2 RK_PC6 GPIO_ACTIVE_HIGH>;
249                 simple-audio-card,mclk-fs = <256>;
250                 simple-audio-card,widgets =
251                         "Microphone", "Mic Jack",
252                         "Headphone", "Headphones",
253                         "Speaker", "Internal Speakers";
254                 simple-audio-card,routing =
255                         "MICL", "Mic Jack",
256                         "Headphones", "HPOL",
257                         "Headphones", "HPOR",
258                         "Internal Speakers", "Speaker Amp OUTL",
259                         "Internal Speakers", "Speaker Amp OUTR",
260                         "Speaker Amp INL", "HPOL",
261                         "Speaker Amp INR", "HPOR";
262                 simple-audio-card,pin-switches = "Internal Speakers";
263 
264                 simple-audio-card,codec {
265                         sound-dai = <&rk817>;
266                 };
267 
268                 simple-audio-card,cpu {
269                         sound-dai = <&i2s1_2ch>;
270                 };
271         };
272 
273         vibrator_left: pwm-vibrator-l {
274                 compatible = "pwm-vibrator";
275                 pwm-names = "enable";
276                 pwms = <&pwm4 0 25000 0>;
277         };
278 
279         vibrator_right: pwm-vibrator-r {
280                 compatible = "pwm-vibrator";
281                 pwm-names = "enable";
282                 pwms = <&pwm5 0 25000 0>;
283         };
284 
285         sdio_pwrseq: sdio-pwrseq {
286                 compatible = "mmc-pwrseq-simple";
287                 clocks = <&rk817 1>;
288                 clock-names = "ext_clock";
289                 pinctrl-0 = <&wifi_enable_h>;
290                 pinctrl-names = "default";
291                 post-power-on-delay-ms = <200>;
292                 reset-gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_LOW>;
293         };
294 
295         vccsys: vccsys-regulator {
296                 compatible = "regulator-fixed";
297                 regulator-name = "vcc3v8_sys";
298                 regulator-always-on;
299                 regulator-min-microvolt = <3800000>;
300                 regulator-max-microvolt = <3800000>;
301         };
302 };
303 
304 &cpu0 {
305         cpu-supply = <&vdd_arm>;
306 };
307 
308 &cpu1 {
309         cpu-supply = <&vdd_arm>;
310 };
311 
312 &cpu2 {
313         cpu-supply = <&vdd_arm>;
314 };
315 
316 &cpu3 {
317         cpu-supply = <&vdd_arm>;
318 };
319 
320 &display_subsystem {
321         status = "okay";
322 };
323 
324 &dsi {
325         status = "okay";
326 
327         internal_display: panel@0 {
328                 reg = <0>;
329                 compatible = "gameforce,chi-panel";
330                 backlight = <&backlight>;
331                 iovcc-supply = <&vcc_lcd>;
332                 vcc-supply = <&vcc_lcd>;
333                 reset-gpios = <&gpio3 RK_PA0 GPIO_ACTIVE_LOW>;
334 
335                 port {
336                         mipi_in_panel: endpoint {
337                                 remote-endpoint = <&mipi_out_panel>;
338                         };
339                 };
340         };
341 
342         ports {
343                 mipi_out: port@1 {
344                         reg = <1>;
345 
346                         mipi_out_panel: endpoint {
347                                 remote-endpoint = <&mipi_in_panel>;
348                         };
349                 };
350         };
351 };
352 
353 &dsi_dphy {
354         status = "okay";
355 };
356 
357 &gpu {
358         mali-supply = <&vdd_logic>;
359         status = "okay";
360 };
361 
362 &i2c0 {
363         clock-frequency = <400000>;
364         i2c-scl-falling-time-ns = <16>;
365         i2c-scl-rising-time-ns = <280>;
366         status = "okay";
367 
368         rk817: pmic@20 {
369                 compatible = "rockchip,rk817";
370                 reg = <0x20>;
371                 #clock-cells = <1>;
372                 clock-names = "mclk";
373                 clock-output-names = "rk808-clkout1", "xin32k";
374                 clocks = <&cru SCLK_I2S1_OUT>;
375                 interrupt-parent = <&gpio0>;
376                 interrupts = <RK_PC1 IRQ_TYPE_LEVEL_LOW>;
377                 pinctrl-0 = <&pmic_int>, <&i2s1_2ch_mclk>;
378                 pinctrl-names = "default";
379                 #sound-dai-cells = <0>;
380                 system-power-controller;
381                 wakeup-source;
382 
383                 vcc1-supply = <&vccsys>;
384                 vcc2-supply = <&vccsys>;
385                 vcc3-supply = <&vccsys>;
386                 vcc4-supply = <&vccsys>;
387                 vcc5-supply = <&vccsys>;
388                 vcc6-supply = <&vccsys>;
389                 vcc7-supply = <&vcc_3v0>;
390                 vcc8-supply = <&vccsys>;
391                 vcc9-supply = <&dcdc_boost>;
392 
393                 regulators {
394                         vdd_logic: DCDC_REG1 {
395                                 regulator-always-on;
396                                 regulator-boot-on;
397                                 regulator-max-microvolt = <1150000>;
398                                 regulator-min-microvolt = <950000>;
399                                 regulator-name = "vdd_logic";
400                                 regulator-ramp-delay = <6001>;
401 
402                                 regulator-state-mem {
403                                         regulator-on-in-suspend;
404                                         regulator-suspend-microvolt = <950000>;
405                                 };
406                         };
407 
408                         vdd_arm: DCDC_REG2 {
409                                 regulator-always-on;
410                                 regulator-boot-on;
411                                 regulator-max-microvolt = <1350000>;
412                                 regulator-min-microvolt = <950000>;
413                                 regulator-name = "vdd_arm";
414                                 regulator-ramp-delay = <6001>;
415 
416                                 regulator-state-mem {
417                                         regulator-off-in-suspend;
418                                         regulator-suspend-microvolt = <950000>;
419                                 };
420                         };
421 
422                         vcc_ddr: DCDC_REG3 {
423                                 regulator-always-on;
424                                 regulator-boot-on;
425                                 regulator-name = "vcc_ddr";
426 
427                                 regulator-state-mem {
428                                         regulator-on-in-suspend;
429                                 };
430                         };
431 
432                         vcc_3v0: DCDC_REG4 {
433                                 regulator-always-on;
434                                 regulator-boot-on;
435                                 regulator-max-microvolt = <3000000>;
436                                 regulator-min-microvolt = <3000000>;
437                                 regulator-name = "vcc_3v0";
438 
439                                 regulator-state-mem {
440                                         regulator-off-in-suspend;
441                                         regulator-suspend-microvolt = <3000000>;
442                                 };
443                         };
444 
445                         vcc_1v8: LDO_REG2 {
446                                 regulator-always-on;
447                                 regulator-boot-on;
448                                 regulator-max-microvolt = <1800000>;
449                                 regulator-min-microvolt = <1800000>;
450                                 regulator-name = "vcc_1v8";
451 
452                                 regulator-state-mem {
453                                         regulator-on-in-suspend;
454                                         regulator-suspend-microvolt = <1800000>;
455                                 };
456                         };
457 
458                         vdd_1v0: LDO_REG3 {
459                                 regulator-always-on;
460                                 regulator-boot-on;
461                                 regulator-max-microvolt = <1000000>;
462                                 regulator-min-microvolt = <1000000>;
463                                 regulator-name = "vdd_1v0";
464 
465                                 regulator-state-mem {
466                                         regulator-on-in-suspend;
467                                         regulator-suspend-microvolt = <1000000>;
468                                 };
469                         };
470 
471                         vcc_3v0_pmu: LDO_REG4 {
472                                 regulator-always-on;
473                                 regulator-boot-on;
474                                 regulator-max-microvolt = <3000000>;
475                                 regulator-min-microvolt = <3000000>;
476                                 regulator-name = "vcc_3v0_pmu";
477 
478                                 regulator-state-mem {
479                                         regulator-on-in-suspend;
480                                         regulator-suspend-microvolt = <3000000>;
481                                 };
482                         };
483 
484                         vccio_sd: LDO_REG5 {
485                                 regulator-always-on;
486                                 regulator-boot-on;
487                                 regulator-max-microvolt = <3300000>;
488                                 regulator-min-microvolt = <1800000>;
489                                 regulator-name = "vccio_sd";
490 
491                                 regulator-state-mem {
492                                         regulator-on-in-suspend;
493                                         regulator-suspend-microvolt = <3300000>;
494                                 };
495                         };
496 
497                         vcc_sd: LDO_REG6 {
498                                 regulator-boot-on;
499                                 regulator-max-microvolt = <3300000>;
500                                 regulator-min-microvolt = <3300000>;
501                                 regulator-name = "vcc_sd";
502 
503                                 regulator-state-mem {
504                                         regulator-on-in-suspend;
505                                         regulator-suspend-microvolt = <3300000>;
506                                 };
507                         };
508 
509                         vcc_bl: LDO_REG7 {
510                                 regulator-max-microvolt = <3300000>;
511                                 regulator-min-microvolt = <3300000>;
512                                 regulator-name = "vcc_bl";
513 
514                                 regulator-state-mem {
515                                         regulator-off-in-suspend;
516                                         regulator-suspend-microvolt = <3300000>;
517                                 };
518                         };
519 
520                         vcc_lcd: LDO_REG8 {
521                                 regulator-max-microvolt = <2800000>;
522                                 regulator-min-microvolt = <2800000>;
523                                 regulator-name = "vcc_lcd";
524 
525                                 regulator-state-mem {
526                                         regulator-off-in-suspend;
527                                         regulator-suspend-microvolt = <2800000>;
528                                 };
529                         };
530 
531                         vcc_wifi: LDO_REG9 {
532                                 regulator-always-on;
533                                 regulator-boot-on;
534                                 regulator-max-microvolt = <3300000>;
535                                 regulator-min-microvolt = <3300000>;
536                                 regulator-name = "vcc_wifi";
537 
538                                 regulator-state-mem {
539                                         regulator-off-in-suspend;
540                                         regulator-suspend-microvolt = <3300000>;
541                                 };
542                         };
543 
544                         dcdc_boost: BOOST {
545                                 regulator-max-microvolt = <5000000>;
546                                 regulator-min-microvolt = <5000000>;
547                                 regulator-name = "dcdc_boost";
548 
549                                 regulator-state-mem {
550                                         regulator-off-in-suspend;
551                                 };
552                         };
553 
554                         otg_switch: OTG_SWITCH {
555                                 regulator-name = "otg_switch";
556 
557                                 regulator-state-mem {
558                                         regulator-off-in-suspend;
559                                 };
560                         };
561                 };
562 
563                 rk817_charger: charger {
564                         monitored-battery = <&battery>;
565                         rockchip,resistor-sense-micro-ohms = <10000>;
566                         rockchip,sleep-enter-current-microamp = <300000>;
567                         rockchip,sleep-filter-current-microamp = <100000>;
568                 };
569         };
570 };
571 
572 &i2s1_2ch {
573         status = "okay";
574 };
575 
576 &io_domains {
577         vccio1-supply = <&vcc_3v0_pmu>;
578         vccio2-supply = <&vccio_sd>;
579         vccio3-supply = <&vcc_3v0>;
580         vccio4-supply = <&vcc_3v0>;
581         vccio5-supply = <&vcc_3v0>;
582         vccio6-supply = <&vcc_3v0>;
583         status = "okay";
584 };
585 
586 &pinctrl {
587         bluetooth-pins {
588                 bt_reset: bt-reset {
589                         rockchip,pins =
590                                 <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_down>;
591                 };
592 
593                 bt_wake_dev: bt-wake-dev {
594                         rockchip,pins =
595                                 <0 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>;
596                 };
597 
598                 bt_wake_host: bt-wake-host {
599                         rockchip,pins =
600                                 <0 RK_PA7 RK_FUNC_GPIO &pcfg_pull_none>;
601                 };
602         };
603 
604         headphone {
605                 hp_det: hp-det {
606                         rockchip,pins =
607                                 <2 RK_PC6 RK_FUNC_GPIO &pcfg_pull_up>;
608                 };
609         };
610 
611         gpio-btns {
612                 btn_pins_ctrl: btn-pins-ctrl {
613                         rockchip,pins =
614                                 <1 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>,
615                                 <1 RK_PB5 RK_FUNC_GPIO &pcfg_pull_up>,
616                                 <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_up>,
617                                 <1 RK_PB7 RK_FUNC_GPIO &pcfg_pull_up>,
618                                 <2 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up>,
619                                 <2 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>,
620                                 <2 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>,
621                                 <2 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>,
622                                 <2 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>,
623                                 <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>,
624                                 <2 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>,
625                                 <2 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>,
626                                 <2 RK_PB1 RK_FUNC_GPIO &pcfg_pull_up>,
627                                 <2 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>,
628                                 <2 RK_PB3 RK_FUNC_GPIO &pcfg_pull_up>;
629                 };
630         };
631 
632         gpio-leds {
633                 led_pins: led-pins {
634                         rockchip,pins =
635                                 <3 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>,
636                                 <3 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>,
637                                 <3 RK_PC4 RK_FUNC_GPIO &pcfg_pull_none>,
638                                 <3 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>,
639                                 <3 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
640                 };
641         };
642 
643         pmic {
644                 pmic_int: pmic-int {
645                         rockchip,pins =
646                                 <0 RK_PC1 RK_FUNC_GPIO &pcfg_pull_up>;
647                 };
648 
649                 soc_slppin_gpio: soc_slppin_gpio {
650                         rockchip,pins =
651                                 <0 RK_PA4 RK_FUNC_GPIO &pcfg_output_low>;
652                 };
653 
654                 soc_slppin_rst: soc_slppin_rst {
655                         rockchip,pins =
656                                 <0 RK_PA4 2 &pcfg_pull_none>;
657                 };
658 
659                 soc_slppin_slp: soc_slppin_slp {
660                         rockchip,pins =
661                                 <0 RK_PA4 1 &pcfg_pull_none>;
662                 };
663         };
664 
665         sdio-pwrseq {
666                 wifi_enable_h: wifi-enable-h {
667                         rockchip,pins =
668                                 <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
669                 };
670         };
671 
672         speaker {
673                 spk_amp_enable_h: spk-amp-enable-h {
674                         rockchip,pins =
675                                 <2 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>;
676                 };
677         };
678 };
679 
680 &pmu_io_domains {
681         pmuio1-supply = <&vcc_1v8>;
682         pmuio2-supply = <&vcc_3v0_pmu>;
683         status = "okay";
684 };
685 
686 &pwm1 {
687         status = "okay";
688 };
689 
690 &pwm4 {
691         status = "okay";
692 };
693 
694 &pwm5 {
695         status = "okay";
696 };
697 
698 &saradc {
699         vref-supply = <&vcc_1v8>;
700         status = "okay";
701 };
702 
703 &sdio {
704         bus-width = <4>;
705         cap-sd-highspeed;
706         cap-sdio-irq;
707         disable-wp;
708         keep-power-in-suspend;
709         mmc-pwrseq = <&sdio_pwrseq>;
710         no-mmc;
711         no-sd;
712         non-removable;
713         sd-uhs-sdr104;
714         status = "okay";
715 };
716 
717 &sdmmc {
718         cap-mmc-highspeed;
719         cap-sd-highspeed;
720         no-sdio;
721         sd-uhs-sdr12;
722         sd-uhs-sdr25;
723         sd-uhs-sdr50;
724         sd-uhs-sdr104;
725         vmmc-supply = <&vcc_sd>;
726         vqmmc-supply = <&vccio_sd>;
727         status = "okay";
728 };
729 
730 &sfc {
731         #address-cells = <1>;
732         pinctrl-0 = <&sfc_clk &sfc_cs0 &sfc_bus2>;
733         pinctrl-names = "default";
734         #size-cells = <0>;
735         status = "okay";
736 
737         flash@0 {
738                 compatible = "jedec,spi-nor";
739                 reg = <0>;
740                 spi-max-frequency = <108000000>;
741                 spi-rx-bus-width = <2>;
742                 spi-tx-bus-width = <1>;
743         };
744 };
745 
746 &tsadc {
747         status = "okay";
748 };
749 
750 &u2phy {
751         status = "okay";
752 
753         u2phy_otg: otg-port {
754                 status = "okay";
755         };
756 };
757 
758 &usb20_otg {
759         status = "okay";
760 };
761 
762 /*
763  * The right ADC joystick exists connected to an unknown ADC
764  * controller which can be communicated with via uart0. This ADC device
765  * is an 8-pin SOIC with no markings located right next to the left ADC
766  * joystick ribbon cable. The pinout for this ADC controller appears to
767  * be pin 1 - VCC (2.8v), pin 2 - 1.8v (clk maybe?), pin 3 - GPIO 10,
768  * pin 4 - unknown, pin 5 - unknown, pin 6 - analog in, pin 7 - analog in,
769  * pin 8 - ground. There is currently a userspace UART driver for this
770  * device but it only works with the BSP joystick driver.
771  */
772 &uart0 {
773         status = "okay";
774 };
775 
776 /*
777  * Bluetooth was not working on BSP and is not currently working on
778  * mainline due to missing firmware. Bluetooth requires removal of DMA
779  * or else it will not probe.
780  */
781 &uart1 {
782         /delete-property/ dma-names;
783         /delete-property/ dmas;
784         uart-has-rtscts;
785         status = "okay";
786 
787         bluetooth: bluetooth {
788                 compatible = "realtek,rtl8723ds-bt";
789                 device-wake-gpios = <&gpio0 RK_PA1 GPIO_ACTIVE_HIGH>;
790                 enable-gpios = <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>;
791                 host-wake-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_HIGH>;
792                 pinctrl-0 = <&bt_reset>, <&bt_wake_dev>, <&bt_wake_host>;
793                 pinctrl-names = "default";
794         };
795 };
796 
797 &uart2 {
798         pinctrl-0 = <&uart2m1_xfer>;
799         pinctrl-names = "default";
800         status = "okay";
801 };
802 
803 &vopb {
804         status = "okay";
805 };
806 
807 &vopb_mmu {
808         status = "okay";
809 };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php