RK:
1 服务器:192.168.1.40
2 登录服务器命令:ssh
[email protected] softwincn;界面在places ->connect to server,选择ssh,输入地址跟密钥即可。
3 git中删除分支 git branch -D xxx,git log可以查看更新的信息,修改前pull一下代码,修改完成后,git diff查看一下更新信息以确保修改成功,然后再commit和push代码上服务器,最后编译公版的包。
4 sudo apt-get install XXX unbuntu安装软件命令
5 串口调试 输入minicom(开机下) console 切换到机子系统 kmsg 获取kernel log
6 LCD menuconfig中的位置: Graphics support->Display device support->LCD Panel..
7 开机logo menuconfig中的位置:Graphics support->Bootup logo->
8 摄像头 menuconfig 中的位置:Mutimedia support->Video capture adapters->
9 g-sensor menuconfig 中的位置:Input device support->handle gsensor,compass,gyroscope,lsensor psensor etc->g_sensor device support
10 vi 搜索快捷键 ?接字符 向上搜索所输入字符,/接字符,向下搜索
11 开发前,最好git clean -df,清除一下垃圾。提交:git add->git cimmit->git push
12 kernel 板级文件:arch/arm/match-rk2928/board-rk2926-sdk.c (配置I2C之类的,像TP) pmu 板级配置:arch/arm/mach-rk2928/board-rk2928-sdk-tps65910.c adc 按键修改:arch/arm/mach-rk2928/board-rk2928-sdk-key.c,把按键的名字跟值对应上。 camera 配置:arch/arm/mach-rk2928/board-rk2928-sdk-camera.c
13 新的代码,从服务器上面同步到电脑里,登录服务器进入代码路径后输入git remote -v,比如会显示:
[email protected]:/home/git/repositories/rk3188,再在自己本地建的文件夹下输入:git clone
[email protected]:/home/git/repositories/rk3188,回车即可同步下来。
14 快捷Ternimal,ctrl+alt+T新开窗口新开Ternimal,ctrl+shit+T,在已有的窗口上新增Ternimal标签。
15 RK3188两路lcd通道,HDMI通过连接其中一路来选择信号出来。
16 git log查看服务器之前修改的提交信息,把commit ID拷贝,在输入git show 后接上该ID,就可以知道提交的的内容在哪些地方修改。
17 LCD --- a/kernel/drivers/video/display/screen/lcd_T043S48027240NC07_480x272.c +++ b/kernel/drivers/video/display/screen/lcd_T043S48027240NC07_480x272.c @@ -11,7 +11,7 @@ /* Base */ #define OUT_TYPE SCREEN_RGB #define OUT_FACE OUT_P666 -#define OUT_CLK 25000000 +#define OUT_CLK 14000000
18 恢复出厂设置,按住音量+不放,然后按着power键,大概四五秒后放开音量+,此时power不放,再按一下音量+,即可选择恢复出厂设置。SD也一样。
19 g-sensor调试,安装一个测试g-sensor的apk,看一下数据,拿着平板摆动看一下数据,代码中的9个数字分别代表x y z,调整一下。
20 按键修改,在板级文件中修改或添加,键值用比例关系算出来,如果有已知数据可对比的话(针对ADC的)。
21 wifi的注意调整CLK。
22 加了ota的,烧写boot.img。
23 gitg,该命令可以视图的查看代码中修改了的内容。
24 wifi rk903,要关掉Networking support->Wireless->nl80211 testmode command;蓝牙中要打开Device Drivers->Character devices->Serial drivers->Serial port 0 CTS/RTS support Serial port 0 DMA support (EXPERIMENTAL)并且(0)。
25 make savedefconfig,可以保存当前配置在kernel目录下,名字为defconfig
26 ctags -R ;fg //生成链接,找到原函数。
27 敦泰TP,使用RK原厂的ft5x0x.c,adr为0x38,修改分辨率,检查中断下降沿电压够不够,检查设备名对不对,一般I2C与设备名对了之后就可以正常通讯了,一步步加打印信息看哪步出错,中断加打印看信息是否能产生中断,XY颠倒了在上报点前加Swap()交换函数。
28 RK3188背光的波形频率跟max_brightness,min_brightness,都在arch/arm/mach-rk3188/board-rk3188-sdk.c里修改;Rk29X背光的min-brightness在arch/arm/mach-rk2928/board-rk2926-sdk.c里修改;频率在drivers/video/backlight/rk2818_backlight.h参数PWM_APB_PRE_DIV,max_brightness在drivers/video/backlight/rk2818_backlight.h参数BL_STEP。
29 按V进入可视模式,选中,按Y复制,P粘贴。yy复制单行,p粘贴。dd删除单行。
30 gc0308 0309摄像头,在camera中加对i2c,PD脚。具体看参考。驱动一样,但得给0309添加一个PID号,在PID判断处多加一个PID判断即可做兼容两个都可以使用。 调节方向的时候注意看调用的是哪个数组,看头定义。
31 2926去掉摄像头 /packages/apps/Camera/src/com/android/camera/DisableCameraReceiver.java public class DisableCameraReceiver extends BroadcastReceiver { if (!needCameraActivity) { Log.i(TAG, "disable all camera activities"); for (int i = 0; i < ACTIVITIES.length; i++) { disableComponent(context, ACTIVITIES[i]); // disableComponent(context, ACTIVITIES[i]); } }
32 grep -nr "XXX" ./当前目录搜索字符
33 getprop ro.rk.bt_enable 串口信息获取 ro.rk.bt_enable该值的属性
34 git cherry-pick 38361a68ID
35 2035&&0309摄像头,配对PD脚就OK了,之前因为选上了MM7660,I2C通讯出错,至今原因不详。去掉就OK了。2035需要三路供电。
36 rk3168找不到BT显示,在device/rockchip/rk30sdk/device.mk目录下查看,一级一级网上查,确定能使ro.rk.bt_enable=true生效。 ifeq ($(strip $(BOARD_HAVE_BLUETOOTH)),true) PRODUCT_PROPERTY_OVERRIDES += ro.rk.bt_enable=true else PRODUCT_PROPERTY_OVERRIDES += ro.rk.bt_enable=false endif
37 git checkout --文件名--,恢复文件
38 git reset --hard ID 恢复到ID位置
39 编译环境选择 source build/..,然后lunch enter键,选择9.
40 看了RK改动的 直接vim log。
41 frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettings.java,修改去除桌面下拉菜单的联系人\紧急呼叫等通话功能。 系统的东西,在framworks里修改,摄像头UI这种属于设备添加的,在外层的packages下修改。
42 修改UI的重力感应变化:packages/apps/Launcher2/AndroidManifest.xml -android:screenOrientation="landscape" +android:screenOrientation="unspecified"
修改UI竖屏时显示的列数:packages/apps/Launcher2/src/com/android/launcher2/AppsCustomizePagedView.java
mCellCountX = mWidgetSpacingLayout.getCellCountX();
mCellCountY = mWidgetSpacingLayout.getCellCountY();
- updatePageCounts();
+ if(getResources().getConfiguration().orientation==android.content.res.Configuration.ORIENTATION_PORTRAIT){
+ mCellCountX=4;
+ }
+ updatePageCounts(); //不加if判断,横屏的时候,也强行改成4列
Amlogic:
1 调试tp: a 用linux下的对比工具对比配置文件,命令如下:meld gsl1680_86V.h /media/samty/amlogic_gslX680.h,把修改内容对比过去,保存。
b 编译内核,在common目录下,命令:make uImage -j4
c 拷贝uImage 到SD卡 命令:cp arch/arm/boot/uImage /media/samty/ ,unmount /media/samty
d 打开串口,连接设备,插入SD卡,在串口窗口中输入reboot让机器重启,按空格键停住,输入mmcinfo初始化一下,然后输入:fatload mmc 0 82000000 uImage bootm.
e 调试完毕后,提交到服务器,具体如下:在TP目录下,git diff ./清除一下,然后拉一下服务器的代码:git pull origin MX81-o322,看看信息及状态:git log,git status ./,提交修改数据:git commit gsl1680_86V.h -m "fixup gsl1680e driver",查看一下信息:git log,提交到服务器上:git push origin MX81-0322
到此调试tp完毕。
2 Amlogic得配置gcc jdk环境变量,RK源码自带,不用配置。Amlogic jdk gcc环境变量配置方法:首先在根目录下安装好这两个工具,如jdk安装在/home/softwin下面,安装好后名字为jdk1.6.0_30,gcc安装在/opt目录下,则在/home/softwin目录下编辑.bashrc配置文件,即vi .bashrc,在底部添加如下代码:#jdk export JAVA_HOME=/home/softwin/jdk1.6.0_30 export JRE_HOME=/home/softwin/jdk1.6.0_30/jre export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH #for android export USE_CCACHE=1 #amlogic arm-linux-tools export PATH=$PATH:/opt/arm-2010q1/bin export PATH=$PATH:/opt/gnutools/arc2.3-p0/elf32-4.2.1/bin export PATH=$PATH:/opt/gnutools/arc2.3-p0/uclibc-4.2.1/bin 环境变量就OK了