Mango-AM335x LCD Type 커널 Module Parameter에서 변경하기

Similar documents
Mango220 Android How to compile and Transfer image to Target

Mango-IMX6Q mfgtool을 이용한 이미지 Write하기

Mango24R2 Auto Write

(SW3704) Gingerbread Source Build & Working Guide

Mango-E-Toi Board Developer Manual

PowerPoint 프레젠테이션

Mango-AM335x Hardware Test Manual

망고100 보드로 놀아보자-4

망고 M 카메라 포팅 가이드

K&R2 Reference Manual 번역본

untitled

1217 WebTrafMon II

Chap 5 루트파일시스템 (Root F/S)


CPX-E-EC_BES_C_ _ k1

bn2019_2

USB 케이블만을이용한리눅스 NFS 개발환경 (VirtualBox) 최초작성 : 2010 년 10 월 21 일 작성자 : 김정현 수정내용 최초작성 by 김정현 스크립트추가, 설명보충 by 유형목 1. VritualBox

282서비스업관리-마트

untitled

Part Part

½ºÅ丮ÅÚ¸µ3_³»Áö

272*406OSAKAÃÖÁ¾-¼öÁ¤b64ٽÚ

PART

£01¦4Àå-2

Sena Technologies, Inc. HelloDevice Super 1.1.0

ÀüÀÚÇö¹Ì°æ-Áß±Þ

Chap 10 안드로이드커널 (Kernel)

무시하고진행합니다. $ sudo rootstock -d precise --seed ubuntu-standard -x en_us.utf-8 -f ubuntu -l ubuntu -p ubuntu -i 2G I: Running on a x86_64 machine I: Cre

텀블러514

Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Cras

Microsoft Word doc

Microsoft PowerPoint - 03-Development-Environment-2.ppt

JMF3_심빈구.PDF

PowerPoint 프레젠테이션

슬라이드 1

Contents Contents 2 1 Abstract 3 2 Infer Checkers Eradicate Infer....

PowerPoint 프레젠테이션

휠세미나3 ver0.4

rmi_박준용_final.PDF

Embeddedsystem(8).PDF

6주차.key

T100MD+

/chroot/lib/ /chroot/etc/

PowerPoint 프레젠테이션


PowerPoint 프레젠테이션

Microsoft PowerPoint - lab14.pptx

02 C h a p t e r Java

Mango64R3 How to write Wince 6.0

