Exynos4412 Mango220 Android JB 4.1.1 Source 20150327
1. WiFi 인식 문제 patch
2. Audio Record 안되는 문제 수정
3. 멀티 코덱 지원 ( WM8960, USB Codec ) 지원
4. ROOT 권한 획득 할 수 있도록 su 명령 지원
5. 10.1" touch 오류 수정
6. eMMC , Sdboot 커널 config 설정
7. 갤러리 앱 2개 나오는 문제 수정
8. 5M 카메라 초기화 값 튜닝 값 적용
http://crztech.iptime.org:8080/Release/mango220-exynos4412/android-jellybean/2015-03-27/
## Mango220 build and boot
# Environment
http://cafe.naver.com/embeddedcrazyboys/22475
#Compile
[ u-boot compile ]
./build_uboot clean
./build_uboot config
./build_uboot
[ kernel compile ]
---------SD/MMC Kernel Config ---------------
#sdmmc boot and 7inch cap touch 1024x600 , 5M CAM
./build_kernel clean
[CAM_A]
./build_kernel defconfig mango220_android_sdmmc_7inch_1024_600_mt9p111_5M_CAM_A_defconfig
[CAM_B]
./build_kernel defconfig mango220_android_sdmmc_7inch_1024_600_mt9p111_5M_CAM_B_defconfig
./build_kernel
#sdmmc boot and 7inch cap touch 1024x600 , TVP5150
./build_kernel clean
[CAM_A]
./build_kernel defconfig mango220_android_sdmmc_7inch_1024_600_tvp5150_CAM_A_defconfig
[CAM_B]
./build_kernel defconfig mango220_android_sdmmc_7inch_1024_600_tvp5150_CAM_B_defconfig
./build_kernel
#sdmmc boot and 7inch cap touch 1024x600 , SR130PC10 1.3M
./build_kernel clean
[CAM_A]
./build_kernel defconfig mango220_android_sdmmc_7inch_1024_600_sr130pc10_1_3M_CAM_A_defconfig
[CAM_B]
./build_kernel defconfig mango220_android_sdmmc_7inch_1024_600_sr130pc10_1_3M_CAM_B_defconfig
./build_kernel
#sdmm boot and 10.1 cap touch 1280x800, 5M CAM
./build_kernel defconfig mango220_android_sdmmc_10_1inch_1280_800_mt9p111_5M_CAM_dual_defconfig
----------eMMC Kernel Config ----------------------------
#eMMC boot and 7inch cap touch 1024x600 , 5M CAM
./build_kernel clean
[CAM_A]
./build_kernel defconfig mango220_android_emmc_7inch_1024_600_mt9p111_5M_CAM_A_defconfig
[CAM_B]
./build_kernel defconfig mango220_android_emmc_7inch_1024_600_mt9p111_5M_CAM_B_defconfig
./build_kernel
#eMMC boot and 7inch cap touch 1024x600 , TVP5150
./build_kernel clean
[CAM_A]
./build_kernel defconfig mango220_android_emmc_7inch_1024_600_tvp5150_CAM_A_defconfig
[CAM_B]
./build_kernel defconfig mango220_android_emmc_7inch_1024_600_tvp5150_CAM_B_defconfig
./build_kernel
#eMMC boot and 7inch cap touch 1024x600 , SR130PC10 1.3M
./build_kernel clean
[CAM_A]
./build_kernel defconfig mango220_android_emmc_7inch_1024_600_SR130PC10_1_3M_CAM_A_defconfig
[CAM_B]
./build_kernel defconfig mango220_android_emmc_7inch_1024_600_SR130PC10_1_3M_CAM_B_defconfig
#eMMC boot and 10.1inch cap touch 1280x800 , 5M CAM
./build_kernel defconfig mango220_android_emmc_10_1inch_1280_800_mt9p111_5M_CAM_dual_defconfig
./build_kernel
[ android compile ]
tar xf android-jb411-xxx.tgz
tar xf android-jb411-xxx-prebuilts.tgz
[SDMMC boot ]
$ cd android-jb411
$ vi device/crazyboys/mango220/BoardConfig.mk
BOARD_USES_EMMC := false
수정 후 컴파일
[EMMC boot ]
$ cd android-jb411
$ vi device/crazyboys/mango220/BoardConfig.mk
BOARD_USES_EMMC := true
수정 후 컴파일
How to compile
./build_android.sh
#SD Boot 최초 한번
SD card를 linux pc에 삽입
#df
명령으로 디바이스 확인
# cd image
#How To Fusing
$ dmesg | tail
[12403.632015] usb 2-5: new high-speed USB device number 25 using ehci_hcd
[12403.856263] hub 2-0:1.0: unable to enumerate USB device on port 5
[12483.752014] usb 2-5: new high-speed USB device number 26 using ehci_hcd
[12483.976252] hub 2-0:1.0: unable to enumerate USB device on port 5
[12513.801490] sd 9:0:0:0: [sdd] 15644672 512-byte logical blocks: (8.01 GB/7.45 GiB)
[12513.802983] sd 9:0:0:0: [sdd] No Caching mode page present
[12513.802986] sd 9:0:0:0: [sdd] Assuming drive cache: write through
[12513.807109] sd 9:0:0:0: [sdd] No Caching mode page present
[12513.807113] sd 9:0:0:0: [sdd] Assuming drive cache: write through
[12513.808249] sdd: sdd1 sdd2 sdd3 sdd4
#image
sudo ./sdwriter sdd 220 bin
#Boot mode
SD CH2 : Off[1], ON, Off, Off, Off, Off[6]
eMMC CH4: Off[1], Off, On, Off, On, Off[6]
[Linux host pc ubuntu 12.0.4 ]
[icanjji@icanjji-pc image]$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 003: ID 05e3:0716 Genesys Logic, Inc. USB 2.0 Multislot Card Reader/Writer
Bus 002 Device 005: ID 18d1:0002 Google Inc.
Mango220 <-> usb otg <-> Linux PC 연결 후
"lsusb" 명령으로 드라이버 인식을 확인 합니다.
[SD/MMC and eMMC fusing command ]
## 8GB
fdisk -c 0 500 1024 300
fatformat mmc 0:1
fastboot
## Host PC
sudo ./fastboot flash fwbl1 E4412_S.bl1.SMDK.MR3.bin
sudo ./fastboot flash bl2 E4412_S.bl2.SMDK.MR3.bin.signed
sudo ./fastboot flash bootloader u-boot.bin
sudo ./fastboot flash tzsw E4412_S.tzsw.SMDK.MR3.bin.signed
sudo ./fastboot flash kernel zImage
sudo ./fastboot flash ramdisk ramdisk-uboot.img
sudo ./fastboot -w
sudo ./fastboot flash system system.img
sudo ./fastboot flash kernel zImage;sudo ./fastboot flash ramdisk ramdisk-uboot.img;sudo ./fastboot -w;sudo ./fastboot flash system system.img
[env]
setenv bootcmd "movi read kernel 0 40008000;movi read rootfs 0 41000000 100000;bootm 40008000 41000000"
setenv bootargs "console=ttySAC1,115200n8 androidboot.console=ttySAC1"
## Window PC only
드라이버 설치 image 디렉토리 )
adb_usb_driver 디렉토리
mango220-how-to-adb-driver.pdf
[eMMC only start ]
Boot switch : 3, 5 ON
SD/MMC card insert
## u-boot
emmc partition 0 1 0
mmc erase boot 0 0 0; mmc erase user 0 0 0
[eMMC only end ]
[SD/MMC and eMMC fusing command ]
## 8GB
fdisk -c 0 500 1000 300
fatformat mmc 0:1
fastboot
image 디렉토리에서 dos command 실행
## Host PC
fastboot flash fwbl1 E4412_S.bl1.SMDK.MR3.bin
fastboot flash bl2 E4412_S.bl2.SMDK.MR3.bin.signed
fastboot flash bootloader u-boot.bin
fastboot flash tzsw E4412_S.tzsw.SMDK.MR3.bin.signed
fastboot flash kernel zImage
fastboot flash ramdisk ramdisk-uboot.img
fastboot -w
fastboot flash system system.img
# u-boot ethernet
eth1addr 변수를 꼭 지정하고 해야합니다.
ex) setenv eth1addr 00:40:5c:26:0a:5c
인터페이스는 다음과 같이 선택합니다.
0번 포트 선택: setenv ethact smc911x-0
## fusing via tftp
[ u-boot ip ]
setenv ipaddr 192.168.3.20; setenv serverip 192.168.3.9; setenv gatewayip 192.168.3.1; setenv netmask 255.255.255.0
[ bootloader fusing ]
==> set boot mode to eMMC CH0
tftp 41000000 E4412_S.bl1.SMDK.MR3.bin; emmc open 0; movi write zero fwbl1 0 41000000; emmc close 0
tftp 41000000 E4412_S.bl2.SMDK.MR3.bin.signed; emmc open 0; movi write zero bl2 0 41000000; emmc close 0
tftp 41000000 u-boot.bin; emmc open 0; movi write zero u-boot 0 41000000; emmc close 0
tftp 42000000 E4412_S.tzsw.SMDK.MR3.bin.signed; emmc open 0; movi write zero tzsw 0 42000000; emmc close 0
[ Kernel fusing ]
tftp 41000000 zImage; movi write kernel 0 41000000
[tftp boot]
setenv bootcmd "tftp 40008000 zImage ;movi read rootfs 0 41000000 100000;bootm 40008000 41000000"
[ SD Env ]
setenv bootcmd "movi read kernel 0 40008000;movi read rootfs 0 41000000 100000;bootm 40008000 41000000"
내용