全志A33有关编译配置

来源:互联网 发布:搜不到网络打印机 编辑:程序博客网 时间:2024/05/18 03:23


day1
1)·编译环境(每打开一个新中端,都需要执行此命令)
    cd android
    source build/envsetup.sh

2)·项目选择,这里选10 astar_ococci-eng.
    lunch
     10

3)·lichee相关文件更新到android,执行
    extract-bsp

4).全编android
    make -j4
 
5). pack打包,烧录(android)

.(调亮度)work/Allwinner/sourcecode/android/device/softwinner/astar-ococci/overlay/frameworks,packages/base/packages
.(调重力)lichee/tools/pack/chips/sunxi/device-name/sys_config.fex中修改gsensor_used =0/1


day2
替换添加apk: android/device/softwinner/aster-ococci/app或者polaris-common/prebuild/apk,检验,在android/out/target/product/astar-ococci/system/app中检验,若是替换,需在out文件中删除掉原APK,若是添加,需在需检验是否生成,同时两文件夹中(相对应的同目录下android.mk,以及polaris-common.mk)文件需要修改,需添加新APK名,具体位置看代码内容,在out文件中检验是否生成



day3
(设置不显示导航条)/device/softwinner/ococci/overlay/frameworks/base/core/res/res/values/dimens.xml,若无dimens.xml,需从framworks复制粘贴,
<resources>
<!--height of the status bar-->-<dimmen
name="status_bar_height">25dip</dimen      修改 status_bar为>0dip<
<!-- Height of the bottom navigation system bar. -->
    <dimen name="navigation_bar_height">48dp</dimen>    修改navigation(导航)为>0dp<

day4
LCD屏幕配置
lichee/tools/pack/chips/sunxi/configs/device-name/sys_config.fex
根据物料修改的地方:
lcd_if
lcd_x= 768
lcd_y= 1024
lcd_dclk_freq= 60
cd_hbp
lcd_ht
lcd_hspw
lcd_vbp
lcd_vt
lcd_vspw
若屏幕不在中心位置,参考方法利用git如下文件:
全志/屏幕不在中心位置.patch,需注意的是,lichee层修改了,编译时需配置lichee内核

TP配置
一.文件配置,
参考全志
二.android层修改
1.手动加载驱动:device/softwinner/ococci/init.sunxi.rc下加载如下语句,添加位置如下#insmod tp and keyboard gsensor:
insmod /system/vendor/modules/gslX680.ko(相应的驱动名)
\lichee\linux-3.4\drivers\input\touchscreen具体参考A33input驱动自适应使用书
2.添加IDC
idc 文件放置的目录为:device/softwinner/ococci,在配置文件为 astar_ococci.mk 拷贝语句如下所示:/
PRODUCT_COPY_FILES += \
device/vendor-name/device-name/sw-keyboard.kl:system/usr/keylayout/sw-keyboard.kl \
device/vendor-name/device-name/tp.idc:system/usr/idc/tp.idc

day5

1.配置UI方向属性
开机图片倒置,修改,device/softwinner/ococci/astar_ococci.mk,顺时针添加,位置在for gms,
PRODUCT_PROPERTY_OVERRIDES += \
    ro.sf.lcd_density=160 \(app画面密度)
    ro.product.firmware=v2.1 \
        ro.sf.rotation=90(需调整角度为90度)
2.app不旋转:全志/patch/app不旋转.patch
3.重力修改gensor:
1).文件配置
lichee/tools/pack/chips/sunxi/configs/device-name/sys_config.fex
gsensor_used
gsensor_twi_id
2)android驱动配置
device/softwinner/ococci/init.sunxi.rc可手动或自动添加,具体可见A33
4.WIFI配置

修改参数补丁,全志/Patch,如8089/A33-esp8089-v1.9

1)8089补丁文件修改,因文件较大,可使用粘贴到lichee/linux-3.4
,执行git apply 8089.patch
2)lichee层
tool中修改lichee/tools/pack/chips/sunxi/configs/device-name/sys_config.fex,具体参考A33wifi移植说明书和patch,8089中的mk文件
linux中将drivers/net/wireless下的两个文件夹esp8089,Makefile替换,因更新所致,linux/arch/arm,mach-sunxi/rf/wifi_pm_esp8089.c修改
3)android/device三个.mk文件,android/hardware下一个.conf文件
4)wifi模块的重新编译
lichee: cd /lichee/brandy$
        ./build.sh -p sun8iw5p1

android:

