Latest Post
Mango-IMX6Q Android 6.0에서 10.4인치 LCD 부팅하기

 

1.    커널 수정

Mango-IMX6Q보드 10.4 LCD 보드가 있어야 한다.

 

1.1.    Configuration

 

“arch/arm/configs/imx_v7_android_defconfig” 파일에 아래와 같이 수정한다.

CONFIG_TOUCHSCREEN_TSC2007=y

CONFIG_MANGO_TSC2007_IRQ_DISABLE=n

 

 

 

2.    드라이버 수정

"drivers/video/fbdev/mxc/mxc_lcdif.c" 파일에 추가

static struct fb_videomode lcdif_modedb[] = {

{

        //CRZ_icanjji crazyboys 20170627

        "MANGO-PRESS10.4",                      //name

        60,                             //refresh

        800,                                    //xres

        600,                                    //yres

        20000,                                  //pixclock(ns)

        60,                                     //left_margin(HBP)

        60,                                     //right_margin(BFP)

        5,                                              //upper_margin(VBP)

        5,                                              //lower_margin(VFP)

        200,                                    //hsync_len

        25,                                             //vsync_len

        FB_SYNC_CLK_LAT_FALL,   //sync

        FB_VMODE_NONINTERLACED, //vmode

        0,}, //flag

 

터치 감압식을 이므로 "arch/arm/boot/dts/imx6qdl-sabresd.dtsi" 파일 수정

#if 0//7inch cap

 

        touchscreen: mango-ts@38 {

            compatible = "mango,mango-ts";

            reg = <0x38>;

            pinctrl-names = "default";

            pinctrl-0 = <&pinctrl_mango_ts>;

            interrupt-parent = <&gpio3>;

            interrupts = <26 0>;

            resets = <&mango_ts_reset>;

        };

        tsc2007@4a {

                compatible = "ti,tsc2007";

                reg = <0x4a>;

                //pinctrl-names = "default";

                //pinctrl-0 = <&pinctrl_mango_ts>;

                //interrupt-parent = <&gpio3>;

                //interrupts = <26 0>;

                //gpios = <&gpio3 26 GPIO_ACTIVE_LOW>;

        //      ti,x-plate-ohms = <660>;

        //      linux,wakeup;

        };

 

 

#else

        touchscreen: tsc2007@4a {

                compatible = "ti,tsc2007";

                reg = <0x4a>;

                pinctrl-names = "default";

                pinctrl-0 = <&pinctrl_mango_ts>;

                interrupt-parent = <&gpio3>;

                interrupts = <26 0>;

                gpios = <&gpio3 26 GPIO_ACTIVE_LOW>;

                ti,x-plate-ohms = <660>;

                linux,wakeup;

        };

#endif

 

 

3.    U-boot 수정

"board/freescale/mx6sabresd/mx6sabresd.c" 파일 수정

struct display_info_t const displays[] = {{

수정

 

} }, {

    .bus    = 0,

    .addr   = 0,

    .pixfmt = IPU_PIX_FMT_RGB24,

    .detect = NULL,

    .enable = enable_rgb,

    .mode   = {

        //.name           = "SEIKO-WVGA",

        .name           = "MANGO-PRESS10.4",//crazyboys 20151005

        .refresh        = 60,

        .xres           = 800,//800,

        .yres           = 600,//480,

        .pixclock       = 20000,//29850,

        .left_margin    = 60,

        .right_margin   = 60,

        .upper_margin   = 5,//23,

        .lower_margin   = 5,//10,

        .hsync_len      = 200,10,

        .vsync_len      = 25,//10,

        .sync           = 0,

        .vmode          = FB_VMODE_NONINTERLACED

} }, {

 

include/configs/mx6sabreandroid_common.h 파일 수정

부팅 시 10.4인치 선택해서 부팅하도록 수정

bootargs=console=ttymxc0,115200 init=/init video=mxcfb0:dev=lcd,MANGO-PRESS10.4,if=BGR24,bpp=32 video=mxcfb1:dev=hdmi,1920x1080M@60,if=BGR24,bpp=24 video=mxcfb2:off video=mxcfb3:off vmalloc=256M androidboot.console=ttymxc0 consoleblank=0 androidboot.hardware=freescale cma=384M androidboot.serialno=0

 

4.    이미지 Write 및 테스트 하기

 

Micro SD 카드를 Linux pc에 장착하고 , 아래 스크립트로 이미지를 Write한다.

자세한 내용은 아래 링크를 참조한다.

http://crztech.iptime.org:8080/Release/mango-imx6q/Android6.0/20170411/HowTo.txt

$ sudo ./fsl-sdcard-partition.sh -f imx6q /dev/sdg

 

이미지를 write 후 부팅이 안되면, 아래 명령으로 다시 Write를 한다.

Download the U-Boot image:

# sudo dd if=u-boot-imx6q.imx of=/dev/sdg bs=1K seek=1; sync

Download the boot image:

# sudo dd if=boot-imx6q.img of=/dev/sdg1; sync

Download the Android system root image:

# sudo simg2img system.img system_raw.img

# sudo dd if=system_raw.img of=/dev/sdg5; sync

Download the Android recovery image:

# sudo dd if=recovery-imx6q.img of=/dev/sdg2; sync

 

Micro SD 카드를 삽입하고 부팅을 하면 , 안드로이드가 부팅이 된다.

Comments 0
:    :    :
이름 / 2014-11-20 / ★★★☆☆ [수정 / 삭제]

내용

Recent Comments
일방통행  |  ★★★★★
ISE 14.7 virtualbox를 설치했는데, ,iMPACT가 인식을 못하는데, 어케해야하나요?
min  |  ★★★★☆
These are the only Drives available to write images to: # major minor size name 1: 8 0 512805384 sda 2: 8 16 15558144 sdb Enter Device Number or n to exit: 2 Invalid selection! 왜 이런 오류가 나는 걸까요?
dino  |  ★★☆☆☆
NAND Scrub실행 후 에러가 나타납니다/ 조치방법을 알려주세요 에러내용 crz nand_erase_opts erase.addr=0x0, opt->offset=0x0, erase_ieng minfo_erases=0x20000 .....진행후 s3c-nand:ecc uncorrectable error detected---4개발생합니다 빠른 회신부탁드립니다 연락처:010-3752-6251 강희진
bluewind  |  ★★★★★
안녕하세요..구입했는데..회로도 부탁드립니다. percephy@naver.com 입니다.
조형철  |  ★★★★★
상기 Backlight 관련 회로를 구할 수 있을까요?
hwang  |  ★★★★★
구입한지 조금 됬는데 회로도 부탁합니다. rubens7777@paran.com 입니다.