• 周日. 5月 4th, 2025

dts — rk3399-sapphire-excavator-edp-android-6.0.dts

3月 7, 2020

关键词:rk3399-sapphire-excavator-edp-android-6.0.dts, linux-4.4, rockchip, dts

dts — rk3399-sapphire-excavator-edp-android-6.0.dts

/*
 * Copyright (c) 2016 Fuzhou Rockchip Electronics Co., Ltd
 *
 * This file is dual-licensed: you can use it either under the terms
 * of the GPL or the X11 license, at your option. Note that this dual
 * licensing only applies to this file, and not this project as a
 * whole.
 *
 *  a) This file is free software; you can redistribute it and/or
 *     modify it under the terms of the GNU General Public License as
 *     published by the Free Software Foundation; either version 2 of the
 *     License, or (at your option) any later version.
 *
 *     This file is distributed in the hope that it will be useful,
 *     but WITHOUT ANY WARRANTY; without even the implied warranty of
 *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *     GNU General Public License for more details.
 *
 * Or, alternatively,
 *
 *  b) Permission is hereby granted, free of charge, to any person
 *     obtaining a copy of this software and associated documentation
 *     files (the "Software"), to deal in the Software without
 *     restriction, including without limitation the rights to use,
 *     copy, modify, merge, publish, distribute, sublicense, and/or
 *     sell copies of the Software, and to permit persons to whom the
 *     Software is furnished to do so, subject to the following
 *     conditions:
 *
 *     The above copyright notice and this permission notice shall be
 *     included in all copies or substantial portions of the Software.
 *
 *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
 *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
 *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 *     OTHER DEALINGS IN THE SOFTWARE.
 */

/dts-v1/;

#include <dt-bindings/input/input.h>
#include "rk3399-excavator-sapphire.dtsi"
#include "rk3399-android-6.0.dtsi"

/ {
	compatible = "rockchip,rk3399-excavator-edp", "rockchip,rk3399";

	test-power {
		status = "okay";
	};

	rt5651-sound {
		status = "disabled";
	};

	hdmiin-sound {
		compatible = "rockchip,rockchip-rt5651-tc358749x-sound";
		rockchip,cpu = <&i2s0>;
		rockchip,codec = <&rt5651 &rt5651 &tc358749x>;
		status = "okay";
	};
};

&backlight {
	status = "okay";
};

&cdn_dp_fb {
	status = "okay";
	extcon = <&fusb0>;
	dp_vop_sel = <DISPLAY_SOURCE_LCDC1>;
};

&cdn_dp_sound {
	status = "okay";
};

&edp_rk_fb {
	status = "okay";
};

&hdmi_rk_fb {
	status = "okay";
	rockchip,hdmi_video_source = <DISPLAY_SOURCE_LCDC1>;
};

&hdmi_sound {
	status = "okay";
};

&pcie_phy {
	status = "okay";
};

&pcie0 {
	ep-gpios = <&gpio2 4 GPIO_ACTIVE_HIGH>;
	num-lanes = <4>;
	pinctrl-names = "default";
	pinctrl-0 = <&pcie_clkreqn>;
	status = "okay";
};

&rt5651 {
	status = "okay";
};

&i2c0 {
	status = "okay";
};

&i2c1 {
	status = "okay";

	gsl3673: gsl3673@40 {
		compatible = "GSL,GSL3673";
		reg = <0x40>;
		screen_max_x = <1536>;
		screen_max_y = <2048>;
		irq_gpio_number = <&gpio1 20 IRQ_TYPE_LEVEL_LOW>;
		rst_gpio_number = <&gpio4 22 GPIO_ACTIVE_HIGH>;
	};

	tc358749x: tc358749x@0f {
		compatible = "toshiba,tc358749x";
		reg = <0x0f>;
		power-gpios = <&gpio2 6 GPIO_ACTIVE_HIGH>;
		power18-gpios = <&gpio2 9 GPIO_ACTIVE_HIGH>;
		power33-gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>;
		csi-ctl-gpios = <&gpio2 10 GPIO_ACTIVE_HIGH>;
		stanby-gpios = <&gpio2 8 GPIO_ACTIVE_HIGH>;
		reset-gpios = <&gpio2 7 GPIO_ACTIVE_HIGH>;
		int-gpios = <&gpio2 12 GPIO_ACTIVE_HIGH>;
		pinctrl-names = "default";
		pinctrl-0 = <&hdmiin_gpios>;
		status = "okay";
	};
};

&isp0 {
	status = "okay";
};

&isp1 {
	status = "okay";
};

&pwm0 {
	status = "okay";
};

