xref: /linux/scripts/dtc/include-prefixes/arm64/rockchip/rk3566-anbernic-rg353ps.dts (revision c771600c6af14749609b49565ffb4cac2959710d)
14d83538aSChris Morgan// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
24d83538aSChris Morgan
34d83538aSChris Morgan/dts-v1/;
44d83538aSChris Morgan
54d83538aSChris Morgan#include <dt-bindings/gpio/gpio.h>
64d83538aSChris Morgan#include <dt-bindings/input/linux-event-codes.h>
74d83538aSChris Morgan#include <dt-bindings/pinctrl/rockchip.h>
84d83538aSChris Morgan#include "rk3566-anbernic-rg353x.dtsi"
94d83538aSChris Morgan
104d83538aSChris Morgan/ {
11b41b83b7SChris Morgan	model = "Anbernic RG353PS";
124d83538aSChris Morgan	compatible = "anbernic,rg353ps", "rockchip,rk3566";
134d83538aSChris Morgan
144d83538aSChris Morgan	aliases {
154d83538aSChris Morgan		mmc0 = &sdmmc0;
164d83538aSChris Morgan		mmc1 = &sdmmc1;
174d83538aSChris Morgan		mmc2 = &sdmmc2;
184d83538aSChris Morgan	};
194d83538aSChris Morgan
204d83538aSChris Morgan	battery: battery {
214d83538aSChris Morgan		compatible = "simple-battery";
224d83538aSChris Morgan		charge-full-design-microamp-hours = <3472000>;
234d83538aSChris Morgan		charge-term-current-microamp = <300000>;
244d83538aSChris Morgan		constant-charge-current-max-microamp = <2000000>;
254d83538aSChris Morgan		constant-charge-voltage-max-microvolt = <4200000>;
264d83538aSChris Morgan		factory-internal-resistance-micro-ohms = <117000>;
274d83538aSChris Morgan		voltage-max-design-microvolt = <4172000>;
284d83538aSChris Morgan		voltage-min-design-microvolt = <3400000>;
294d83538aSChris Morgan
304d83538aSChris Morgan		ocv-capacity-celsius = <20>;
314d83538aSChris Morgan		ocv-capacity-table-0 =  <4172000 100>, <4054000 95>, <3984000 90>, <3926000 85>,
324d83538aSChris Morgan					<3874000 80>, <3826000 75>, <3783000 70>, <3746000 65>,
334d83538aSChris Morgan					<3714000 60>, <3683000 55>, <3650000 50>, <3628000 45>,
344d83538aSChris Morgan					<3612000 40>, <3600000 35>, <3587000 30>, <3571000 25>,
354d83538aSChris Morgan					<3552000 20>, <3525000 15>, <3492000 10>, <3446000 5>,
364d83538aSChris Morgan					<3400000 0>;
374d83538aSChris Morgan	};
384d83538aSChris Morgan
394d83538aSChris Morgan	/* Channels reversed for both headphones and speakers. */
404d83538aSChris Morgan	sound {
414d83538aSChris Morgan		compatible = "simple-audio-card";
424d83538aSChris Morgan		simple-audio-card,name = "rk817_ext";
434d83538aSChris Morgan		simple-audio-card,aux-devs = <&spk_amp>;
444d83538aSChris Morgan		simple-audio-card,format = "i2s";
45*7ac5c0a5SGeert Uytterhoeven		simple-audio-card,hp-det-gpios = <&gpio4 RK_PC6 GPIO_ACTIVE_HIGH>;
464d83538aSChris Morgan		simple-audio-card,mclk-fs = <256>;
474d83538aSChris Morgan		simple-audio-card,widgets =
484d83538aSChris Morgan			"Microphone", "Mic Jack",
494d83538aSChris Morgan			"Headphone", "Headphones",
504d83538aSChris Morgan			"Speaker", "Internal Speakers";
514d83538aSChris Morgan		simple-audio-card,routing =
524d83538aSChris Morgan			"MICL", "Mic Jack",
534d83538aSChris Morgan			"Headphones", "HPOL",
544d83538aSChris Morgan			"Headphones", "HPOR",
554d83538aSChris Morgan			"Internal Speakers", "Speaker Amp OUTL",
564d83538aSChris Morgan			"Internal Speakers", "Speaker Amp OUTR",
574d83538aSChris Morgan			"Speaker Amp INL", "HPOL",
584d83538aSChris Morgan			"Speaker Amp INR", "HPOR";
594d83538aSChris Morgan		simple-audio-card,pin-switches = "Internal Speakers";
604d83538aSChris Morgan
614d83538aSChris Morgan		simple-audio-card,codec {
624d83538aSChris Morgan			sound-dai = <&rk817>;
634d83538aSChris Morgan		};
644d83538aSChris Morgan
654d83538aSChris Morgan		simple-audio-card,cpu {
664d83538aSChris Morgan			sound-dai = <&i2s1_8ch>;
674d83538aSChris Morgan		};
684d83538aSChris Morgan	};
694d83538aSChris Morgan
704d83538aSChris Morgan	spk_amp: audio-amplifier {
714d83538aSChris Morgan		compatible = "simple-audio-amplifier";
724d83538aSChris Morgan		enable-gpios = <&gpio4 RK_PC2 GPIO_ACTIVE_HIGH>;
734d83538aSChris Morgan		pinctrl-0 = <&spk_amp_enable_h>;
744d83538aSChris Morgan		pinctrl-names = "default";
754d83538aSChris Morgan		sound-name-prefix = "Speaker Amp";
764d83538aSChris Morgan	};
774d83538aSChris Morgan};
784d83538aSChris Morgan
794d83538aSChris Morgan&gpio_keys_control {
804d83538aSChris Morgan	button-r1 {
814d83538aSChris Morgan		gpios = <&gpio3 RK_PB4 GPIO_ACTIVE_LOW>;
824d83538aSChris Morgan		label = "TR";
834d83538aSChris Morgan		linux,code = <BTN_TR>;
844d83538aSChris Morgan	};
854d83538aSChris Morgan
864d83538aSChris Morgan	button-r2 {
874d83538aSChris Morgan		gpios = <&gpio3 RK_PB3 GPIO_ACTIVE_LOW>;
884d83538aSChris Morgan		label = "TR2";
894d83538aSChris Morgan		linux,code = <BTN_TR2>;
904d83538aSChris Morgan	};
914d83538aSChris Morgan};
924d83538aSChris Morgan
934d83538aSChris Morgan&panel {
944d83538aSChris Morgan	compatible = "anbernic,rg353v-panel-v2";
954d83538aSChris Morgan	iovcc-supply = <&vcc3v3_lcd0_n>;
964d83538aSChris Morgan	vcc-supply = <&vcc3v3_lcd0_n>;
974d83538aSChris Morgan	/delete-property/ vdd-supply;
984d83538aSChris Morgan};
994d83538aSChris Morgan
1004d83538aSChris Morgan&pinctrl {
1014d83538aSChris Morgan	audio-amplifier {
1024d83538aSChris Morgan		spk_amp_enable_h: spk-amp-enable-h {
1034d83538aSChris Morgan			rockchip,pins =
1044d83538aSChris Morgan				<4 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
1054d83538aSChris Morgan		};
1064d83538aSChris Morgan	};
1074d83538aSChris Morgan};
1084d83538aSChris Morgan
1094d83538aSChris Morgan&rk817 {
1104d83538aSChris Morgan	rk817_charger: charger {
1114d83538aSChris Morgan		monitored-battery = <&battery>;
1124d83538aSChris Morgan		rockchip,resistor-sense-micro-ohms = <10000>;
1134d83538aSChris Morgan		rockchip,sleep-enter-current-microamp = <300000>;
1144d83538aSChris Morgan		rockchip,sleep-filter-current-microamp = <100000>;
1154d83538aSChris Morgan	};
1164d83538aSChris Morgan};
117