Frequently Asked Questions for i.MX6 Android

From ESS-WIKI
Jump to: navigation, search


Item Questions Android Solution
1 Compiling 5.0
 Please refer to the following sections for details
   (Android)
2 Boot Logo U-boot 4.2 ~ 4.4
 (1)  BSP support
 (2)  Convert the bmp file to hex value.
      Example : bmp file name is aaa.c
 (3)  Step1.
        Add aaa.o in board/freescale/common/Makefile
        Add aaa.c in board/freescale/common/
      Step2.
        Modify LCD setting in board/freescale/mx6q-rom-3420/mx6q_rom-3420.c
        Fill in correct timing parameters for customer panel (Phill provide parameter).
      Step3.
        Enable CONFIG_SPLASH_SCREEN config
        Set lvds_num to 0, because we use LVDS0 channel.
3 Boot Logo Android Frameworks 4.2~4.4
 (1) Please rename your Logo file to "android-logo-mask.png"
 (2) Replace the logo image file
     --> android_M6.0.1_1.0.0/frameworks/base/core/res/assets/images/android-logo-mask.png.
4 IRTOUCH panel 4.4
 (1) Download IRTOUCH driver  (Irtouch-dualtouch-package-android-v14.2.0.0002.7z)
 (2) Download IRTOUCH SWAP mode tool (Swapmode.7z)
 (3) Swap mode
     You need to check and swap IRTOUCH 0X80.
     Please install SWAP mode tool in win7.
     Run SwapModeTool.exe and choose IRTOUCH 0X80.  
 (4) Installing the IRTOUCH Dual-touch Touchscreen Driver
     (a) irtouchusb-dt.c locate to kernel_imx/driver/input/touchscreen;
     (b) modify Makefile in kernel_imx/driver/input/touchscreen
         add:  "obj-$(CONFIG_TOUCHSCREEN_USBIRTOUCH_DT)	+= irtouchusb-dt.o"
     (c) modify Kconfig in kernel_imx/driver/input/touchscreen
         add:
         config TOUCHSCREEN_USBIRTOUCH_DT
                tristate "IRTOUCH USB Touchscreen Driver For single point"
                depends on USB_ARCH_HAS_HCD
                select USB
                help
                  Say Y here if you have a IRTOUCH based touchscreen
                  controller.
                  If unsure, say N.
                  To compile this driver as a module, choose M here: the
                  module will be called irtouch.
     (d)  You can make menuconfig select TOUCHSCREEN_USBIRTOUCH_DT and build kernel 
          Modify defconfig CONFIG_TOUCHSCREEN_USBIRTOUCH_DT=y
          example : imx6_rsb4410_android_kk44_defconfig
     (e)  Add one line to Android file system's ueventd.rc: 
          File path : device/fsl/imx6/etc/ueventd.freescale.rc  
          /dev/irtouch      0666   root    root
     (f)  Copy "Vendor_6615_Product_0081.idc" and "Vendor_6615_Product_0080.idc" file to the Android file system's /usr/idc directory. 
 (5)  Calibration the Touchscreen
         Install CalibrationTools.apk and run "CalibrationTools" to start calibrate touchscreen. 
         package name:com.irtouch.android.calibration    
         class name:  CalibrationToolsActivity
5 eGTouch touch panel 4.2 4.4
 (1) Add "eGalaxCalibrator" PRODUCK PACKAGES in device/fsl/imx6/iMX6.mk
 (2) Add eGtouch file path in device/fsl/imx6/iMX6.mk
     device/fsl/common/input/eGTouch_v2.5.2320.A/eGalaxTouch_VirtualDevice.idc:system/usr/idc/eGalaxTouch_VirtualDevice.idc \
     device/fsl/common/input/eGTouch_v2.5.2320.A/eGTouchA.ini:data/eGTouchA.ini \
     device/fsl/common/input/eGTouch_v2.5.2320.A/eGTouchD:system/bin/eGTouchD \
 (3) Add eGtouch idc and ini file in device/fsl/imx6/BoardConfigCommon.mK
     BOARD_USERDATAIMAGE_PARTITION_SIZE := 128M
     device/fsl/common/input/eGTouch_v2.5.2320.A/eGTouchA.ini
     device/fsl/common/input/eGTouch_v2.5.2320.A/eGTouchD
     device/fsl/common/input/eGTouch_v2.5.2320.A/eGalaxTouch_VirtualDevice.idc
 (4) Add service about eGTouch in device/fsl/rsb_4410/init.rc
      service eGTouchD /system/bin/eGTouchD
        class main
        user root
        group root
        oneshot

Android 4.2 and 4.4 MP version is include eGTouch function.