a64sdk开发包说明-aandroid l快速移植指南_第1页
a64sdk开发包说明-aandroid l快速移植指南_第2页
a64sdk开发包说明-aandroid l快速移植指南_第3页
a64sdk开发包说明-aandroid l快速移植指南_第4页
a64sdk开发包说明-aandroid l快速移植指南_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1.1.......................................................................................................................................... overlay说 为产品添加 改变mk文件来添加overlays的编译 在 预装到 配置data分 修改启动动 定制recovery功能.................................................... 键值的查看 按键选择 功能使用 内存自适 预留内存设置...... 内存参数调节 模块配置 KEY的硬件原 Andoid按键功能的映 LCDPanel配 1.配置文件的修 TouchPanel配 1.配置文件的修 touchpanel驱动使用说 G-Sensor配 Android层配置修 Camera配 Camera参数配 Android层配置修 SD卡配 CTP与Sensor自动检测使用说 Recovery功能tp的自适应使用说 Settings设 默认亮度设置 默认字体大小设 默认壁纸设 添加壁 Launcher默认图标和快捷栏设置............................. 系统调试 生成debug固件 进入fastboot模 fastboot常用命令. Declaration 概 方案定 overlayAndroidoverlayapkframework源代码的情况下,实现资源的定制。以下几类能够通过overlay机制定义:Configurations(string,bool,bool-UIAppearance(color,drawable,layout,style,theme,Rawresources ,/guide/topics/resources/available-resources.html为产品添加 如果包含同一资源,那么PRODUCT_PACKAGE_OVERLAYS将覆盖DEVICE_PACKAGE_OVERLAYS。如果要定义多个overlays 下创建overlay和product-n mkoverlays的编译PRODUCT_PACKAGE_OVERLAYS:=PRODUCT_PACKAGE_OVERLAYS:=必须加上$(PRODUCT_PACKAGE_OVERLAYS)变量否则将找不到默认资在 下创建资源文<resources<integer 在overlay 。如替换framework-res路径为:platform/framework/base/core/res/res/value/config.xml<resources<integer 下,也可以安装到ystem/preinstall 默认预装说4K预装 将apk使用winar打开将lib/armeabi下的so库解压到 4在 的Android.mk文件中加入##inclde$(CLEAR_VARS)LOCAL_MODULE_CLASS:=APPSLOCAL_MODULE_TAGS:=optional#LOCAL_PRIVILEGED_MODULE:= #LOCAL_OVERRIDES_PACKAGES#LOCAL_OVERRIDES_PACKAGES:=OVERRIDES_MODULE(要替代的模块LOCAL_PREBUILT_JNI_LIBS:=lib/$(TARGET_ARCH)/libjni.so(放在 下 include$(BUILD_PREBUILT)预装 的includeincludeLOCAL_MODULE_TAGS:=optional LOCAL_MODULE_CLASS:=APPSLOCAL_SRC_FILES:=name.apk( 下apk的文件名LOCAL_MODULE_SUFFIX:=include 的includeincludeLOCAL_MODULE_TAGS:=optional :=PRESIGNEDLOCAL_MODULE_CLASS:=APPS 下apk的文件名LOCAL_MODULE_SUFFIX:=includedata多用户方案一般将最后一个分区作为dataNandeMMC修改启动800480p10p00bootanimation格式:bootanimation.zip包含part0part1文件夹和desc.txt文件,part0,part1文件夹里面放的是动画拆分的,格式800480p10p00第一行:800为宽度,480为高度,15p为标志符,接下来第二列为循环照文件名顺序自动。perod_count=2mixerSpeakermixer"AIF1IN0LMux"=AIF1_DA0Lmixer"AIF1IN0RMux"=AIF1_DA0Rmixer"DACLMixerAIF1DA0Lperod_count=2mixerSpeakermixer"AIF1IN0LMux"=AIF1_DA0Lmixer"AIF1IN0RMux"=AIF1_DA0Rmixer"DACLMixerAIF1DA0LSwitch"=1mixer"DACRMixerAIF1DA0RSwitch"=1mixer"LeftOutputMixerDACLSwitch"=1mixer"LeftOutputMixerDACRSwitch"=1mixermixer"SPK_LMux"=MIXLMIXRSwitchmixer"SPK_RMux"=MIXRMIXLSwitchmixer"ExternalSpeaker-r../bootanimation.zip./*linux命令使用-0指定压缩等级为最级stored,即只归档不压缩,否则可 od666bootanimation.zip在 然后将生成的battery_scale.png替换 其中[battery1.pngbattery2.png...batteryn.png]定制recoveryRecovery是Android的升级模式,用于对android自身进行更新进入recovery模式的方法是,在android系统开机时,按住一个特定按键,则会自动进入android的recovery模式。键值的查ADAD转换的值。同时,所有的按键的键值都不相同并且,键值之间都有一定的间隔,没有相邻。比如,键值可5,10,15,20,但是5,11,12,13。etokeyvaluetepressanykey,andthevaluewouldbeprintedpresspowerkeytoexteyvalue=8keyvalue=8keyvalue=8keyvalue=AD采用的速度非常快,所以同一个按键按下,屏幕上会出现多个值。用户可以看出,这按键选机阶段recovery功能的按键有所不同。因此,系统中提供了法用于选择进入recovery模式的recovery_key_value_max0x70x9之间。由于所有按键的选择都可以通过前面介绍的方法查看,因此,假设用户要选的按键是a,用户这里选择配置的方法是:计算出(a1b1)/2,(a1c1)/2key_maxkey_min处;key_maxrecovery模式。取了一个平均值的原因是考功能使$ota.ziprecovery模式,进入该预留内存设cm一般不需要改如果确实是预留内存不足,ion分配失败,可以修改这里加大预留:文cm2G内存平台,256M。如果需要调整预留内存大小,cma变量。注:预留内存,CMA预留内存,这部分内存空闲时,可以被系统用.内存参数调一般不需要改.这里为使客户理解,对内存参数进行说明文件: 虚拟机参数 (512M方案虚拟机堆参数 (512M方案虚拟机堆参数# (#开头表示注释,即使用系统默认的参数###dalvik.vm.heapminfree=512k#[h (默认设置是针对1280*800,所以大部分采用默认设置#ro.hwuitexture_cache_size=24(texturecache,MB,至少5于width*height*32bit) (layercache,MB,至少4倍于width*height*32bit)#ro.hwui.r_buffer_cache_size=2(renderbuffercache,MB,至少2倍于width*height*8bit) (pathcache,[h (默认设置是针对1280*800,所以大部分采用默认设置#ro.hwuitexture_cache_size=24(texturecache,MB,至少5于width*height*32bit) (layercache,MB,至少4倍于width*height*32bit)#ro.hwui.r_buffer_cache_size=2(renderbuffercache,MB,至少2倍于width*height*8bit) (pathcache,MB,至少1倍于width*height*32bit) (textdropshadowcache,MB,至少2倍于width*height*8bit)#ro.hwui.text_small_cache_width=1024(pixels) (tessellationcache,MB) tion.fex===<integer <integer name.mk <storageandroidmountPoint="/storage/sdcard"android:maxFileSize="0"/><!--extsd--<storageandroid:mountPoint="/storage/extsd"android:maxFileSize="0"/><!--usbhost--<storageandroid:mountPoint="/storage/usbhost"android:maxFileSize="0"/>-/dev/block/by--/dev/block/by- noatime,nosuid,nodev,nomblk_io_submit,barrie=1,noaut_da_allocwait,check,encryptable=/dev/block/by-name/metadta wait,check,noemulatedsd,voldman+/dv/block/by-+/dv/block/by- oninit mkdir/mnt/s/emulated0700 mkdir/storage/emulated0555root mkdir/storage/sdcard0700rootexportEXTERNAL_STORAGEexportEMULATED_STORAGE_SOURCE exportEMULATED_STORAGE_TARGET #Supportlegacysymlink symlink/storage/sdcard symlink/storage/sdcardonfs8.reco8.recoery/def-#virtualsdcarddaemonrunningasmedia_rw-servicesdcard/system/bin/sdcard-u023-g1023-l/data/media+#fusewrappedexternalsdcarddaemonrunningasmedia_rw+servicefuse_sdcard/sysem/bin/sdcard-u1023-g1023-dclass constchar*GetExternalStoragePath(){return"/data/media/0"; 模块配KEY的硬件原能键,不包括电源键0.2V的电压变化可以区分一档,所以最多可以实现10个键,硬件原理如下:驱动与硬件对应的关//0.2Vstaticunsignedcharkeypad_mapindex[64]{0,0,0,0,0,00//key1,80-//key2,78-2,2,2,2,2//key3,715-//key4,622-4,4,4,4,4//key5,628-5,55//key6,634-//key7,10个,40-//key817个,50-staticunsignedint T]=[0]=[1[1]=KEY_VOLUMEDOWN,[2]=KEY_ [4]=[5]=KEY_[6]=KEY_[7]=KEY_[8]=KEY_[9]=KEY_[10]=KEY_[12]=KEY_scancodescancode= keykeykeykeykey后面的数字为驱动中上报的键值,后面为对应的功能,自定义按键时仅需要将前面的映射值和后面的功能对应起来即可(附件列,WAKEDROPPEDWiFi/BTLCDPanel配置文件:=#1:使能;0不使=#x=#y= #inMHZ = = = #inHZ == =================lcd_gamma_correction_en=0 = = = = = = = = TouchPanel立微)、aw5x06等ctp的支持。 ========ctp_exchange_x_y_flag= =port:PH01<1><default><default><1> ="axp22_eldo1" = X,YTpicaxpldo需要互换x轴跟y轴时,若ctp_exchange_x_y_flag原值为0则将其设置为1;若Android层的配置修驱动的加insmodinsmodIDC文件修"tu_ts","sw-ts","gt9xx","gt9xxf_ts","aw5306_ts"时,使用的idc名字均为tp.idc。PRODUCT_COPY_FILES+=device/vendor-name/device-name/sw-keyboard.kl:system/usr/keylayout/sw-keyoard.kl\idc文件放置 为:system/usr/idc,则在配置文件为PRODUCT_COPY_FILES+=device/vendor-name/device-name/sw-keyboard.kl:system/usr/keylayout/sw-keyoard.kl\#inputdeviceconfigPRODUCT_COPY_FILES=\device/vendorname/device-name/tp.idc:system/usr/idc/tp.idc\#inputdeviceconfigPRODUCT_COPY_FILES=\device/vendorname/device-name/tp.idc:system/usr/idc/tp.idc\gslX680使用说=gslX680驱动兼容gsl1680,gsl2680,gsl3680。为了区分的参数,在sys_config.fex的ctp_name进行区别,目前,gslX680系列的参数设置方式为每一种分辨文件。如使用的参数为“gsl168.hsysconfig.fex中的参数如下所=====GT系列(汇顶)使用说gg82g81g82g88gxxg9xxf过驱动端重新相关的参数。tpgtgt811.kogt811ICgt811gt9xx_ts.kogt9xx系列对应的驱动。头文件中放置了两组gt911使用的参数。gt9xx对应的头文件:lichee\linux-3.x\drivers\input\sw_touchscreen\gt9xx_nfo.hctp_screen_max=====当更换参数时,需要替换sysconfig.fexctp_name找到相对应的参数,如果没有找到匹配的参数,将默认第0组参数。 ft系类驱动使用说Ft5x02系列的相关ft5x02使用时需tp相关的头文件信息即使tp的ft5x02_config.h文件。如果该文件为拷贝过来,则请注意头文件中定义的名称是否与原来的文件一致,特别是文件中定义的变量名称的大小写列。此时将通过驱动ft5x02_config.h相关的参数。当ic掉电之后重新上电也需要参数。Ft5x06的相关说明的点i文件,否则将造成tp无法正常使用的情况。G-Sensor发布的SDK中已添加了对MMA7660、MMA8452、MMA8652、MMA8653、LIS3DH、LIS3DE打包配置文件修 Gsensor的配置文件示例如下。

=====只需要配置gsensor_used与gsensor_twi_id即可,gsensor_used代表是否支持gsensor,gsensor_twi_id代表I2C总线号。Android层配置修LSM9ds0为例#!/sbin/busyboxchownsystem:systm/sys/class/input/event7/device/datachownsystem:ystem/sys/class/input/event7/device/delaychownsystem:system/sys/class/input/event7/device/enablechownsystem:system /sys/bus/i2c/devices/1-#!/sbin/busyboxchownsystem:systm/sys/class/input/event7/device/datachownsystem:ystem/sys/class/input/event7/device/delaychownsystem:system/sys/class/input/event7/device/enablechownsystem:system /sys/bus/i2c/devices/1-/sys/bus/i2c/devices/1-chownsystem:system/sys/bu/i2c/devices/1-chownsystem:system/sys/bus/i2c/devices/1-006a/enable_devicechownsystem:system/sys/bus/i2c/devices/1-006a/pollrate_mschownsystem:system/sys/bus/i2c/devices/1-006a/rangechownsystem:system/ss/bus/i2c/devices/1-006a/fifo_sampleschownsystem:system/sys/bus/i2c/devices/1-006a/fifo_modechownsystem:system/sys/bus/i2c/devices/1-006a/reg_addrgsensor_name=lsm9ds0_acc gsensor_direct_x=false //如果x轴反向,则置falsegsensor_direct_y=false //如果y轴反向,则置falsegsensor_direct_z //如果z轴反向,则置gsensor_xy_revertgsensor_xy_revert= Lsm9ds0实际方向如下(参见lsm9ds0Datasheet首先调试Z轴:Z45ZZ轴方向。此时需要找到当前使用模组的方向向量(根据模组的名称。如果此时该方向Z轴向量其次查看X,Y轴是否互换:Y方向没有反置,则进入X,Y方向的调试。再次调试X,Y轴方向:X,Y轴方向时,当只有长轴方向相反或者是只有短轴方向相反时,则只修改方向X与Y轴方向向量。找到当前使用模组的方向当为true,则需要修改为false。当为true,则需要修改为false。若发现还是反向XY轴的方向仍然相反,则说明X轴为短轴,Y轴为长轴。此时:当为true,则需要修改为false。当为true,则需要修改为false。CameraSDK中已添加了对gc0307,gc0308,gc2035,gt2005,hi253,ov5640,s5k4ec打包配置文件修============port:PE05<2><default><def=port:PE06<2><default><default=port:PE07====vip_dev0_twidvip_dev0_ispusedvip_dv0_fmtvipdev0_hflip===============

==Android单insmodbuf-单insmodbuf-buf-dma-insmodinsmod在 Cameranumber_of_camera=number_of_camera=camera_id=camera_facing=camera_orientation=0camera_device=#camer模块的数量#1头;0头#camer模块的方向 device_id used_preview_size=1key_support_preview_size=640x480key_default_preview_size=640x480used_picture_size=1key_support_picture_size=640x480key_defultpicture_size=640x480used_flash_mode=0key_default_flash_mode=onkey_default_color_effect=noneused_frame_rate=key_support_frame_rate=key_default_frame_rate=used_focus_modeused_focus_mode=key_default_focus_mode=autoused_scene_mode=0key_default_scene_mode=autoused_white_balance=1key_default_white_balance=auto== pensation= pensation=- pensation= pensation=;onlyforfacingbackcamerainandroid2.3,shouldbesetinandroid4.0used_zoom=1key_zoom_supported=truekey_smooth_zoom_supported=falsekey_max_zoom=key_default_zoom=camera_orientation=/<EncodrProfilequality="480p"fileFormat="mp4"<"frameRate="30"<Audiochannels="1"/><EncodrProfilequality="480p"fileFormat="mp4"<"frameRate="30"<Audiochannels="1"/><"frameRate="30"<Audiochannels="1"/> " EncoderCapname="h264"enabled="true"minBitRate="64000"maxBitRate=" minFrameWidth="320"maxFrameWidth="640"minFrameHeight="240"maxFrmeHeight="480"minFrameRate="1"maxFrameRat="30"/><AudioEncoderCapname="aac"eabled="true"minBitRate=525"maxBitRate="12200"minChannels="1"maxChannels="1"/><AudioEncoderCapname="amrwb"enabled="true"minBitRate="6600"maxBitRate="23050"minChannels="1"maxChannels="1"/><AudioEncoderCapname="amrnb"enabled="true"minBitRate="5525"maxBitRate="12200"minChannels="1"maxChannels="1"/> maxInputFrameHeight="1080"maxOutputFrameWidth="1920"maxInputFrameHeight="1080"maxOutputFrameWidth="1920" Profilename="m4v"profile="1"== =porAndroid#insmod#insmodSD配置文件的修========= ="none" = sdc_d1~d3,表示SD的d0~d3数据线CTPSensor自动检测使用sys_config.fex文件的配模组的名称与sw_device.c中的名称一一对应。ctp_list配置项如下所示:=======自动检测驱动的加on#useon#useautomaticdetecttioninsmodctp&gsensordriverinsmod/system/vendor/modules/sw_device.koinsmod载的ctp驱动的语句。 自适应使用说sysconfig.fex文件的配sw_device.cgsenosrssysconfig.fexsw_device.c中的名称一一对应。=1=1=1=1=1=1=1=1=1=0dm=1=1=1=1模组后写1表示支持该模组的自动检测,模组后写0表示不支持该模组的自动检测。当确认方案中不使用该模组或者存在地址无法区别的模组时将该模组写0。自动检测驱动的加on#useon#useautomaticdetecttioninsmodctp&gsensordriverinsmod/system/vendor/modules/sw_device.koinsmod注意:使用自动检测时,加sw_device.ko后init.sunxi.rc文件中需要删除掉之前已经加载的gsneosr驱动的语句。Recoverytp的自适应使用说ctp驱动的添加。ctprecover的root下。#forrecoveryPRODUCT_COPY_FILES+=#forrecoveryPRODUCT_COPY_FILES+=\device/vendor-name/device-name/rcovery.fstab:recovery.fstab\device/vendor-name/device-name/modules/modules/disp.ko:disp.ko\device/vendor-name/device-name/modules/modules/lcd.ko:lcd.ko\device/vendor-name/device-name/modules/modules/gt82x.ko:gt82x.ko\device/vendor-nme/device-name/modules/modules/gt811.ko:gt811.ko\device/vendorname/device-name/modules/modules/ft5x_ts.ko:ft5x_ts.ko\device/vndor-name/device-name/modules/modules/zet622x.ko:zet622x.ko\device/vendor-name/device-name/modules/modules/gslX680.ko:gslX680.ko\deice/vendor-name/device-name/modules/modules/gt9xx_ts.ko:gt9xx_ts.ko\zet622x.ko,gslX680.ko,gt9xx_ts.ko等为目前已经支的 #forrecoveryPRODUCT_COPY_FILES+=\#forrecoveryPRODUCT_COPY_FILES+=\device/vendor-name/device-name/modules/modules/screen.ko:screen.ko\oninsmodinsmod/sw-device.kodebug_mask=0xffctp_mask=1insmod/sunxi-ts.ko//加载相对应的tp驱动insmod/sunxi-keyboard.kooninsmodinsmod/sw-device.kodebug_mask=0xffctp_mask=1insmod/sunxi-ts.ko//加载相

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论