【1】添加Linux触摸屏驱动:
添加驱动代码文件:
lichee\linux-2.6.36\drivers\input\touchscreen\mg-i2c-ts.c
lichee\linux-2.6.36\drivers\input\touchscreen\mg-i2c-ts.h
kconfig文件lichee\linux-2.6.36\drivers\input\touchscreen\Kconfig添加:
config TOUCHSCREEN_MG_I2C
tristate "Morgan multi-touch device"
depends on I2C
help
Say Y here if you have a Morgan multi-touch device
If unsure, say N.
Makefile文件lichee\linux-2.6.36\drivers\input\touchscreen\Makefile添加:
obj-$(CONFIG_TOUCHSCREEN_MG_I2C) += mg-i2c-ts.o
★驱动源码内gpio配置可做成读取配置文件模式,如mg-i2c-ts.c里:
gpio_int_hdle = gpio_request_ex("ctp_para", "ctp_int_port");
if(!gpio_int_hdle) {
pr_warning("touch panel IRQ_EINT21_para request gpio fail!\n");
goto exit_gpio_int_request_failed;
}
★配置文件用打包工具crane_pack选择build for evb-v13,点击edit,搜索[ctp_para],例如ctp_int_port 即配置中断脚。
ctp_int_port = port:PH21<6><default>
编译内核:
./build.sh -p sun4i_crane
【2】android2.3.4\device\softwinner\crane-evb-v13\mkfs.sh添加
cp $DRV_DIR/mg-i2c-ts.ko $PRODUCT_ROOT/drv/mg-i2c-ts.ko
【3】android启动文件init.sun4i.rc注释和添加
#insmod /drv/ft5x_ts.ko
insmod /drv/mg-i2c-ts.ko
串口输出调试信息
在文件tools\crane-win-v2\wboot\bootfs\linux\params添加loglevel=8
console=ttyS0,115200 root=/dev/nandb rw init=/init mem=448M@0x40000000 fbmem=32M@0x5a000000loglevel=8;