model = "Rockchip RK3399 Firefly Board (Linux Opensource)";
compatible = "rockchip,rk3399-firefly-linux", "rockchip,rk3399";
- adc-keys {
- compatible = "adc-keys";
- io-channels = <&saradc 1>;
- io-channel-names = "buttons";
- poll-interval = <100>;
- keyup-threshold-microvolt = <1800000>;
-
- button-up {
- label = "Volume Up";
- linux,code = <KEY_VOLUMEUP>;
- press-threshold-microvolt = <100000>;
- };
-
- button-down {
- label = "Volume Down";
- linux,code = <KEY_VOLUMEDOWN>;
- press-threshold-microvolt = <300000>;
- };
-
- back {
- label = "Back";
- linux,code = <KEY_BACK>;
- press-threshold-microvolt = <985000>;
- };
-
- menu {
- label = "Menu";
- linux,code = <KEY_MENU>;
- press-threshold-microvolt = <1314000>;
- };
- };
-
backlight: backlight {
- status = "okay";
+ status = "disabled";
compatible = "pwm-backlight";
- enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
pwms = <&pwm0 0 25000 0>;
brightness-levels = <
0 1 2 3 4 5 6 7
};
edp_panel: edp-panel {
- compatible = "lg,lp079qx1-sp0v", "panel-simple";
+ status = "disabled";
+ compatible = "sharp,lcd-f402", "panel-simple";
backlight = <&backlight>;
- power-supply = <&vcc3v3_s0>;
- enable-gpios = <&gpio4 30 GPIO_ACTIVE_HIGH>;
+ power-supply = <&vcc_lcd>;
+ enable-gpios = <&gpio4 29 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&lcd_panel_reset>;
regulator-name = "vcc3v3_pcie";
};
+ vcc3v3_3g: vcc3v3-3g-regulator {
+ compatible = "regulator-fixed";
+ enable-active-high;
+ regulator-always-on;
+ regulator-boot-on;
+ gpio = <&gpio0 2 GPIO_ACTIVE_HIGH>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pcie_3g_drv>;
+ regulator-name = "vcc3v3_3g";
+ };
+
vcc3v3_sys: vcc3v3-sys {
compatible = "regulator-fixed";
regulator-name = "vcc3v3_sys";
regulator-max-microvolt = <1800000>;
};
+ vcc_lcd: vcc-lcd-regulator {
+ compatible = "regulator-fixed";
+ regulator-always-on;
+ regulator-boot-on;
+ enable-active-high;
+ gpio = <&gpio1 1 GPIO_ACTIVE_HIGH>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&lcd_en>;
+ regulator-name = "vcc_lcd";
+ };
+
wireless-wlan {
compatible = "wlan-platdata";
rockchip,grf = <&grf>;
wireless-bluetooth {
compatible = "bluetooth-platdata";
//wifi-bt-power-toggle;
+ clocks = <&rk808 1>;
+ clock-names = "ext_clock";
uart_rts_gpios = <&gpio2 19 GPIO_ACTIVE_LOW>; /* GPIO2_C3 */
pinctrl-names = "default", "rts_gpio";
pinctrl-0 = <&uart0_rts>;
BT,wake_host_irq = <&gpio0 4 GPIO_ACTIVE_HIGH>; /* GPIO0_A4 */
status = "okay";
};
+
+ leds {
+ compatible = "gpio-leds";
+ power {
+ label = "firefly:blue:power";
+ linux,default-trigger = "ir-power-click";
+ default-state = "on";
+ gpios = <&gpio2 27 GPIO_ACTIVE_HIGH>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&led_power>;
+ };
+ user {
+ label = "firefly:yellow:user";
+ linux,default-trigger = "ir-user-click";
+ default-state = "off";
+ gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&led_user>;
+ };
+ };
};
&cpu_l0 {
pinctrl-names = "default";
pinctrl-0 = <&rgmii_pins>;
tx_delay = <0x28>;
- rx_delay = <0x11>;
+ rx_delay = <0x1B>;
status = "okay";
};
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
- ddc-i2c-bus = <&i2c3>;
status = "okay";
};
i2c-scl-rising-time-ns = <300>;
i2c-scl-falling-time-ns = <15>;
- 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>;
- };
-
rt5640: rt5640@1c {
#sound-dai-cells = <0>;
compatible = "realtek,rt5640";
&i2c4 {
status = "okay";
- i2c-scl-rising-time-ns = <600>;
- i2c-scl-falling-time-ns = <20>;
+ i2c-scl-rising-time-ns = <475>;
+ i2c-scl-falling-time-ns = <26>;
fusb0: fusb30x@22 {
compatible = "fairchild,fusb302";
pinctrl-names = "default";
pinctrl-0 = <&fusb0_int>;
int-n-gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>;
- vbus-5v-gpios = <&gpio2 0 GPIO_ACTIVE_HIGH>;
+ vbus-5v-gpios = <&gpio1 3 GPIO_ACTIVE_HIGH>;
status = "okay";
};
- mpu6500@68 {
- status = "okay";
- compatible = "invensense,mpu6500";
- reg = <0x68>;
- irq-gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
- mpu-int_config = <0x10>;
- mpu-level_shifter = <0>;
- mpu-orientation = <0 1 0 1 0 0 0 0 1>;
- orientation-x= <1>;
- orientation-y= <0>;
- orientation-z= <0>;
- mpu-debug = <1>;
- };
+ gsl3680: gsl3680@41 {
+ status = "disabled";
+ compatible = "gslX680-pad";
+ reg = <0x41>;
+ screen_max_x = <1536>;
+ screen_max_y = <2048>;
+ touch-gpio = <&gpio1 20 IRQ_TYPE_LEVEL_LOW>;
+ reset-gpio = <&gpio0 12 GPIO_ACTIVE_HIGH>;
+ };
+
+ mpu6050:mpu@68{
+ status = "disabled";
+ compatible = "invensense,mpu6050";
+ reg = <0x68>;
+ mpu-int_config = <0x10>;
+ mpu-level_shifter = <0>;
+ mpu-orientation = <0 1 0 1 0 0 0 0 1>;
+ orientation-x= <1>;
+ orientation-y= <1>;
+ orientation-z= <1>;
+ irq-gpio = <&gpio1 4 IRQ_TYPE_LEVEL_LOW>;
+ mpu-debug = <1>;
+ };
};
&i2s0 {
lcd-panel {
lcd_panel_reset: lcd-panel-reset {
- rockchip,pins = <4 30 RK_FUNC_GPIO &pcfg_pull_up>;
+ rockchip,pins = <4 29 RK_FUNC_GPIO &pcfg_pull_up>;
+ };
+
+ lcd_en: lcd-en {
+ rockchip,pins = <1 1 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
pcie_drv: pcie-drv {
rockchip,pins =
<1 17 RK_FUNC_GPIO &pcfg_pull_none>;
- };
- pcie_3g_drv: pcie-3g-drv {
- rockchip,pins =
+ };
+ pcie_3g_drv: pcie-3g-drv {
+ rockchip,pins =
<0 2 RK_FUNC_GPIO &pcfg_pull_up>;
};
+
};
pmic {
};
};
+ leds {
+ led_power: led-power {
+ rockchip,pins = <2 27 RK_FUNC_GPIO &pcfg_pull_none>;
+ };
+
+ led_user: led-user {
+ rockchip,pins = <0 13 RK_FUNC_GPIO &pcfg_pull_none>;
+ };
+ };
+
rt5640 {
rt5640_hpcon: rt5640-hpcon {
rockchip,pins = <4 21 RK_FUNC_GPIO &pcfg_pull_none>;
status = "disabled";
};
+&route_hdmi {
+ status = "okay";
+ logo,mode = "center";
+};
+
+&cdn_dp {
+ status = "okay";
+ extcon = <&fusb0>;
+ phys = <&tcphy0_dp>;
+};
+
+&dp_in_vopb {
+ status = "disabled";
+};
+
&saradc {
status = "okay";
vref-supply = <&vccadc_ref>;
};
};
+&pwm3 {
+ status = "okay";
+ interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH 0>;
+ compatible = "rockchip,remotectl-pwm";
+ remote_pwm_id = <3>;
+ handle_cpu_id = <0>;
+
+ ir_key1{
+ rockchip,usercode = <0xff00>;
+ rockchip,key_table =
+ <0xeb KEY_POWER>,
+ <0xec KEY_COMPOSE>,
+ <0xfe KEY_BACK>,
+ <0xb7 KEY_HOME>,
+ <0xa3 KEY_WWW>,
+ <0xf4 KEY_VOLUMEUP>,
+ <0xa7 KEY_VOLUMEDOWN>,
+ <0xf8 KEY_ENTER>,
+ <0xfc KEY_UP>,
+ <0xfd KEY_DOWN>,
+ <0xf1 KEY_LEFT>,
+ <0xe5 KEY_RIGHT>;
+ };
+};
+
&uart0 {
pinctrl-names = "default";
pinctrl-0 = <&uart0_xfer &uart0_cts>;
status = "okay";
};
+&uart4 {
+ current-speed = <9600>;
+ no-loopback-test;
+ status = "okay";
+};
+
&usbdrd3_0 {
status = "okay";
extcon = <&fusb0>;
&vpu {
status = "okay";
+ /* 0 means ion, 1 means drm */
+ //allocator = <0>;
};