PWR PWR HDD HDD USB USB Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC DDNS (

I 문학과 우리 사회 눈 은 다가오는 계절인 봄의 생명력과 연결되어 작품 전체의 분위 기를 주도하고 있다. 1. 문학과 인접 분야 바탕 학습 확인 문제 본문 009쪽 01 4 문학은 음악, 미술 등과 같이 예술의 한 갈래로, 다른 예술 갈래와 달리 언

프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어

10.

교육지원 IT시스템 선진화

The Pocket Guide to TCP/IP Sockets: C Version

Chapter #01 Subject

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

IoT FND8 7-SEGMENT api

......

Solaris Express Developer Edition

강의10

10X56_NWG_KOR.indd

PowerPoint 프레젠테이션

CD-RW_Advanced.PDF

C# Programming Guide - Types

신림프로그래머_클린코드.key

지난시간에... 우리는 kernel compile을위하여 cross compile 환경을구축했음. UBUNTU 12.04에서 arm-2009q3를사용하여 간단한 c source를빌드함. 한번은 intel CPU를위한 gcc로, 한번은 ARM CPU를위한 gcc로. AR

슬라이드 제목 없음

PowerPoint 프레젠테이션

연구실안전사례집-내지

Microsoft PowerPoint - chap6 [호환 모드]

Tizen

JMF2_심빈구.PDF

Microsoft Word doc

GNU/Linux 1, GNU/Linux MS-DOS LOADLIN DOS-MBR LILO DOS-MBR LILO... 6

UI TASK & KEY EVENT

Microsoft PowerPoint - em8-리눅스설치.ppt

PowerPoint Presentation

Adding a New Dev file

슬라이드 1

2015 경제ㆍ재정수첩

망고100 보드로 놀아보자-5

CZ-KETI-IOTG200

untitled



PowerPoint 프레젠테이션

USB USB DV25 DV25 REC SRN-475S REC SRN-475S LAN POWER LAN POWER Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl C

교육지원 IT시스템 선진화

5 167 Python Jon Franklin Python Python Python Python USB USB RS485 C Python DLL Python Python dll Python Python ctypes dll ctypes Python C Linux Wind

SRC PLUS 제어기 MANUAL

Microsoft PowerPoint - polling.pptx

Microsoft Word - MPC850 SPI Driver.doc

UI TASK & KEY EVENT

고급 프로그래밍 설계

untitled

PowerPoint 프레젠테이션

<BDBAB8B6C6AEC6F95FBDC3C0E55FC8AEB4EB5FC0CCC1D6BFCF5F E687770>

임베디드시스템설계강의자료 4 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과


Transcription:

Mango-AM335x LCD Type 커널 Module Parameter 에서 변경하기 http://www.mangoboard.com/ http://cafe.naver.com/embeddedcrazyboys Crazy Embedded Laboratory www.mangoboard.com cafe.naver.com/embeddedcrazyboys CRZ Technology 1

2

Document History Revision Date Change note Init 2016-09-27 전종인 www.mangoboard.com cafe.naver.com/embeddedcrazyboys CRZ Technology 3

1. 개선책... 5 2. Fw_printenv 이용... 5 2.1. Fw.env.config파일설정... 5 3. LCD를 u-boot 환경변수 (panel) 변경해서제어... 8 4

1. 개선책 LCD 에서종류를 Kernel Module Parameter 로변경하여, 컴파일을하지않고도, LCD 를조정하기 Nand 에 u-boot, kernel, 파일시스템이있을때사용가능 2. Fw_printenv 이용 http://elinux.org/u-boot_environment_variables_in_linux https://www.google.co.kr/webhp?sourceid=chrome- instant&ion=1&espv=2&ie=utf-8#newwindow=1&q=read+and+modify+u- Boot%27s+environment. http://processors.wiki.ti.com/index.php/update_u- Boot_Environment_Variables_stored_in_SPI_Flash_from_Linux u-boot 소스에서 tools/env 디렉토리를컴파일하면됩니다. 컴파일방법./build_uboot config;./build_uboot make -j$cpu_job_num HOSTCC=${CROSS_COMPILE}gcc HOSTSTRIP=${CROSS_COMPILE}strip env fw_setenv 명령은 fw_printenv 명령을복사또는 Soft link 하면됩니다. 2.1. Fw.env.config 파일설정 # NAND example /dev/mtd5 0x0000 0x20000 0x20000 4 fw.env.config 파일은파일시스템에 /etc/ 디렉토리에복사 테스트결과 [root@(none) ~]#./fw_setenv crz test Read 0x20000 bytes at 0x0 on /dev/mtd5 Warning: Bad CRC, using default environment Writing new environment at 0x0 on /dev/mtd5 www.mangoboard.com cafe.naver.com/embeddedcrazyboys CRZ Technology 5

Write 0x20000 bytes at 0x0 [root@(none) ~]#./fw_printenv Read 0x20000 bytes at 0x0 on /dev/mtd5 bootcmd=mmc dev ${mmcdev}; if mmc rescan; then echo SD/MMC found on device ${mmcdev};if run loadbootenv; then echo Loaded environment from ${bootenv};run importbootenv;fi;if test -n $uenvcmd; then echo Running uenvcmd...;run uenvcmd;fi;if run loaduimagefat; then run mmcboot;elif run loaduimage; then run mmcboot;else echo Could not find ${bootfile} ;fi;else run nandboot;fi; bootdelay=1 baudrate=115200 arch=arm cpu=armv7 board=am335x board_name=am335x vendor=ti soc=am33xx loadaddr=0x80200000 kloadaddr=0x80007fc0 fdtaddr=0x80f80000 fdt_high=0xffffffff rdaddr=0x81000000 bootfile=uimage fdtfile= console=ttyo0,115200n8 optargs= mtdids=nand0=omap2-nand.0 mtdparts=mtdparts=omap2- nand.0:128k(spl),128k(spl.backup1),128k(spl.backup2),128k(spl.backup3),1920k(u-boot),128k(u-bootenv),5m(kernel),-(rootfs) dfu_alt_info_mmc=boot part 0 1;rootfs part 0 2;MLO fat 0 1;MLO.raw mmc 100 100;u-boot.img.raw mmc 300 3C0;u-boot.img fat 0 1;uEnv.txt fat 0 1 dfu_alt_info_emmc=rawemmc mmc 0 3751936 dfu_alt_info_nand=spl part 0 1;SPL.backup1 part 0 2;SPL.backup2 part 0 3;SPL.backup3 part 0 4;uboot part 0 5;kernel part 0 7;rootfs part 0 8 mmcdev=0 mmcroot=/dev/mmcblk0p2 ro mmcrootfstype=ext3 rootwait nandroot=ubi0:rootfs rw ubi.mtd=7,2048 6

nandrootfstype=ubifs rootwait=1 nandsrcaddr=0x280000 nandimgsize=0x500000 rootpath=/export/rootfs nfsopts=nolock static_ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}::off ramroot=/dev/ram0 rw ramdisk_size=65536 initrd=${rdaddr},64m ramrootfstype=ext2 ip_method=none bootargs_defaults=setenv bootargs console=${console} ${optargs} mmcargs=run bootargs_defaults;setenv bootargs ${bootargs} root=${mmcroot} rootfstype=${mmcrootfstype} ip=${ip_method} nandargs=setenv bootargs console=${console} ${optargs} root=${nandroot} rootfstype=${nandrootfstype} netargs=setenv bootargs console=${console} ${optargs} root=/dev/nfs nfsroot=${serverip}:${rootpath},${nfsopts} rw ip=dhcp bootenv=uenv.txt loadbootenv=fatload mmc ${mmcdev} ${loadaddr} ${bootenv} importbootenv=echo Importing environment from mmc...; env import -t $loadaddr $filesize ramargs=setenv bootargs console=${console} ${optargs} root=${ramroot} rootfstype=${ramrootfstype} loadramdisk=fatload mmc ${mmcdev} ${rdaddr} ramdisk.gz loaduimagefat=fatload mmc ${mmcdev} ${kloadaddr} ${bootfile} loaduimage=ext2load mmc ${mmcdev}:2 ${kloadaddr} /boot/${bootfile} mmcboot=echo Booting from mmc...; run mmcargs; bootm ${kloadaddr} nandboot=echo Booting from nand...; run nandargs; nand read ${loadaddr} ${nandsrcaddr} ${nandimgsize}; bootm ${loadaddr} netboot=echo Booting from network...; setenv autoload no; dhcp; tftp ${loadaddr} ${bootfile}; run netargs; bootm ${loadaddr} ramboot=echo Booting from ramdisk...; run ramargs; bootm ${loadaddr} findfdt=if test $board_name = A335BONE; then setenv fdtfile am335x-bone.dtb; fi; if test $board_name = A33515BB; then setenv fdtfile am335x-evm.dtb; fi; if test $board_name = A335X_SK; then setenv fdtfile am335x-evmsk.dtb; fi crz=test www.mangoboard.com cafe.naver.com/embeddedcrazyboys CRZ Technology 7

