笔记-调试

查看设备树文件::/sys/firmware/devicetree/base/i2c@ff160000/ft3617@23
查看GPIO信息:
查看设备是否加密;
1,开机启动log,在u-boot下面cpld_print之前看uboot的bootpara信息
2,开机在内核下面查看proc/hkvs/bootpara信息
3,查看ifcofig的ip地址
am start com.android.launcher3/.Launcher/启动luncher3
(0)环境搭建
1,git clone ssh://quxinhui@10.1.64.50:29419/RK3288N
2,把SVN上面的kernel和uboot还有device都下进去
3,放置CPLD.bin 在/android/RK3288N/rockdev/update_gen/rockde
画线调试命令:
settings put system show_touches 1
settings put system pointer_location 1
音频录音
tinycap 123.wav -D 0 -d 0 -r 16000 -c 2 -b 16
tinyplay xxx.wav

setprop sys.usb.config adb ///设置正常系统下面ADB调用
更新ts固件
echo /data/2511-DPT7282A-v6919b-2021-9-15.hex > /proc/ts_upgrade

./quectel-pppd.sh /dev/ttyUSB3 ctnet ctnet@mycdma.cn vnet
查看APP日志:logcat

setprop persist.sys.usb.config adb 永久设置adb
df -h 查看分区大小

uboot下配置网络参数
setenv ipaddr 10.7.97.169
setenv gatewayip 10.7.97.254
setenv serverip 10.7.97.56
am start com.android.launcher3/.Launcher 切换原生luncher

dtb找不到,升级cpld.bin
busybox mount -t nfs -o nolock 10.1.74.56:/data1/quxinhui/nfs /mnt
busybox ifconfig eth0 10.7.117.164 netmask 255.255.255.0
busybox ip route add default via 10.7.117.254

(1)配置安卓T1环境

1,把recovery_contents.sh修改之后拷贝到\device\rockchip\common

2,然后修改u-boot\common\boot_rkimg.c文件第361行,增加env_set(“reboot_mode”, “recovery”);

3,再然后进入\rockdev\update_gen\rockdev,下面的package-file修改配置文件,把包括recovery之后的全部打#
正常系统:RKTools/linux/Linux_Pack_Firmware/rockdev
4,再进入\external,执行svn co https://192.0.0.183/IBP/BSP/3测试用例/硬件T1测试/RK3288/t1_source(或者执行scp -r quxinhui@:10.1.74.208: +修改后的t1_source的路径 ./)

(2)修改T1源码
1,修改t1_source下的res里面的test_config.cfg文件

(2)先编译单个T1模块
1,执行source set_1.8jdk.sh

2,再执行source build/envsetup.sh

3,再执行lunch rk3288-userdebug,或者lunch 选择17

4,进入到external/t1_source中,执行mma

生成一个hik_t1

(3)再编译整个的安卓

1,执行source set_1.8jdk.sh

2,再执行source build/envsetup.sh

3,再执行lunch rk3288-userdebug,或者lunch 选择17

4,./build.sh -u | tee log2.txt ,生成一个在/IMAGE/DS17084_7.1.2_20200408(当前日期).1700_RELEASE_TEST_USERDEBUG/IMAGES的一个update.img ./

//(4)转移到本地下载到板子上

//1,先进到update文件夹,执行scp wanghongyang@:10.1.74.208:+update.img的路径。密码是:RDhik@555

2,然后再在外网转移到D盘下的IMG文件夹下,然后打开瑞星微开发工具,打开固件升级,找到固件路径,下载到板子上,此时板子应该处于等待升级状态

(5)adb调试T1

/data1/wanghongyang8/project/RK3288N/RK3288N/out/target/product/rk3288/obj/EXECUTABLES/hik_t1_intermediates

chmod 777 hik_t1

MDK5校验:md5sum hik.img

(6)怎样打离线包
1,首先生成一个update.img,然后放到android生成离线包工具中去生成

(7)怎样烧写摸底软件
1,把要编译的文件拷贝到这个/data1/wanghongyang8/project/RK3288N/RK3288N/packages/apps/quxinhui目录下,然后:
2,把mk文件拷贝到这/data1/wanghongyang8/project/RK3288N/RK3288N/out/target/product/rk3288/system/bin 目录下,配置一下mk文件,然后:
3,

(8)内核升级;
在kernel目录下执行svn update .

SVN log 打印log 信息

单独烧写内核步骤

1,编译内核:1,make ARCH=arm64 rockchip_defconfig 2,make ARCH=arm64 PRODUCT=DS17085 DS17085.img -j24
2,会在内核文件下面生成两个镜像文件,分别是kernel.img resource.img,作为待烧写的文件
3,在Y:\android\RK3399N\device\rockchip\rk3399下面找到public.libraries.txt文件也作为待烧写的文件
最后用下载工具的下载镜像下载相应的文件。

