[RK3288][Android7.1.2] kernel移植 : rk808+edp
處理器:rk3288 Android版本:Android 7.1.2 核心版本:Linux 4.4.71 第一步:將最接近的dts拷貝一份並重新命名。 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: [email protected] {
rk808: [email protected] {
}
第三步:注意保留 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,
};
相關推薦
[RK3288][Android7.1.2] kernel移植 : rk808+edp
平臺:Rockchip 處理器:rk3288 Android版本:Android 7.1.2 核心版本:Linux 4.4.71 第一步:將最接近的dts拷貝一份並重新命名。 rk3288
[RK3288][Android7.1.2] 系統背光亮度顛倒
平臺:RK3288 Android系統:7.1.2 Linux版本:4.4.71 在點亮edp屏幕後,發現在Setting應用裡調節亮度是相反的: #include "rk3288-evb.dtsi" #include "rk3288-android.dtsi" 即最大
[RK3288][Android7.1] 除錯筆記 --- 24bit bmp 轉成 8bit bmp
Platform: RK3288 OS: Android 7.1 Kernel: v4.4.83 背景: 在rk3288平臺上uboot logo發現24bit bmp不能正常顯示,參考原始logo.bmp是8bit. 然後使用命令 convert -compress rle -
[RK3288][Android7.1] 除錯筆記 --- 24bit bmp 轉成 8bit bmp
Platform: RK3288 OS: Android 7.1 Kernel: v4.4.83 背景: 在rk3288平臺上uboot logo發現24bit bmp不能正常顯示,參考原始logo.b
RK3288 Android7.1 開機logo和開機動畫的修改
開機logo和開機動畫的修改## 開機logo修改: 需要修改開機logo的圖片或者logo解析度,直接替換kernel目錄下的logo.bmp 開機動畫修改: 在vendor/rockchip/common/etc目錄下,有bootanimation.zip和
INPUT 系統log Android7.1.2
01-01 22:11:47.014 1982 1982 I MSM-irqbalance: Decided to move IRQ3 from CPU2 [P:0] to CPU4 [P:1] (banned) 01-01 22:11:47.017 1982
【Android7.1.2原始碼解析系列】實戰分析init.rc檔案
實戰分析init.rc檔案 前言:經過上一篇的/system/core/init/readme.txt檔案的翻譯,對於init.rc的語法也有了一定的瞭解,這一篇就對/system/core/rootdir/init.rc檔案進行一個分析,希望能夠藉此對android的開
[RK3288][Android7.1] Android7.1 nougat source code下載
#mkdir rk3288_nougat; cd rk3288_nougat #git clone ssh://[email protected]/repo/rk/tools/repo #
【Android7.1.2原始碼解析系列】android init目錄下的Android.mk編譯檔案分析
上一篇文章對於原始碼中的安卓編譯系統文件進行了翻譯,本文就以android當中的init模組作為例子,對其中的Android.mk檔案進行分析,讀者可以在閱讀本文的同時檢視我的譯文:http://blog.csdn.net/class_brick/article/detai
[RK3288][Android5.1] 移植筆記 --- eDP顯示屏新增
Platform: RK3288 OS: Android 5.1Kernel: 3.10.79 原理圖屏相關部分: dts配置: eDP的配置相當簡單, 只要配置display-timing即可,另外,前面的LCD_EN引腳
hfrk2410_a1.1開發板移植linux-2.6.32.27--網絡卡篇(cs8900)
硬體:恆豐銳科開發板hfrk2410_A1.1 軟體:linux-2.6.32.27 cs8900網絡卡移植: 將cs8900驅動原始碼檔案拷貝至drivers/net/,修改drivers/net/Kconfig檔案 config ARM_CS8900
[RK3288][Android5.1] 移植筆記 --- gsl3673 觸控驅動
# #obj-$(CONFIG_TOUCHSCREEN_GSLX680) += rockchip_gslX680_firefly.o #obj-$(CONFIG_TOUCHSCREEN_GSLX680) += gsl_point_id.o #$(obj)/gsl_point_id.o: $(srctre
[RK3399][Android7.1] Display中的edp驅動呼叫流程
OS: Android 7.1 Board: Firefly-RK3399 Kernel: v4.4.55 edp驅動被分成兩個檔案,一個是rk驅動檔案: analogix_dp-rockchip.c, 另一個是drm驅動檔案analogix_dp_c
移植openssh-7.5p1(包括openssl-1.0.2l、zlib-1.2.11)到HISI3520d(編譯篇)
#PS:要轉載請註明出處,本人版權所有 #PS:這個只是 《 我自己 》理解,如果和你的 #原則相沖突,請諒解,勿噴 HOST: Linux 4.10.0-35-generic #39~16.04.1-Ubuntu SMP Wed Sep
Android5.1系統應用移植Android7.1報錯
Android5.1 apk移植到Android7.1呼叫so庫失敗解決 錯誤日誌: 03-20 18:51:11.075 19704 19704 E linker : library “/system/lib/libserial_portlib.so”
在Sql中將 varchar 值 '1,2,3,4,5,6' 轉換成數據類型 int
給定 序列 顯示 結果 空格 sel -方法 一個表 affect --問題:將aa轉換為Int類型失敗 string aa="3,5,11,56,88,45,23"; select * from ERPBuMen where ID in(aa) ; --方法sel
1.2 C語言---數組
c語言---數組1.2 C語言---數組 1.2.1 為什麽引入數組? 數組就是數組成的一個組,數就是一個特定數據類型的變量,組就是說好多數放在了一起。 1.2.2 怎麽定義數組? in
【轉載】Hadoop 2.7.3 和Hbase 1.2.4安裝教程
啟動 運行 property new rop net 文本文 .tar.gz cor 轉載地址:http://blog.csdn.net/napoay/article/details/54136398 目錄(?)[+] 一、機器環境
confluence6.1.2 安裝及破解(理論上來講此方法支持所有版本)
破解 confluence 此次使用的是confluence版本為6.1.2。1.安裝confluence。confluence安裝比較簡單,因為可以從官網下載一鍵安裝包直接安裝。chmod +x atlassian-confluence-6.1.3-x64.bin ./atlassian-confl
TLS升級為1.2
provider property cnblogs ons powers 升級 計算 prior new 管理員身份運行 PowerShell命令進入PowerShell界面 執行面的命令重啟計算機就可以了 # Enables TLS 1.2 on windows Ser