開發平臺:iTOP-4418/6818開發板
4418&6818屏幕修改分別需要修改uboot和內核,首先是修改uboot。
1.首先進入到android源碼目錄下:
圖1
4418平臺,需要修改uboot的文件是:u-boot/board/s5p4418/drone2/board.c,使用vi命令打開這個文件,屏幕的默認參數設置在49行到93行,如下圖:
圖2
4418暫時支持9.7寸,7寸,4.3寸屏幕,他們的設置在該文件,如下圖所示的地方:
圖3
上圖中代碼的功能,首先是從uboot的環境變量里面讀取出當前使用的哪款屏幕,然后根據屏幕類型選擇對應分支的設置。比如屏幕的寬,高,刷新率,如果用戶使用其它的屏幕,需要在此處修改(需要根據自己屏幕的參數,修改圖2中的那些默認變量)(6818的修改文件是:u-boot/board/s5p6818/dronel/board.c,方法同上)
2,linux內核部分的修改:
首先是文件kernel/arch/arm/plat-s5p4418/topeet/include/cfg_main.h(6818對應的文件是:kernel/arch/arm/plat-s5p6818/topeet/include/cfg_main.h)
這個文件里定義里一組與屏幕相關的宏,如下所示:
/*------------------------------------------------------------------------------
* Display (DPC and MLC)
*/
/* Primary */
#define CFG_DISP_PRI_SCREEN_LAYER 0
#define CFG_DISP_PRI_SCREEN_RGB_FORMAT MLC_RGBFMT_A8R8G8B8
#define CFG_DISP_PRI_SCREEN_PIXEL_BYTE 4
#define CFG_DISP_PRI_SCREEN_COLOR_KEY 0x090909
#define CFG_DISP_PRI_VIDEO_PRIORITY 2 // 0, 1, 2, 3
#define CFG_DISP_PRI_BACK_GROUND_COLOR 0x000000
#define CFG_DISP_PRI_MLC_INTERLACE CFALSE
#define CFG_DISP_PRI_LCD_WIDTH_MM 154
#define CFG_DISP_PRI_LCD_HEIGHT_MM 85
/* modify by cym 20150811 */
#if 0
#define CFG_DISP_PRI_RESOL_WIDTH 1024 // X Resolution
#define CFG_DISP_PRI_RESOL_HEIGHT 600 // Y Resolution
#else
#define CFG_DISP_PRI_RESOL_WIDTH 800//1024 // X Resolution
#define CFG_DISP_PRI_RESOL_HEIGHT 1280//768 // Y Resolution
#endif
/* end remove */
#define CFG_DISP_PRI_HSYNC_SYNC_WIDTH 20
#define CFG_DISP_PRI_HSYNC_BACK_PORCH 160
#define CFG_DISP_PRI_HSYNC_FRONT_PORCH 160
#define CFG_DISP_PRI_HSYNC_ACTIVE_HIGH CTRUE
#define CFG_DISP_PRI_VSYNC_SYNC_WIDTH 3
#define CFG_DISP_PRI_VSYNC_BACK_PORCH 23
#define CFG_DISP_PRI_VSYNC_FRONT_PORCH 12
#define CFG_DISP_PRI_VSYNC_ACTIVE_HIGH CTRUE
#define CFG_DISP_PRI_CLKGEN0_SOURCE DPC_VCLK_SRC_PLL2
#define CFG_DISP_PRI_CLKGEN0_DIV 12 // even divide
#define CFG_DISP_PRI_CLKGEN0_DELAY 0
#define CFG_DISP_PRI_CLKGEN0_INVERT 0
#define CFG_DISP_PRI_CLKGEN1_SOURCE DPC_VCLK_SRC_VCLK2
#define CFG_DISP_PRI_CLKGEN1_DIV 1
#define CFG_DISP_PRI_CLKGEN1_DELAY 0
#define CFG_DISP_PRI_CLKGEN1_INVERT 0
#define CFG_DISP_PRI_CLKSEL1_SELECT 0
#define CFG_DISP_PRI_PADCLKSEL DPC_PADCLKSEL_VCLK /* VCLK=CLKGEN1, VCLK12=CLKGEN0 */
#define CFG_DISP_PRI_PIXEL_CLOCK 800000000/CFG_DISP_PRI_CLKGEN0_DIV
#define CFG_DISP_PRI_OUT_SWAPRB CFALSE
#define CFG_DISP_PRI_OUT_FORMAT DPC_FORMAT_RGB888
#define CFG_DISP_PRI_OUT_YCORDER DPC_YCORDER_CbYCrY
#define CFG_DISP_PRI_OUT_INTERLACE CFALSE
#define CFG_DISP_PRI_OUT_INVERT_FIELD CFALSE
#define CFG_DISP_LCD_MPY_TYPE 0
/*------------------------------------------------------------------------------
* LVDS
*/
/* modify by cym 20150811 */
#if 0
#define CFG_DISP_LVDS_LCD_FORMAT LVDS_LCDFORMAT_VESA
#else
#define CFG_DISP_LVDS_LCD_FORMAT LVDS_LCDFORMAT_JEIDA
#endif
/* end modify */
然后是文件:kernel/arch/arm/plat-s5p4418/topeet/device.c(6818對應的文件:kernel/arch/arm/plat-s5p6818/topeet/device.c)
在這個文件找到函數setup_width_height_param,如下:
/* add by cym 20151128 */
#if 1
static int __init setup_width_height_param(char *str)
{
if (!strncasecmp("9.7", str, 3)) {
//printk("fun:%s, line = %d(lcdtype:%s)n", __FUNCTION__, __LINE__, str);
#if defined(CONFIG_TOUCHSCREEN_FT5X0X)
//printk("fun:%s, line = %d(lcdtype:%s)n", __FUNCTION__, __LINE__, str);
ft5x0x_pdata.screen_max_x = 768;
ft5x0x_pdata.screen_max_y = 1024;
#endif
#if defined (CONFIG_FB_NXP)
#if defined (CONFIG_FB0_NXP)
//printk("fun:%s, line = %d(lcdtype:%s)n", __FUNCTION__, __LINE__, str);
fb0_plat_data.x_resol = 1024;
fb0_plat_data.y_resol = 768;
#endif
#endif
}
else if(!strncasecmp("7.0", str, 3))
{
#if defined(CONFIG_TOUCHSCREEN_FT5X0X)
//printk("fun:%s, line = %d(lcdtype:%s)n", __FUNCTION__, __LINE__, str);
ft5x0x_pdata.screen_max_x = 800;
ft5x0x_pdata.screen_max_y = 1280;
#endif
#if defined (CONFIG_FB_NXP)
#if defined (CONFIG_FB0_NXP)
//printk("fun:%s, line = %d(lcdtype:%s)n", __FUNCTION__, __LINE__, str);
fb0_plat_data.x_resol = 800;
fb0_plat_data.y_resol = 1280;
#endif
#endif
}
上一篇:迅為iTOP-4418開發板串口虛擬控制臺配置為普通串口
下一篇:iTOP-4418開發板Ubuntu系統燒寫方法分享
推薦閱讀
史海拾趣
隨著公司的發展,Corsair Memory Inc不僅局限于內存產品的生產,還積極擴大業務范圍。其中,收購SCUF Gaming是Corsair在擴展業務版圖上的重要一步。這一收購使Corsair得以進入游戲外設市場,進一步豐富了其產品線,也為其帶來了更多的增長機會。
隨著公司的發展,Corsair Memory Inc不僅局限于內存產品的生產,還積極擴大業務范圍。其中,收購SCUF Gaming是Corsair在擴展業務版圖上的重要一步。這一收購使Corsair得以進入游戲外設市場,進一步豐富了其產品線,也為其帶來了更多的增長機會。
進入90年代后期,Corsair再次調整其產品策略,由生產標準內存轉變為生產高于規格的內存,即超頻內存。這一決策迎合了當時市場對高性能內存的需求,Corsair的超頻內存迅速在市場上獲得了認可。其產品的超級性能專為極大需求的應用軟件而設,也一直被應用關鍵的服務器及極高性能的工作站(包括游戲系統)上。
轉折:2006年,GarrettCom迎來了一個重要的轉折點——收購變電站網絡產品領導者DYMEC公司。這一收購不僅增強了GarrettCom在變電站自動化領域的實力,還為其帶來了更多的技術資源和市場份額。
影響:通過整合DYMEC的技術和產品,GarrettCom進一步鞏固了其在變電站網絡通信技術方面的領先地位。公司的產品和解決方案被廣泛應用于全球各地的變電站項目中,為電力系統的穩定運行提供了堅實的通信保障。
近年來,HTC在VR領域取得了顯著的成就。2023年,在美國國際消費性電子展(CES)中,HTC推出了最先進的虛擬實境頭戴式顯示器VIVE XR Elite,憑借其創新、高規格的設計和巧妙的人體工學設計,贏得了眾多國際媒體的贊譽和獎項。此外,HTC還開發了多款VR內容套件和追蹤器,為用戶提供了更加沉浸式的虛擬體驗。這些努力不僅推動了VR產業的發展,也為HTC帶來了新的增長點。
隨著市場的不斷變化和客戶需求的升級,安美通意識到只有不斷創新才能在競爭中立于不敗之地。因此,公司加大了對研發的投入,積極引進高端人才,并與多所高校和研究機構建立了緊密的合作關系。通過持續的技術創新,安美通成功推出了一系列具有自主知識產權的新產品,進一步鞏固了其在行業內的領先地位。
本帖最后由 paulhyde 于 2014-9-15 03:02 編輯 1.25~27V的可調電源電路。本電源電路是采用高精度集成電路μA723組成的。它有如下特點:(1)輸出電壓在1.25~27V范圍內連續可調。(2)具有限流保護功能,當輸出電流≥6.5A時,μA723內部限流電路啟動 ...… 查看全部問答∨ |
市場調研機構ABI公司最新市場研究報告顯示,RFID的發展前景良好,未來五年將穩步增長。ABI公司市場主任MichaelLiard表示: “我們預期2014年RFID市場總體會超過82.5億美元,用于汽車immobilization(汽車防盜等)約74.6億美元。這意味著未來五年中年 ...… 查看全部問答∨ |
振南的《單片機基礎外設9日通》視頻教程 【全套10集】 振南電子 下載方法,QQ郵箱 http://mail.qq.com 帳號:znmcu_1 密碼:znmcu123 另一QQ郵箱 帳號:znmcu_2 密碼:znmcu123 振南電子網站 視頻教程下載專區 http://v.znmcu.cn/ 全部源代碼下載 源代碼及資料.rar ...… 查看全部問答∨ |
剛開機的時候工作正常,PC能夠PING通CE終端,CS8900有中斷產生。過會之后就發現PING不通了,CS8900連中斷也沒有產生了。用萬用表看休眠引腳為高,也沒有休眠。不知道東東會導致這個問題?… 查看全部問答∨ |
大家一起聊聊S3C2440A Block Diagram原理圖的各個部件的組成,功能...... D:\\1.GIF][img=D:\\2.GIF][/img][img=D:\\3.GIF[/img]… 查看全部問答∨ |
|
芯片: ep3c5 想要把lvds接口上的Programmable Pre-Emphasis關掉,可是在assignment editor->logic option->io feature下面找不到這個選項。 請教大家,Programmable Pre-Emphasis在哪里可以設置? 謝謝… 查看全部問答∨ |
為了保障系統的正常運行,定期對PLC系統進行檢查和維護是必不可少的,而且還必須熟悉一般故障診斷和排除方法。 一、檢查與維護 1.定期檢查 PLC是一種工業控制設備,盡管在可靠性方面采取了許多措施,但工作環境對PLC影響還是很大的。所以,通常 ...… 查看全部問答∨ |
在相同的測試中使用同一組命令對吉時利707B型和708B型開關卡進行對比,看看較高的命令至連接速度有什么差別。 在本示例中,吉時利707B型和708B型開關卡用于將六個二極管切換至吉時利2400型SourceMeter源表[1],以便進行點正向電壓測量。 ...… 查看全部問答∨ |