suky8 发表于 2015-8-26 15:36:54

请问怎么能让RK3288能有1920*1200P60显示输出

本帖最后由 suky8 于 2015-8-26 16:28 编辑

现在需要要输出为1920*1200P60的显示输出,在哪个地方可以调节呢。给个思路,在源码的哪个地方可以调节这个参数。理论4K都能显示,向下应该是没有问题的

suky8 发表于 2015-8-26 17:05:14

我刚找到了一个朋友与我有相同的需求,只是他的需求是1366*768
http://developer.t-firefly.com/forum.php?mod=viewthread&tid=942&highlight=%B7%D6%B1%E6%C2%CA

他解决的办法是添加一个配置信息:
我已经解决了这个问题,在lcd-box.dtsi里面添加,         timing1: timing1 {
                              screen-type = <SCREEN_LVDS>;
                              lvds-format = <LVDS_8BIT_2>;
                              out-face    = <OUT_D888_P666>;
                              clock-frequency = <85500000>;
                              hactive = <1366>;
                              vactive = <768>;
                              hback-porch = <213>;
                              hfront-porch = <70>;
                              vback-porch = <24>;
                              vfront-porch = <3>;
                              hsync-len = <143>;
                              vsync-len = <3>;
                              hsync-active = <1>;
                              vsync-active = <1>;
                              de-active = <1>;
                              pixelclk-active = <0>;
                              swap-rb = <0>;
                              swap-rg = <0>;
                              swap-gb = <0>;
                           };



问题是我如果添加1920*1200P60需要怎么给参数呢?

我也找到本机的配置信息,如下,

/*
* RockChip. LCD_BOX
*
*/

/ {
               disp_power_ctr: power_ctr {
                     /*                        rockchip,debug = <0>;
                        lcd_en:lcd_en {
                              rockchip,power_type = <GPIO>;
                              gpios = <&gpio0 GPIO_B0 GPIO_ACTIVE_HIGH>;
                              rockchip,delay = <10>;
                        };

                        bl_en:bl_en {
                              rockchip,power_type = <GPIO>;
                              gpios = <&gpio0 GPIO_A2 GPIO_ACTIVE_HIGH>;
                              rockchip,delay = <10>;
                        };

                        bl_ctr:bl_ctr {
                              rockchip,power_type = <GPIO>;
                              gpios = <&gpio3 GPIO_D6 GPIO_ACTIVE_HIGH>;
                              rockchip,delay = <10>;
                        };

                        lcd_rst:lcd_rst {
                              rockchip,power_type = <REGULATOR>;
                              rockchip,delay = <5>;
                        };*/

                };

                disp_timings: display-timings {
                        native-mode = <&timing1>;
                        timing0: timing0 {
                                screen-type = <SCREEN_RGB>;
                                out-face    = <OUT_P888>;
                                clock-frequency = <74250000>;
                                hactive = <1280>;
                                vactive = <720>;
                                hback-porch = <220>;
                                hfront-porch = <110>;
                                vback-porch = <20>;
                                vfront-porch = <5>;
                                hsync-len = <40>;
                                vsync-len = <5>;
                                hsync-active = <1>;
                                vsync-active = <1>;
                                de-active = <0>;
                                pixelclk-active = <0>;
                                swap-rb = <0>;
                                swap-rg = <0>;
                                swap-gb = <0>;
                        };
                        timing1: timing1 {
                                screen-type = <SCREEN_RGB>;
                                out-face    = <OUT_P888>;
                                clock-frequency = <148500000>;
                                hactive = <1920>;
                                vactive = <1080>;
                                hback-porch = <148>;
                                hfront-porch = <88>;
                                vback-porch = <36>;
                                vfront-porch = <4>;
                                hsync-len = <44>;
                                vsync-len = <5>;
                                hsync-active = <1>;
                                vsync-active = <1>;
                                de-active = <0>;
                                pixelclk-active = <0>;
                                swap-rb = <0>;
                                swap-rg = <0>;
                                swap-gb = <0>;
                        };
                        timing2: timing2 {
                                screen-type = <SCREEN_RGB>;
                                out-face    = <OUT_P888>;
                                clock-frequency = <297000000>;
                                hactive = <3840>;
                                vactive = <2160>;
                                hback-porch = <296>;
                                hfront-porch = <176>;
                                vback-porch = <72>;
                                vfront-porch = <8>;
                                hsync-len = <88>;
                                vsync-len = <10>;
                                hsync-active = <1>;
                                vsync-active = <1>;
                                de-active = <0>;
                                pixelclk-active = <0>;
                                swap-rb = <0>;
                                swap-rg = <0>;
                                swap-gb = <0>;
                        };
           };
};

suky8 发表于 2015-8-26 17:09:33

我是不是应该加这个参数:
timing3: timing3 {
                              screen-type = <SCREEN_RGB>;
                              out-face    = <OUT_P888>;
                              clock-frequency = <??????>;
                              hactive = <1920>;
                              vactive = <1200>;
                              hback-porch = <???>;
                              hfront-porch = <??>;
                              vback-porch = <??>;
                              vfront-porch = <?>;
                              hsync-len = <??>;
                              vsync-len = <?>;
                              hsync-active = <?>;
                              vsync-active = <?>;
                              de-active = <0>;
                              pixelclk-active = <0>;
                              swap-rb = <0>;
                              swap-rg = <0>;
                              swap-gb = <0>;
                        };

