Firefly开源社区

标题: Firefly-RK3288 开发板 Android5.1 支持7.85寸液晶屏模组的修改方法 [打印本页]

作者: wico    时间: 2016-5-6 09:47
标题: Firefly-RK3288 开发板 Android5.1 支持7.85寸液晶屏模组的修改方法
本帖最后由 wico 于 2016-12-1 14:41 编辑

一.硬件条件需要对应的硬件支持:
1.Firefly-RK3288 开发板;
2.Firefly-RK3288开发板对应的7.85寸液晶屏模组:





二.软件配置:
1.首先下载更新RK3288 Android5.1 SDK,最新提交:
  1. commit:3e3038c
  2. Message:Android->framework:fix btn default color
复制代码


2.软件修改配置:
1)打开kernel/arch/arm/boot/dts/firefly-rk3288.dts,修改如下:
包含lcd的dtsi:
  1. -#include "lcd-box.dtsi"
  2. +#include "lcd-LP079Qx1.dtsi"
复制代码


关闭vga:
  1.       vga_ddc@50 {
  2.                 compatible = "firefly,vga_ddc";
  3.                 reg = <0x50>;
  4.                 gpio-pwn = <&gpio0 GPIO_C1 GPIO_ACTIVE_HIGH>;
  5.                 rockchip,source = <0>; //0: LCDC0; 1: LCDC1
  6.                 rockchip,prop = <PRMRY>;//<EXTEND>
  7. -                status = "okay";
  8. +                status = "disabled";
  9.         };
复制代码


使能tp
  1.         mt@40 {
  2. -                status = "disabled";
  3. +                status = "okay";
  4.                        compatible = "firefly,gsl3680";
  5.                       reg = <0x40>;
  6.                        touch-gpio = <&gpio5 GPIO_B0 IRQ_TYPE_EDGE_RISING>;
  7.                        reset-gpio = <&gpio7 GPIO_B1 GPIO_ACTIVE_LOW>;
  8.                        max-y = <2048>;
  9.                        max-x = <1536>;
  10.                 flip-x = <1>;
  11.                 flip-y = <1>;
  12.                 swap-xy = <0>;
  13.         };
复制代码


使能mpu6050
  1.          mpu6050:mpu@68{
  2. -            status = "disabled";
  3. +            status = "okay";
  4.              compatible = "mpu6050";
  5.              reg = <0x68>;
  6.              mpu-int_config = <0x10>;
复制代码


修改timing配置和添加屏使能脚:
  1. &disp_timings {
  2. -        native-mode = <&timing1>;
  3. +        native-mode = <&timing0>;
  4. };

  5. &rk_screen {
  6. @@ -611,6 +611,29 @@
  7.          status = "okay";
  8.          rockchip,iommu-enabled = <1>;
  9.          rockchip,prop = <PRMRY>;
  10. +        power_ctr: power_ctr {
  11. +        rockchip,debug = <1>;
  12. +
  13. +        lcd_en:lcd_en {
  14. +                rockchip,power_type = <GPIO>;
  15. +                gpios = <&gpio0 GPIO_B5 GPIO_ACTIVE_HIGH>;
  16. +                rockchip,delay = <10>;
  17. +        };
  18. +
  19. +               /*
  20. +        lcd_cs:lcd_cs {
  21. +                rockchip,power_type = <GPIO>;
  22. +                gpios = <&gpio7 GPIO_A4 GPIO_ACTIVE_HIGH>;
  23. +                rockchip,delay = <10>;
  24. +        };
  25. +        lcd_rst:lcd_rst {
  26. +                rockchip,power_type = <GPIO>;
  27. +                gpios = <&gpio5 GPIO_C1 GPIO_ACTIVE_LOW>;
  28. +                rockchip,delay = <0>;
  29. +        };
  30. +              */
  31. +};
  32. +
  33. };
复制代码


使能背光pwm:
  1. &pwm1 {
  2. -        status = "disabled";
  3. +        status = "okay";
  4. };
复制代码


2)打开kernel/arch/arm/boot/dts/rk3288.dtsi,修改如下:
关闭CTR_GTCLKS:
  1.             rockchip,ctrbits = <
  2.                          (0
  3.                           |RKPM_CTR_PWR_DMNS
  4. -                         |RKPM_CTR_GTCLKS
  5. +                //         |RKPM_CTR_GTCLKS
复制代码


3)打开kernel/arch/arm/configs/firefly-rk3288_defconfig,修改如下:
修改触摸defconfig配置:
  1. -CONFIG_TOUCHSCREEN_GSLX680=y
  2. +CONFIG_TOUCHSCREEN_GSLX680_MT70817V2=y
