1、使用AIO-3399J-HDMI_IN的开发板,使用edp屏幕,根据edp屏幕的datesheet修改kernel下的rk3399-firefly-edp.dts里面的ttiming参数。修改内容如下: 修改1 edp_panel: edp-panel { compatible = "simple-panel"; status = "okay"; backlight = <&backlight>; display-timings { native-mode = <&timing0>; timing0: timing0 { clock-frequency = <139000000>; hactive = <1920>;//1536 根据datesheet修改了参数。 vactive = <1080>;//2048 hfront-porch = <55>;//12 hsync-len = <50>;//16 hback-porch = <55>;//48 vfront-porch = <12>;//8 vsync-len = <8>;//4 vback-porch = <12>;//8 hsync-active = <0>; vsync-active = <0>; de-active = <0>; pixelclk-active = <0>; }; }; 修改2 power_ctr: power_ctr { rockchip,debug = <0>; lcd_en: lcd-en { gpios = <&gpio1 1 GPIO_ACTIVE_HIGH>; pinctrl-names = "default"; pinctrl-0 = <&lcd_panel_enable>; rockchip,delay = <20>; }; lcd_rst: lcd-rst { gpios = <&gpio4 29 GPIO_ACTIVE_HIGH>; pinctrl-names = "default"; pinctrl-0 = <&lcd_panel_reset>; rockchip,delay = <20>; }; lcd_pwr_en: lcd-pwr-en { //增加了这部分内容。 gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>; pinctrl-names = "default"; pinctrl-0 = <&lcd_panel_pwr_en>; rockchip,delay = <20>; }; }; 修改3 &pinctrl { lcd-panel { lcd_panel_reset: lcd-panel-reset { rockchip,pins = <4 29 RK_FUNC_GPIO &pcfg_pull_up>; }; lcd_panel_enable: lcd-panel-enable { rockchip,pins = <1 1 RK_FUNC_GPIO &pcfg_pull_up>; }; lcd_panel_pwr_en: lcd-panel-pwr-en { // 增加了这部分内容。 rockchip,pins = <1 4 RK_FUNC_GPIO &pcfg_pull_up>; }; }; }; 2、使用官方编译脚本进行编译kernel ./FFtools/make.sh -k -d rk3399-firefly-edp -j8 -l rk3399_firefly_edp-userdebug . 3、输入AIO-3399J_Industry7.1.2_HDMI_211214 固件后更新编译出来的resource.img 4、出现现象, (1)开机后点亮屏幕,显示firefly的开机logo。 (2)开机edp-hdp管脚始终没有电压。 (3)在屏幕显示时,BL_EN、PMW0有2.8电压,在屏幕熄灭后电压为0。 问:哪位大神能指点下,半路出家搞这个,现在还是个大白。搞不明白时什么地方对 BL_EN和PMW0进行了控制。 |
-
50.84 KB, 下载次数: 0, 下载积分: 灯泡 -1 , 经验 -1