&pwm3 {
	status = "okay";
	interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH 0>;
	compatible = "rockchip,remotectl-pwm";
	remote_pwm_id = <3>;
	handle_cpu_id = <1>;

	ir_key1 {
		rockchip,usercode = <0x4040>;
		rockchip,key_table =
			<0xf2	KEY_REPLY>,
			<0xba	KEY_BACK>,
			<0xf4	KEY_UP>,
			<0xf1	KEY_DOWN>,
			<0xef	KEY_LEFT>,
			<0xee	KEY_RIGHT>,
			<0xbd	KEY_HOME>,
			<0xea	KEY_VOLUMEUP>,
			<0xe3	KEY_VOLUMEDOWN>,
			<0xe2	KEY_SEARCH>,
			<0xb2	KEY_POWER>,
			<0xbc	KEY_MUTE>,
			<0xec	KEY_MENU>,
			<0xbf	0x190>,
			<0xe0	0x191>,
			<0xe1	0x192>,
			<0xe9	183>,
			<0xe6	248>,
			<0xe8	185>,
			<0xe7	186>,
			<0xf0	388>,
			<0xbe	0x175>;
	};

	ir_key2 {
		rockchip,usercode = <0xff00>;
		rockchip,key_table =
			<0xf9	KEY_HOME>,
			<0xbf	KEY_BACK>,
			<0xfb	KEY_MENU>,
			<0xaa	KEY_REPLY>,
			<0xb9	KEY_UP>,
			<0xe9	KEY_DOWN>,
			<0xb8	KEY_LEFT>,
			<0xea	KEY_RIGHT>,
			<0xeb	KEY_VOLUMEDOWN>,
			<0xef	KEY_VOLUMEUP>,
			<0xf7	KEY_MUTE>,
			<0xe7	KEY_POWER>,
			<0xfc	KEY_POWER>,
			<0xa9	KEY_VOLUMEDOWN>,
			<0xa8	KEY_VOLUMEDOWN>,
			<0xe0	KEY_VOLUMEDOWN>,
			<0xa5	KEY_VOLUMEDOWN>,
			<0xab	183>,
			<0xb7	388>,
			<0xf8	184>,
			<0xaf	185>,
			<0xed	KEY_VOLUMEDOWN>,
			<0xee	186>,
			<0xb3	KEY_VOLUMEDOWN>,
			<0xf1	KEY_VOLUMEDOWN>,
			<0xf2	KEY_VOLUMEDOWN>,
			<0xf3	KEY_SEARCH>,
			<0xb4	KEY_VOLUMEDOWN>,
			<0xbe	KEY_SEARCH>;
	};

	ir_key3 {
		rockchip,usercode = <0x1dcc>;
		rockchip,key_table =
			<0xee	KEY_REPLY>,
			<0xf0	KEY_BACK>,
			<0xf8	KEY_UP>,
			<0xbb	KEY_DOWN>,
			<0xef	KEY_LEFT>,
			<0xed	KEY_RIGHT>,
			<0xfc	KEY_HOME>,
			<0xf1	KEY_VOLUMEUP>,
			<0xfd	KEY_VOLUMEDOWN>,
			<0xb7	KEY_SEARCH>,
			<0xff	KEY_POWER>,
			<0xf3	KEY_MUTE>,
			<0xbf	KEY_MENU>,
			<0xf9	0x191>,
			<0xf5	0x192>,
			<0xb3	388>,
			<0xbe	KEY_1>,
			<0xba	KEY_2>,
			<0xb2	KEY_3>,
			<0xbd	KEY_4>,
			<0xf9	KEY_5>,
			<0xb1	KEY_6>,
			<0xfc	KEY_7>,
			<0xf8	KEY_8>,
			<0xb0	KEY_9>,
			<0xb6	KEY_0>,
			<0xb5	KEY_BACKSPACE>;
	};
};

&pinctrl {
	status = "okay";

	hdmiin {
		hdmiin_gpios: hdmiin_gpios {
			rockchip,pins =
				<2 5 RK_FUNC_GPIO &pcfg_pull_none>,
				<2 6 RK_FUNC_GPIO &pcfg_pull_none>,
				<2 7 RK_FUNC_GPIO &pcfg_pull_none>,
				<2 8 RK_FUNC_GPIO &pcfg_pull_none>,
				<2 9 RK_FUNC_GPIO &pcfg_pull_none>,
				<2 12 RK_FUNC_GPIO &pcfg_pull_none>;
		};
	};
};

&rk_screen {
	#include <dt-bindings/display/screen-timing/lcd-F402.dtsi>
};

&vopb_rk_fb {
	status = "okay";
	power_ctr: power_ctr {
		rockchip,debug = <0>;
		lcd_en: lcd-en {
			rockchip,power_type = <GPIO>;
			gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
			rockchip,delay = <10>;
		};

		/*
		lcd_cs: lcd-cs {
			rockchip,power_type = <GPIO>;
			gpios = <&gpio0 21 GPIO_ACTIVE_HIGH>;
			rockchip,delay = <10>;
		};
		*/

		lcd_rst: lcd-rst {
			rockchip,power_type = <GPIO>;
			gpios = <&gpio4 30 GPIO_ACTIVE_HIGH>;
			rockchip,delay = <5>;
		};
	};
};

&vopl_rk_fb {
	status = "okay";
};