复制代码


4)打开device/rockchip/rk3288/rk3288_box/system.prop,修改如下:   (此修改需要重新编译上层)
修改图标大小
  1. -ro.sf.lcd_density=160
  2. +ro.sf.lcd_density=320
复制代码


5)打开frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java,修改如下:(此修改需要重新编译上层)
添加屏幕旋转,此修改可以根据自己需求添加
  1.             loadSetting(stmt, Settings.System.HIDE_ROTATION_LOCK_TOGGLE_FOR_ACCESSIBILITY,
  2. -                     "1");
  3. +                     "0");
复制代码


三.编译烧写:
1)编译烧写内核:
  1. tvbox-51/kernel$ make firefly-rk3288_defconfig
  2. tvbox-51/kernel$ make firefly-rk3288.img -j4
复制代码
烧写kernel.img和resouce.img
2)编译烧写Android:
  1. tvbox-51$ . build.sh
  2. tvbox-51$ make installclean
  3. tvbox-51$ make -j8
复制代码
烧写system.img和misc.img

对应的补丁和固件wiki地址:
http://wiki.t-firefly.com/index. ... F.E6.A8.A1.E7.BB.84

附:如使用自己编译的u-boot,请make rk3288_config 再make




作者: carlinluo    时间: 2016-5-6 15:35

作者: samuel0755    时间: 2016-5-10 21:25

作者: lzh    时间: 2016-5-16 23:19
原来的firefly-rk3288.dts中关于rk_screen的代码如下:
&rk_screen {
         display-timings = <&disp_timings>;
};
跟上面贴出来的不一致,请问要怎么样修改?

作者: lzh    时间: 2016-5-23 14:25
lzh 发表于 2016-5-16 23:19
原来的firefly-rk3288.dts中关于rk_screen的代码如下:
&rk_screen {
         display-timings = ;

原来理解错了。应该是这样修改。
&lcdc0 {
        status = "okay";
        rockchip,iommu-enabled = <1>;
        rockchip,prop = <PRMRY>;
        power_ctr: power_ctr {
            rockchip,debug = <1>;

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

            /*
            lcd_cs:lcd_cs {
                rockchip,power_type = <GPIO>;
                gpios = <&gpio7 GPIO_A4 GPIO_ACTIVE_HIGH>;
                rockchip,delay = <10>;
            };

            lcd_rst:lcd_rst {
                rockchip,power_type = <GPIO>;
                gpios = <&gpio5 GPIO_C1 GPIO_ACTIVE_LOW>;
                rockchip,delay = <0>;
            };
            */
        };
};

作者: alaode    时间: 2016-9-18 17:54
you write wrong  upstair is right
作者: 东曦曦    时间: 2016-10-31 17:22
求问 Ubuntu 16.04 环境下怎么配置这块儿屏幕啊
作者: billchian    时间: 2016-11-25 16:30
楼主 我按照官方patch里的配置手动修改我的Reload版,开机的时候反复重启,请问这是什么问题呢?我已经通过git pull把sdk更新到最新了
作者: zygcs    时间: 2017-6-7 14:33

作者: 771961621    时间: 2019-1-2 16:23
有用
作者: chen1233    时间: 2020-3-17 16:09
dts代码格式在哪看?




欢迎光临 Firefly开源社区 (https://dev.t-firefly.com/) Powered by Discuz! X3.1