3. LCD 를 u-boot 환경변수 (panel) 변경해서제어 커널수정 "arch/arm/mach-omap2/board-am335xevm.c" #if 1//CRZ_icanjji crazyboys 20160928 static unsigned int initdata panel; static int init root_panel_setup(char *str) { panel = simple_strtoul(str, NULL, 0); MANGO_DBG("panel=%d,\n",panel); return 1; } setup("panel=", root_panel_setup); #endif static void lcdc_init(int evm_id, int profile) 수정 #if 1 //CRZ_icanjji crazyboys 20160928 MANGO_DBG("panel=%d\n",panel); if(panel==1)//5inch lcdc_pdata=&ino_ej050na_5inch_pdata; else if(panel==2)//7inch press lcdc_pdata=&ino_at070tn94_pdata; else if(panel==3)//7inch cap 1024x600 { lcdc_pdata=&inno_at070tna2_pdata; ft_touch_init();//crazyboys 20150520 } else if(panel==4)//10.4inch press 800x600 lcdc_pdata=&inno_lsa40at9001_pdata; else { lcdc_pdata=&inno_ltn101al03_pdata; ft_touch_init();//crazyboys 20150520 }./fw_setenv nandargs setenv bootargs console=ttyo0,115200n8 root=ubi0:rootfs rw ubi.mtd=7,2048 8

rootfstype=ubifs rootwait=1 panel=2 변경된것을확인 [root@(none) ~]#./fw_printenv nandargs Read 0x20000 bytes at 0x0 on /dev/mtd5 nandargs=setenv bootargs console=ttyo0,115200n8 root=ubi0:rootfs rw ubi.mtd=7,2048 rootfstype=ubifs rootwait=1 panel=2 리부팅합니다. 커널로그확인결과 [ 0.000000] Kernel command line: console=ttyo0,115200n8 root=ubi0:rootfs rw ubi.mtd=7,2048 rootfstype=ubifs rootwait=1 panel=1 [ 0.000000] [CRZ] init/do_mounts.c (261) root_dev_setup: ubi0:rootfs [ 0.000000] [CRZ] init/do_mounts.c (54) readwrite: [ 0.000000] [CRZ] init/do_mounts.c (270) rootwait_setup: [ 0.000000] [CRZ] init/do_mounts.c (45) readonly: [ 0.000000] [CRZ] arch/arm/mach-omap2/board-am335xevm.c (1978) root_panel_setup: panel=2, da8xx_lcdc da8xx_lcdc.0: GLCD: Found INNO_AT070TN94 panel www.mangoboard.com cafe.naver.com/embeddedcrazyboys CRZ Technology 9