12f217d71SMaya Matuszczyk// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 22f217d71SMaya Matuszczyk/* 32f217d71SMaya Matuszczyk * Copyright (c) 2019 Hardkernel Co., Ltd 42f217d71SMaya Matuszczyk * Copyright (c) 2020 Theobroma Systems Design und Consulting GmbH 52f217d71SMaya Matuszczyk * Copyright (c) 2022 Maya Matuszczyk <maccraft123mc@gmail.com> 62f217d71SMaya Matuszczyk */ 72f217d71SMaya Matuszczyk 82f217d71SMaya Matuszczyk/dts-v1/; 92f217d71SMaya Matuszczyk#include "rk3326-odroid-go.dtsi" 102f217d71SMaya Matuszczyk 112f217d71SMaya Matuszczyk/ { 122f217d71SMaya Matuszczyk model = "ODROID-GO Super"; 132f217d71SMaya Matuszczyk compatible = "hardkernel,rk3326-odroid-go3", "rockchip,rk3326"; 142f217d71SMaya Matuszczyk 152f217d71SMaya Matuszczyk joystick_mux_controller: mux-controller { 162f217d71SMaya Matuszczyk compatible = "gpio-mux"; 172f217d71SMaya Matuszczyk pinctrl = <&mux_en_pins>; 182f217d71SMaya Matuszczyk #mux-control-cells = <0>; 192f217d71SMaya Matuszczyk 202f217d71SMaya Matuszczyk mux-gpios = <&gpio3 RK_PB3 GPIO_ACTIVE_LOW>, 212f217d71SMaya Matuszczyk <&gpio3 RK_PB0 GPIO_ACTIVE_LOW>; 222f217d71SMaya Matuszczyk }; 232f217d71SMaya Matuszczyk 242f217d71SMaya Matuszczyk joystick_mux: adc-mux { 252f217d71SMaya Matuszczyk compatible = "io-channel-mux"; 262f217d71SMaya Matuszczyk io-channels = <&saradc 1>; 272f217d71SMaya Matuszczyk io-channel-names = "parent"; 282f217d71SMaya Matuszczyk #io-channel-cells = <1>; 292f217d71SMaya Matuszczyk 302f217d71SMaya Matuszczyk mux-controls = <&joystick_mux_controller>; 312f217d71SMaya Matuszczyk channels = "0", "1", "2", "3"; 322f217d71SMaya Matuszczyk }; 332f217d71SMaya Matuszczyk 342f217d71SMaya Matuszczyk analog_sticks: adc-joystick { 352f217d71SMaya Matuszczyk compatible = "adc-joystick"; 362f217d71SMaya Matuszczyk io-channels = <&joystick_mux 0>, 372f217d71SMaya Matuszczyk <&joystick_mux 1>, 382f217d71SMaya Matuszczyk <&joystick_mux 2>, 392f217d71SMaya Matuszczyk <&joystick_mux 3>; 402f217d71SMaya Matuszczyk poll-interval = <60>; 412f217d71SMaya Matuszczyk #address-cells = <1>; 422f217d71SMaya Matuszczyk #size-cells = <0>; 432f217d71SMaya Matuszczyk 442f217d71SMaya Matuszczyk axis@0 { 452f217d71SMaya Matuszczyk reg = <0>; 462f217d71SMaya Matuszczyk abs-flat = <10>; 472f217d71SMaya Matuszczyk abs-fuzz = <10>; 482f217d71SMaya Matuszczyk abs-range = <180 800>; 492f217d71SMaya Matuszczyk linux,code = <ABS_X>; 502f217d71SMaya Matuszczyk }; 512f217d71SMaya Matuszczyk 522f217d71SMaya Matuszczyk axis@1 { 532f217d71SMaya Matuszczyk reg = <1>; 542f217d71SMaya Matuszczyk abs-flat = <10>; 552f217d71SMaya Matuszczyk abs-fuzz = <10>; 562f217d71SMaya Matuszczyk abs-range = <180 800>; 572f217d71SMaya Matuszczyk linux,code = <ABS_RX>; 582f217d71SMaya Matuszczyk }; 592f217d71SMaya Matuszczyk 602f217d71SMaya Matuszczyk axis@2 { 612f217d71SMaya Matuszczyk reg = <2>; 622f217d71SMaya Matuszczyk abs-flat = <10>; 632f217d71SMaya Matuszczyk abs-fuzz = <10>; 642f217d71SMaya Matuszczyk abs-range = <180 800>; 652f217d71SMaya Matuszczyk linux,code = <ABS_Y>; 662f217d71SMaya Matuszczyk }; 672f217d71SMaya Matuszczyk 682f217d71SMaya Matuszczyk axis@3 { 692f217d71SMaya Matuszczyk reg = <3>; 702f217d71SMaya Matuszczyk abs-flat = <10>; 712f217d71SMaya Matuszczyk abs-fuzz = <10>; 722f217d71SMaya Matuszczyk abs-range = <180 800>; 732f217d71SMaya Matuszczyk linux,code = <ABS_RY>; 742f217d71SMaya Matuszczyk }; 752f217d71SMaya Matuszczyk }; 762f217d71SMaya Matuszczyk 772f217d71SMaya Matuszczyk battery: battery { 782f217d71SMaya Matuszczyk compatible = "simple-battery"; 792f217d71SMaya Matuszczyk charge-full-design-microamp-hours = <4000000>; 802f217d71SMaya Matuszczyk charge-term-current-microamp = <300000>; 812f217d71SMaya Matuszczyk constant-charge-current-max-microamp = <2000000>; 822f217d71SMaya Matuszczyk constant-charge-voltage-max-microvolt = <4200000>; 832f217d71SMaya Matuszczyk factory-internal-resistance-micro-ohms = <180000>; 842f217d71SMaya Matuszczyk voltage-max-design-microvolt = <4100000>; 852f217d71SMaya Matuszczyk voltage-min-design-microvolt = <3500000>; 862f217d71SMaya Matuszczyk 872f217d71SMaya Matuszczyk ocv-capacity-celsius = <20>; 882f217d71SMaya Matuszczyk ocv-capacity-table-0 = <4046950 100>, <4001920 95>, <3967900 90>, <3919950 85>, 892f217d71SMaya Matuszczyk <3888450 80>, <3861850 75>, <3831540 70>, <3799130 65>, 902f217d71SMaya Matuszczyk <3768190 60>, <3745650 55>, <3726610 50>, <3711630 45>, 912f217d71SMaya Matuszczyk <3696720 40>, <3685660 35>, <3674950 30>, <3663050 25>, 922f217d71SMaya Matuszczyk <3649470 20>, <3635260 15>, <3616920 10>, <3592440 5>, 932f217d71SMaya Matuszczyk <3574170 0>; 942f217d71SMaya Matuszczyk }; 952f217d71SMaya Matuszczyk 962f217d71SMaya Matuszczyk gpio-keys-vol { 972f217d71SMaya Matuszczyk compatible = "gpio-keys"; 982f217d71SMaya Matuszczyk autorepeat; 992f217d71SMaya Matuszczyk pinctrl-0 = <&btn_pins_vol>; 1002f217d71SMaya Matuszczyk pinctrl-names = "default"; 1012f217d71SMaya Matuszczyk 1022f217d71SMaya Matuszczyk button-vol-down { 1032f217d71SMaya Matuszczyk gpios = <&gpio2 RK_PA1 GPIO_ACTIVE_LOW>; 1042f217d71SMaya Matuszczyk label = "VOLUMEDOWN"; 1052f217d71SMaya Matuszczyk linux,code = <KEY_VOLUMEDOWN>; 1062f217d71SMaya Matuszczyk }; 1072f217d71SMaya Matuszczyk 1082f217d71SMaya Matuszczyk button-volume-up { 1092f217d71SMaya Matuszczyk gpios = <&gpio2 RK_PA0 GPIO_ACTIVE_LOW>; 1102f217d71SMaya Matuszczyk label = "VOLUMEUP"; 1112f217d71SMaya Matuszczyk linux,code = <KEY_VOLUMEUP>; 1122f217d71SMaya Matuszczyk }; 1132f217d71SMaya Matuszczyk }; 1142f217d71SMaya Matuszczyk}; 1152f217d71SMaya Matuszczyk 1162f217d71SMaya Matuszczyk/* f1 and f2 conflict with volume buttons */ 1172f217d71SMaya Matuszczyk/delete-node/ &btn_f1; 1182f217d71SMaya Matuszczyk/delete-node/ &btn_f2; 1192f217d71SMaya Matuszczyk 1202f217d71SMaya Matuszczyk&builtin_gamepad { 1212f217d71SMaya Matuszczyk button-sw19 { 1222f217d71SMaya Matuszczyk gpios = <&gpio3 RK_PB1 GPIO_ACTIVE_LOW>; 1232f217d71SMaya Matuszczyk label = "SELECT"; 1242f217d71SMaya Matuszczyk linux,code = <BTN_SELECT>; 1252f217d71SMaya Matuszczyk }; 1262f217d71SMaya Matuszczyk /* note that TR2 and TL2 are swapped */ 1272f217d71SMaya Matuszczyk button-sw20 { 1282f217d71SMaya Matuszczyk gpios = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>; 1292f217d71SMaya Matuszczyk label = "TOP-RIGHT 2"; 1302f217d71SMaya Matuszczyk linux,code = <BTN_TR2>; 1312f217d71SMaya Matuszczyk }; 1322f217d71SMaya Matuszczyk button-sw21 { 1332f217d71SMaya Matuszczyk gpios = <&gpio3 RK_PB2 GPIO_ACTIVE_LOW>; 1342f217d71SMaya Matuszczyk label = "TOP-LEFT 2"; 1352f217d71SMaya Matuszczyk linux,code = <BTN_TL2>; 1362f217d71SMaya Matuszczyk }; 1372f217d71SMaya Matuszczyk button-sw22 { 1382f217d71SMaya Matuszczyk gpios = <&gpio3 RK_PB4 GPIO_ACTIVE_LOW>; 1392f217d71SMaya Matuszczyk label = "START"; 1402f217d71SMaya Matuszczyk linux,code = <BTN_START>; 1412f217d71SMaya Matuszczyk }; 1422f217d71SMaya Matuszczyk}; 1432f217d71SMaya Matuszczyk 1442f217d71SMaya Matuszczyk&internal_display { 145f94c11adSMaya Matuszczyk compatible = "elida,kd50t048a", "sitronix,st7701"; 146f94c11adSMaya Matuszczyk reset-gpios = <&gpio3 RK_PC0 GPIO_ACTIVE_HIGH>; 147*07099a55SKrzysztof Kozlowski IOVCC-supply = <&vcc_lcd>; 148f94c11adSMaya Matuszczyk VCC-supply = <&vcc_lcd>; 1492f217d71SMaya Matuszczyk}; 1502f217d71SMaya Matuszczyk 1512f217d71SMaya Matuszczyk&rk817_charger { 1522f217d71SMaya Matuszczyk monitored-battery = <&battery>; 1532f217d71SMaya Matuszczyk}; 1542f217d71SMaya Matuszczyk 1552f217d71SMaya Matuszczyk&pinctrl { 1562f217d71SMaya Matuszczyk btns { 1572f217d71SMaya Matuszczyk btn_pins: btn-pins { 1582f217d71SMaya Matuszczyk rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>, 1592f217d71SMaya Matuszczyk <1 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>, 1602f217d71SMaya Matuszczyk <1 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>, 1612f217d71SMaya Matuszczyk <1 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>, 1622f217d71SMaya Matuszczyk <1 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>, 1632f217d71SMaya Matuszczyk <1 RK_PB5 RK_FUNC_GPIO &pcfg_pull_up>, 1642f217d71SMaya Matuszczyk <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_up>, 1652f217d71SMaya Matuszczyk <1 RK_PB7 RK_FUNC_GPIO &pcfg_pull_up>, 1662f217d71SMaya Matuszczyk <2 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>, 1672f217d71SMaya Matuszczyk <2 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>, 1682f217d71SMaya Matuszczyk <2 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>, 1692f217d71SMaya Matuszczyk <2 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>, 1702f217d71SMaya Matuszczyk <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>, 1712f217d71SMaya Matuszczyk <2 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>, 1722f217d71SMaya Matuszczyk <3 RK_PB1 RK_FUNC_GPIO &pcfg_pull_up>, 1732f217d71SMaya Matuszczyk <3 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>, 1742f217d71SMaya Matuszczyk <3 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>, 1752f217d71SMaya Matuszczyk <3 RK_PB7 RK_FUNC_GPIO &pcfg_pull_up>; 1762f217d71SMaya Matuszczyk }; 1772f217d71SMaya Matuszczyk btn_pins_vol: btn-pins-vol { 1782f217d71SMaya Matuszczyk rockchip,pins = <2 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up>, 1792f217d71SMaya Matuszczyk <2 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up>; 1802f217d71SMaya Matuszczyk }; 1812f217d71SMaya Matuszczyk }; 1822f217d71SMaya Matuszczyk 1832f217d71SMaya Matuszczyk joystick { 1842f217d71SMaya Matuszczyk mux_en_pins: mux-pins { 1852f217d71SMaya Matuszczyk rockchip,pins = <3 RK_PB5 RK_FUNC_GPIO &pcfg_output_low>; 1862f217d71SMaya Matuszczyk }; 1872f217d71SMaya Matuszczyk }; 1882f217d71SMaya Matuszczyk}; 189