单独编译测试demo
把测试文件拷贝的到Y:\android\RK3399N\packages\apps目录下面,然后跟编译T1的步骤一样,编译好生的文件跟T1生成的目录一致
然后把生成的可执行程序push 到正常系统之前要在正常系统中控制台上执行setprop sys.usb.config adb ,然后就可以push 了
之后就是放到任意一个路径下面去执行

交叉编译链接静态库

dmesg | grep zigbee

wifi
svc wifi enable 打开wifi
svc wifi disable 关闭wifi

busybox ifconfig eth0 10.7.117.164 netmask 255.255.255.0
//busybox ip route add default gw 10.7.117.254
busybox ip route add default via 10.7.97.254
mount -t nfs -o nolock 10.1.74.208:/data1/quxinhui/nfs /tmp
mount -t nfs -o nolock 10.7.117.104:/G/tftf tmp

音频播放:1
echo “8 4 1 7” > /proc/sys/kernel/printk

echo p > /proc/OSAL/rk809
[ 911.203427] [DDM] DEBUG [rk809_printRegs|339] READ:0x43=0x58
[ 911.204057] [DDM] DEBUG [rk809_printRegs|339] READ:0x44=0x2d
[ 911.204590] [DDM] DEBUG [rk809_printRegs|339] READ:0x45=0x6
[ 911.205267] [DDM] DEBUG [rk809_printRegs|339] READ:0x46=0xa5
[ 911.205886] [DDM] DEBUG [rk809_printRegs|339] READ:0x47=0x0
[ 911.206433] [DDM] DEBUG [rk809_printRegs|339] READ:0x48=0x0
[ 911.207047] [DDM] DEBUG [rk809_printRegs|339] READ:0x49=0x0
[ 911.207590] [DDM] DEBUG [rk809_printRegs|339] READ:0x4a=0x0
[ 911.208208] [DDM] DEBUG [rk809_printRegs|339] READ:0x4b=0xf
[ 911.208751] [DDM] DEBUG [rk809_printRegs|339] READ:0x4c=0x20

echo w 0x31 0x03 > /proc/OSAL/rk809
202101398

adb push W:\Android\PX30\Android10.0_A2\V2.0\osal\build\OSAL.ko /vendor/lib/modules/

EV_SYN:事件类型的一种。在事件完成的时候更新数据。
refresh No 刷新频率 刷新频率(内核中很多例子都赋值为60)
No
xres No 行宽 每行的像素个数
No
yres No 屏幕高度 屏幕的行数
No
pixclock No 像素时钟 每个像素时钟周期的长度,单位是皮秒(10的负12次方分之1秒)
No
left_margin HBP (Horizontal Back Porch) 水平后沿 在每行或每列的象素数据开始输出时要插入的象
素时钟周期数
No
right_margin HFP (Horizontal Front Porch ) 水平前沿 在每行或每列的象素结束到LCD 行时钟输出脉冲
之间的象素时钟数
No
upper_margin VBP (Vertical Back Porch) 垂直后沿 在垂直同步周期之后帧开头时的无效行数
No
lower_margin VFP (Vertical Front Porch) 垂直前沿 本帧数据输出结束到下一帧垂直同步周期开始之
前的无效行数
No
hsync_len HPW (HSYNC plus width) 行同步脉宽 单位:像素时钟周期 也有手册简称为HWH(HSYNC width)

vsync_len VPW (VSYNC width) 垂直同步脉宽 单位:显示一行的时间th 也有手册简称为VWH(VSYNC width)

sync No 同步极性设置 可以根据需要设置FB_SYNC_HOR_HIGH_ACT(水平同步高电平有效)和FB_SYNC_VERT_HIGH_ACT(垂直同步高电平有效) No

单烧cpld时,别忘记执行一下设备分区表,来自动获取设备分区地址。
io -4 0xff2a01e4 查看ddr

df -h
查看分区文件是否为系统自带的还是挂载的

常用脚本命令
更换ts触摸驱动:echo /data/ILI2511_RX41_TX23_7282AV6919.hex > /proc/ts_upgrade
解除休眠:echo “PowerManagerService.noSuspend” > /sys/power/wake_lock
屏幕划线: settings put system show_touches 1
settings put system pointer_location 1

lsusb
查看USB设备注册号

  1. 查看驱动模块中打印信息的命令:dmesg

  2. 查看字符设备信息可以用lsmod 和modprobe,lsmod可以查看模块的依赖关系,modprobe在加载模块时会加载其他依赖的模块。

  3. 显示当前使用的中断号cat /proc/interrupt

Android出现“Read-only file system”解决办法:
busybox mount -o remount rw /system

外部做
adb root
adb remount

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值