[RK3288][Android7.1.2] kernel移植 : rk808+edp
来源:互联网 发布:ubuntu 安装lnmp 编辑:程序博客网 时间:2024/05/16 23:40
平台:Rockchip
处理器:rk3288
Android版本:Android 7.1.2
内核版本:Linux 4.4.71
rk3288\kernel\arch\arm\boot\dts\rk3288-evb-android-rk818-edp.dts
拷贝一份并命名如下:
rk3288\kernel\arch\arm\boot\dts\rk3288-evb-android-rk808-edp.dts
第二步:修改对应的PMU,根据第一步拷贝而来的PMU是RK818,我们平板所用的PMU是RK808
所以做以下的几个修改:
//compatible = "rockchip,rk3288-evb-android-rk818", "rockchip,rk3288";compatible = "rockchip,rk3288-evb-android-rk808", "rockchip,rk3288";
sdio_pwrseq: sdio-pwrseq { compatible = "mmc-pwrseq-simple"; //clocks = <&rk818 1>; clocks = <&rk808 1>;//rk818 1>;
wireless-bluetooth { //clocks = <&rk818 1>; clocks = <&rk808 1>;//rk818 1>; clock-names = "ext_clock";};
&i2c0 {clock-frequency = <400000>;//rk818: pmic@1c {rk808: pmic@1b {}
第三步:注意保留 vcc_lcd 即可,注意pmu里面也有一个vcc_lcd相关的应该舍去:
vcc_lcd: vcc-lcd { compatible = "regulator-fixed"; regulator-boot-on; enable-active-high; gpio = <&gpio7 3 GPIO_ACTIVE_HIGH>; pinctrl-names = "default"; pinctrl-0 = <&lcd_en>; regulator-name = "vcc_lcd"; vin-supply = <&vcc_io>;};
至此,pmic相关的就已经配置好了。我们再来根据edp相关的配置点亮屏幕。检查下dts以下四个与edp相关的选择是否正确,如下:
&edp {status = "okay";};
&edp_panel {compatible ="lg,lp079qx1-sp0v", "simple-panel";enable-gpios = <&gpio7 4 GPIO_ACTIVE_HIGH>;pinctrl-0 = <&lcd_cs>;power-supply = <&vcc_lcd>;delay,prepare = <120>;status = "okay";
disp_timings: display-timings { native-mode = <&timing0>; timing0: timing0 { clock-frequency = <200000000>; hactive = <1536>; vactive = <2048>; hfront-porch = <12>; hsync-len = <16>; hback-porch = <48>; vfront-porch = <8>; vsync-len = <4>; vback-porch = <8>; hsync-active = <0>; vsync-active = <0>; de-active = <0>; pixelclk-active = <0>; };};
&edp_phy {status = "okay";};
&route_edp {status = "okay";};
在Android5.1的SDK里面,Rockchip是这样用一个dtsi包裹起来的参数:
/ {disp_timings: display-timings { native-mode = <&timing0>; timing0: timing0 { screen-type = <SCREEN_EDP>; out-face = <OUT_P666>; clock-frequency = <205000000>; hactive = <1536>; vactive = <2048>; hback-porch = <5>; hfront-porch = <150>; vback-porch = <9>; vfront-porch = <3>; hsync-len = <5>; vsync-len = <1>; hsync-active = <0>; vsync-active = <0>; de-active = <0>; pixelclk-active = <1>; swap-rb = <0>; swap-rg = <0>; swap-gb = <0>; }; };};
如今应该在驱动文件:rk3288\kernel\drivers\gpu\drm\panel\panel-simple.c
static const struct of_device_id platform_of_match[] =
{ { .compatible = "simple-panel", .data = NULL, }, { }, { .compatible = "lg,lp079qx1-sp0v", .data = &lg_lp079qx1_sp0v, }, }
对应的dts里面的兼容:
compatible ="lg,lp079qx1-sp0v", "simple-panel";
static const struct drm_display_mode lg_lp079qx1_sp0v_mode = {// .clock = 200000,// .hdisplay = 1536,// .hsync_start = 1536 + 12,// .hsync_end = 1536 + 12 + 16,// .htotal = 1536 + 12 + 16 + 48,// .vdisplay = 2048,// .vsync_start = 2048 + 8,// .vsync_end = 2048 + 8 + 4,// .vtotal = 2048 + 8 + 4 + 8,// .vrefresh = 60,.clock = 205000,.hdisplay = 1536,.hsync_start = 1536 + 150,.hsync_end = 1536 + 150 + 5,.htotal = 1536 + 150 + 5 + 5,.vdisplay = 2048,.vsync_start = 2048 + 3,.vsync_end = 2048 + 3 + 9,.vtotal = 2048 + 3 + 9 + 1,.vrefresh = 60,.flags = DRM_MODE_FLAG_NVSYNC | DRM_MODE_FLAG_NHSYNC,};
static const struct panel_desc lg_lp079qx1_sp0v = { .modes = &lg_lp079qx1_sp0v_mode, .num_modes = 1, .size = { .width = 129, .height = 171, }, .bus_format = MEDIA_BUS_FMT_RGB666_1X18,};
阅读全文
1 0
- [RK3288][Android7.1.2] kernel移植 : rk808+edp
- [RK3288][Android5.1] LG屏edp : rk808+edp
- [RK3288][Android5.1] 移植笔记 --- eDP显示屏添加
- [RK3288][Android7.1.2] MTP模式
- [RK3288][Android7.1.2] 预装APK
- [RK3288][Android7.1.2] 系统背光亮度颠倒
- [RK3288][Android6.0] 调试笔记 --- edp屏无法点亮问题
- rk3288 ov8858 camera移植
- [RK3288][Android7.1.2] Launcher3 源码阅读之step1:查看项目的目录并找到入口
- [RK3288][Android7.1.2] Launcher3 源码阅读之step2:详解Launcher的OnCreate方法的A部分
- [RK3288][Android7.1.2] Launcher3 源码阅读之step3:详解Launcher的OnCreate方法的B部分
- [RK3288][Android7.1.2] Launcher3 源码阅读之step4:详解Launcher的OnCreate方法的C部分
- [RK3288][Android7.1.2] Launcher3 源码阅读之step5:查看主要的xml布局文件
- [RK3288][Android7.1.2] Launcher3 源码阅读之step6:根据布局文件找到对应的自定义View
- [RK3288][Android7.1] Android7.1 nougat source code下载
- kernel移植
- android7.1 SystemUI 移植要点
- kernel 2.6.14移植
- mysql(四/2)表的操作
- 【Python2.7 gevent 库安装步骤】
- _variant_t 数据类型介绍
- oracle 表空间满了排查和解决(ORA-1653: unable to extend table test by 128 in tab)
- 创作了一幅春天的画作
- [RK3288][Android7.1.2] kernel移植 : rk808+edp
- java 获取本机的IP地址
- 位操作实现加减乘除
- Linux系统下利用apt-get命令源库搭建WordPress
- NopCommerce学习笔记(一)----IConfigurationSectionHandler 接口的用法
- 阻塞队列--详解2
- 最佳完美匹配性质2 uva11383-点上的性质
- Android新特性介绍,ConstraintLayout完全解析 标签: androidio大会android studioConstraint新布局 2017-02-03 09:14 55781人
- Windows 程序设计(1):起步