前言
【展讯平台】Android 4.4 驱动(Kernel)、系统(framework) 定制,调试日志
正文
1:提高串口日志等级
查看
adb shell cat /proc/sys/kernel/printk
修改
adb shell echo 8 >/proc/sys/kernel/printk
2:提高串口日志等级
kernel\arch\arm\boot\dts\xxx-common.dtsi包含的使用的默认屏
u-boot15/drivers/video/sprdfb/lcd/Makefile
u-boot15/drivers/video/sprdfb/sprdfb_panel.c
u-boot15/drivers/video/sprdfb/sprdfb_spi.c(spi的可能需要修改这里的SPI_RS(选择发数据还是命令)脚)
u-boot15/include/configs/xxxx.h
如果使用spi类型的屏,spi这个展讯这里默认是收发用一根线的,当然也可配置成标准的SPI线
如果开启了te脚检测spi_te_gpio,屏也要开启te,否则会出现卡顿的情况
2:驱动U-boot – IO配置
U-boot路径: u-boot15/board/spreadtrum/xxx/pinmap-xxx.c
REG_PIN_(管脚名字) 如gpio88,查找pinmap表格,就可以知道相应的管脚名。
BITS_PIN_AF(n) n=0,1,2,3功能 具体功能可参考SCxxxx_GPIO_Spec_Vxxx.xlsx
BITS_PIN_DS 驱动能力(ata测试中导线长或者高速信号可以调整)BIT_PIN_WPUS 强上拉(强是指电流,选择阻值较小的电阻)
BIT_PIN_NULL 没强上拉BIT_PIN_WPU 上拉(初始电平为高)
BIT_PIN_WPD 下拉(初始电平为低)
BIT_PIN_NUL 既不上拉也不下拉
BIT_PIN_SLP_AP 跟随AP休眠
BIT_PIN_SLP_ALL 可能是跟随BP休眠
BIT_PIN_SLP_NONE 不休眠BIT_PIN_SLP_NUL 休眠时既不上拉也不下拉
BIT_PIN_SLP_WPD 休眠时下拉
BIT_PIN_SLP_WPU 休眠时上拉BIT_PIN_SLP_OE 休眠时输出
BIT_PIN_SLP_IE 休眠时输入
BIT_PIN_SLP_Z 休眠时高阻
按键
gpio作为按键
配置为BITS_PIN_DS(1)|BIT_PIN_NULL|BIT_PIN_WPU|BIT_PIN_SLP_AP|BIT_PIN_SLP_WPU|BIT_PIN_SLP_IE},这个配置出错可能导致低电流大
keypad模块的按键
KEYIN作为为列
KEYOUT作为行
如KEYOUT0,KEYIN2,那么
sprd,row = <0>;
sprd,column = <2>;gpio和ldo调试
cat /d/gpio可以查看引脚状态,包括gpio_request有没有申请成功,引脚现在的状态(输入或输出,高电平或低电平)
gpio-49 ( |xxxx1 ) in(输入) hi(高电平)
gpio-138 ( |xxxx2 )out(输出) lo(低电平)
/d/regulator可查看ldo的使用情况,以及配置的最大和最小电压EXINT的管脚有硬件去抖的功能,如使用EXINT12,pinmap配置成EXINT12
gpios = <&ap_eic 12 1>;