这些参数有什么定义规则?或帮我填一下,谢谢

isle 发表于 2015-8-27 11:13:17

你是什么版本? 输出到什么显示?屏?VGA ?HDMI?

suky8 发表于 2015-8-27 11:53:27

isle 发表于 2015-8-27 11:13
你是什么版本? 输出到什么显示?屏?VGA ?HDMI?

是4.4.2版本,输出显示为HDMI。

配置信息为:/firefly-rk3288/kernel/arch/arm/boot/dts下的lcd-box.dtsi配置文件

/*
* RockChip. LCD_BOX
*
*/
/ {
   disp_power_ctr: power_ctr {
                     /*                        rockchip,debug = <0>;
                        lcd_en:lcd_en {
                              rockchip,power_type = <GPIO>;
                              gpios = <&gpio0 GPIO_B0 GPIO_ACTIVE_HIGH>;
                              rockchip,delay = <10>;
                        };
                        bl_en:bl_en {
                              rockchip,power_type = <GPIO>;
                              gpios = <&gpio0 GPIO_A2 GPIO_ACTIVE_HIGH>;
                              rockchip,delay = <10>;
                        };
                        bl_ctr:bl_ctr {
                              rockchip,power_type = <GPIO>;
                              gpios = <&gpio3 GPIO_D6 GPIO_ACTIVE_HIGH>;
                              rockchip,delay = <10>;
                        };
                        lcd_rst:lcd_rst {
                              rockchip,power_type = <REGULATOR>;
                              rockchip,delay = <5>;
                        };*/
                };
disp_timings: display-timings {
   native-mode = <&timing1>;
   timing0: timing0 {
    screen-type = <SCREEN_RGB>;
    out-face    = <OUT_P888>;
    clock-frequency = <74250000>;
    hactive = <1280>;
    vactive = <720>;
    hback-porch = <220>;
    hfront-porch = <110>;
    vback-porch = <20>;
    vfront-porch = <5>;
    hsync-len = <40>;
    vsync-len = <5>;
    hsync-active = <1>;
    vsync-active = <1>;
    de-active = <0>;
    pixelclk-active = <0>;
    swap-rb = <0>;
    swap-rg = <0>;
    swap-gb = <0>;
   };
   timing1: timing1 {
    screen-type = <SCREEN_RGB>;
    out-face    = <OUT_P888>;
    clock-frequency = <148500000>;
    hactive = <1920>;
    vactive = <1080>;
    hback-porch = <148>;
    hfront-porch = <88>;
    vback-porch = <36>;
    vfront-porch = <4>;
    hsync-len = <44>;
    vsync-len = <5>;
    hsync-active = <1>;
    vsync-active = <1>;
    de-active = <0>;
    pixelclk-active = <0>;
    swap-rb = <0>;
    swap-rg = <0>;
    swap-gb = <0>;
   };
                        timing2: timing2 {
    screen-type = <SCREEN_RGB>;
    out-face    = <OUT_P888>;
    clock-frequency = <154000000>;
    hactive = <1920>;
    vactive = <1200>;
    hback-porch = <80>;
    hfront-porch = <48>;
    vback-porch = <26>;
    vfront-porch = <3>;
    hsync-len = <32>;
    vsync-len = <6>;
    hsync-active = <1>;
    vsync-active = <1>;
    de-active = <0>;
    pixelclk-active = <0>;
    swap-rb = <0>;
    swap-rg = <0>;
    swap-gb = <0>;
   };
   timing3: timing3 {
    screen-type = <SCREEN_RGB>;
    out-face    = <OUT_P888>;
    clock-frequency = <297000000>;
    hactive = <3840>;
    vactive = <2160>;
    hback-porch = <296>;
    hfront-porch = <176>;
    vback-porch = <72>;
    vfront-porch = <8>;
    hsync-len = <88>;
    vsync-len = <10>;
    hsync-active = <1>;
    vsync-active = <1>;
    de-active = <0>;
    pixelclk-active = <0>;
    swap-rb = <0>;
    swap-rg = <0>;
    swap-gb = <0>;
   };
    };
};


以上红色是我加的与修改的地方。
但编译完烧写进去,还是没有1920*1200P60显示项
1、请问这个修改项对吗
2、还要不要改别的地方的配置

请指教

isle 发表于 2015-8-27 15:12:12

你是说设置里面的HDMI 选项?那个你看下kernel里面的rk_hdmi_lcdc.c以及上层Setting里面hdmi   mode部分。
修改dts里面,只是默认直,并不增加HDMI输出选项

suky8 发表于 2015-8-28 10:01:28

isle 发表于 2015-8-27 15:12
你是说设置里面的HDMI 选项?那个你看下kernel里面的rk_hdmi_lcdc.c以及上层Setting里面hdmi   mode部分 ...

请问您说的上层是哪个目录,为什么找不到    以及上层Setting里面hdmi   mode部分 ...

isle 发表于 2015-8-28 10:06:02

packages/app/settings

suky8 发表于 2015-8-28 10:54:35

isle 发表于 2015-8-28 10:06
packages/app/settings

找到了,但那个值怎么给啊,可否给个决定这样问题的思路,让我们都有个方向。

carlinluo 发表于 2015-8-28 12:19:34

先把驱动调成功再调上层吧,上层要学过APP的才好改,如果不会添加的,就把一项的字符串给改了。驱动相应的改
页: [1] 2
查看完整版本: 请问怎么能让RK3288能有1920*1200P60显示输出