find external/bluetooth/* -exec touch {} \;

mmm external/wpa_supplicant_8/wpa_supplicant -B

mmm hardware/libhardware_legacy/ -B

make installclean

rm -rf out/target/product/astar-ocicco/obj/EXECUTABLES/wpa_supplicant_intermediates

make -j4u


4)make clean 清除,在make -j4前做

day6
进入app变暗的修改补丁
/home/owp/work/allwinner/sourcecode/android/frameworks/base/packages/SettingsProvider/res/values修改如下
<!-- Default for enable boot fast mode -->
     <bool name="def_boot_fast_enable">false</bool>
     <integer name="def_bright_system">0</integer>
-    <integer name="def_brightness_light">1</integer>
+    <integer name="def_brightness_light">0</integer>
     <!-- default for ALWAYS_FINISH_ACTIVITIES -->
     <bool name="def_always_finish_activities">false</bool>

/home/owp/work/allwinner/全志/Patch/序列号补丁


day7
burn_key_patch,对比全志patch/burn-key-patch/burnkey/u-boot-2011.09/,copy掉.c/.h文件,以及u-boot-sun8iw5p1.bin,然后执行cd/lichee/brandy$,键入命令./build.sh -p sun8iw5p1,进行内核重新编译

day 8
隐藏原生系统android/build/target/product目录下
large_emu.hw.mk,generic_no_telephony.mk修改为#launcher2,注释掉launcher
core_base.mk修改为#home,同时将android/package/app/launcher2文件夹删除,若仍无结果,执行make installclean


day9
修改关机充电图标,共两个图标
一关机就出现的第一个图标,lichee/tools/pack/chips/sun8iw5p1/boot-resource/boot-resrource/bat
修改图片battery_charge.bmp
持续充电的第二个图标,android/system/core/charger/images
将该目录下所有充电图标修改

day 10
语言的修改,android/build/target/product/languages_full.mk,
PRODUCT_LOCALES:=en_US zh_CN(只保留英文和中文)
原文档:PRODUCT_LOCALES := en_US en_IN fr_FR it_IT es_ES et_EE de_DE nl_NL cs_CZ pl_PL ja_JP zh_TW zh_CN zh_HK ru_RU ko_KR nb_NO es_US da_DK el_GR tr_TR pt_PT pt_BR rm_CH sv_SE bg_BG ca_ES en_GB fi_FI hi_IN hr_HR hu_HU in_ID iw_IL lt_LT lv_LV ro_RO sk_SK sl_SI sr_RS uk_UA vi_VN tl_PH ar_EG fa_IR th_TH sw_TZ ms_MY af_ZA zu_ZA am_ET hi_IN en_XA ar_XB fr_CA km_KH lo_LA ne_NP mn_MN hy_AM az_AZ ka_GE

day 11
按键的修改
1.根据电压分按键 (一般默认不用修改)lichee/linux-3.4/drivers/input/keyboard/sunxi--keyboard.c,参考全志说明书
2.调用按键对应键值功能,文件包含在keyboard/sun8i-keyboard.h,找到相应位置,eg:#elif defined(CONFIG_ARCH_SUN8IW5P1),
  调用时需用到其定义文件input.h,位置在lichee/linux-3.4/include/linux
3.修改android按键功能的映射,device/softwinner/aster-ococci/configs/sunxi-keyboard.kl
 
day12
调sd卡,lichee/tools/pack/chips/{sunxi}/configs/ococci/sys_config.fex
注意七个引脚选项用来配置 SDIO 的时钟线、命令线、d0-d3数据线和 det 线的引脚配置根据实际硬件原理进行配置,
一般SDIO 的时钟线、命令线、d0-d3数据线是不变的,对应的有[mmc0_para]PF,[mmc1_para]PG,[mmc2_para]PC三种
而det线参考实际硬件检测IO口。

day13
problem:加载wifi模块后一直重启,有可能是lcd脚冲突,尝试解决办法,
;lcd_if:               0:hv(sync+de); 1:8080; 2:ttl; 3:lvds; 4:dsi; 5:edp; 6:extend dsi
选择方式0
或选择依次屏蔽一些lcd脚,具体看哪个容易冲突
 
day14
problem:带有wifi魔镜所有apk删除后(配置apk所有有关配置文件记得删除),launcher界面空白清零,尝试解决办法,
lichee: cd /lichee/brandy$
        ./build.sh -p sun8iw5p1
android:编译命令在make -j8 前做一次make clean