- 2024-09-24Qcom底层WIFI驱动简介(一)
前言前面以一些基本的WIFI操作为例子,讲解了上层的一些流程调用,这篇开始讲讲底层驱动的一些基本流程。包括驱动是如何初始化的,以及STR相关的驱动处理等。一、CNSS2驱动简介先从串口看一下编译出来的模块,在/vendor_dlkm/lib/modules路径下,可以看到以下相关ko模块:-rw-r--
- 2024-08-30Android Qcom USB Driver学习(十四)
UDC-GadgetUDC:(USBDeviceController)用于管理和控制USB设备与主机之间的通信。Gadget:Android在此层实现了adb,mtp(MediaTransferProtocol媒体传输协议),mass_storage等。早期的USB只支持单一的gadget设备,使用场景较为简单,随后加入了compositeframework,用来支持多个function
- 2024-08-29Android Qcom USB Driver学习(十三)
DPMDevicePolicyManagerdealswiththeUSBPowerDeliveryresourcesusedbyoneormoreportsonthebasisofthelocaldevicepolicythebasisofthelocaldevicepolicy.OPMOSPolicyManageroperatingSoftwarethatinterfaceswiththePPMPPMPlatfor
- 2024-08-29Android Qcom USB Driver学习(十二)
keypad在suspend的过程中导致Android无法进入suspend的问题,导致整体功耗过高,其实是主机都没有进入睡眠,通过以下打log的方式最终定位到问题,pmicvbus输出的时候会有reverseboost所以pmic侧的功耗也会有增加,当pmic电量低的时候会触发uvlo导致vbus上的电断开,需要需要的话,我们可以降
- 2024-08-28Android Qcom USB Driver学习(十一)
基于TI的FirmwareUpdate固件升级的流程分析usbapplictionlayers的数据USBProtocolPackage①/②maptocheckpasswordcorrectPackageFormat:Byte[0]=ReportIdByte[1]=ValidLength(0x21=33)Byte[2]=BSLCoreCommands(0x11RXPassword)Byte[3]=Val
- 2024-08-28高通ramdump
背景高通平台下提供了一个工具,专门用来抓取内核死机以后的dump信息。如果只是非系统层面的crash(例如底层应用,安卓程序),则不能抓取dump信息。在阅读一些文档的时候知道有这个功能,但是一直没时间尝试。介绍流程为:1、进入dump模式:系统需要触发crash,同时机器需要进行warmreset2
- 2024-08-27Android Qcom USB Driver学习(十)
本章主要是基于之前的学习,实现一个hidraw的驱动,发现有两种用于识别usb设备的方式,放别是usb_device_id和hid_device_idhid_probe(1)hid_device_idkernel/msm-4.19/drivers/hid/usbhid/hid-core.cbus=usbusb_register注册驱动->sys/bus/usb/driver↓↓↓↓↓↓
- 2024-08-27Android Qcom USB Driver学习(九)
本章主要是基于之前的学习,实现一个hidraw的驱动,发现有两种用于识别usb设备的方式,放别是usb_device_id和hid_device_idhid_probe(1)hid_device_idkernel/msm-4.19/drivers/hid/usbhid/hid-core.cbus=usbusb_register注册驱动->sys/bus/usb/driver↓↓↓↓↓↓
- 2024-08-25Android Qcom USB Driver学习(九)
高通的某些平台将电源管理移植到了ADSPSubsystem,分析一下其中比较关心的部分Architecture———————————————————————————————————————|GenericTypeCDrvierPowerSupplyFramework| |G
- 2024-08-23Android Qcom USB Driver学习(八)
因为要看usbcharging的问题,所以需要补充一下battery的相关知识,算是入门吧BATSCH(1)VBATT_VSNS_P(2)BAT_THERM(3)I2C_SDA(4)I2C_SCL(5)VBATT_VSNS_Msbl1_hw_pre_ddr_init:(1)pm_device_init(2)pm_driver_init(3)pm_sbl_chg_init(1)pm_device_init没有研究过,也是
- 2024-08-23Android Qcom USB Driver学习(七)
最近遇到了USB插拔后,系统重启的问题,抓取串口log发现如下问题,log中查看trace分析就是空指针造成的panicUnabletohandlekernelreadfromunreadablememoryatvirtualaddress0000000000000000Memabortinfo:ESR=0x96000005Exceptionclass=DABT(currentEL),
- 2024-08-23Android Qcom USB Driver学习(六)
眼图基础知识与详解10分钟教会你看眼图USB2.0HUB眼图调试经验总结一篇文章教你如何全面了解眼图测试!预加重与去加重对眼图的影响关于USB通信阻抗匹配的问题硬件调试——眼图几个经典案例眼图常见问题分析包含双眼皮的情况PHYTunningdevicetree:qusb_phy0:qusb@1613
- 2024-08-21Android Qcom USB Driver学习(五)
前面的几篇都有涉及,所以本文学习一下pmicusbcharger都相关的vote机制OVP:OverVoltageProtection过压保护USB_IN:Inputcurrentlimit一般仅支持USB_IN即VBUS在输入(有些能支持DC_IN),APSD:autonomouspowersourcedetection运行于BC1.2SDP/CDP的检测完成
- 2024-08-15Android Qcom USB Driver学习(三)
usbhub区分端口USB子系统拓扑浅析USBIDDatabaseVendorIDandProductIDusbusb1:NewUSBdevicefound,idVendor=1d6b,idProduct=0002,bcdDevice=4.19usbusb1:NewUSBdevicestrings:Mfr=3,Product=2,SerialNumber=1usbusb1:Product:xHCIHostController
- 2024-08-15Android Qcom USB Driver学习(二)
BCv1.2充电规范BatteryChargingSpecificationUSBport如何识别不同的Charger类型USBCharger类型USB_SDP_CHARGERPOWER_SUPPLY_TYPE_USB(StandardDownstreamPort)USBChargerUSB_CDP_CHARGERPOWER_SUPPLY_TYPE_USB_CDP(ChargingDownstreamPort)USBChar
- 2024-08-07Android Qcom USB Driver学习(一)
该系列文章总目录链接与各部分简介:AndroidQcomUSBDriver学习(零)USB接口类型Android终端上常用的USB接口:TypeC(现在的主流),MicroB(以前的设备)一、TypeCHardwareInterfaceUSB-C引脚和功能指南一文读懂USBTypeC与USB-…TypeC引脚定义USB-C(USBType-C)规范的简单介绍
- 2024-08-07Android Qcom USB Driver学习(零)
该系列文章总目录链接与各部分简介:AndroidQcomUSBDriver学习(零)文章标题文章链接文章简介AndroidQcomUSBDriver学习(零)https://blog.csdn.net/qq_40405527/article/details/125460598本章主要学习博客各个标题的链接与简介AndroidQcomUSBDriver学习(
- 2024-04-04Qcom Camera调试(网络资料整理)
网络资料:Android:高通平台Camera调试之SetpropKey/camxoverridesettings.txt-sheldon_blogs-博客园(cnblogs.com)Camera疑难杂症_yaoming168的博客-CSDN博客高通camera调试经验总结_高通af调试教程-CSDN博客camera命令的总结_adbshell"echoautoimagedump=true>>
- 2024-04-04QCOM Camera常用指令
参考资料:Camera疑难杂症_yaoming168的博客-CSDN博客 1、骁龙相机开发者模式adbshellsetproppersist.sys.camera.devoption.debug100 2、查看上层得到的cameraid数量adbshelldumpsysmedia.camera>camdump.txt 3、打开骁龙相机adbshellamstart-nor
- 2023-08-03msm8909_MIPI转HDMI调试记录
项目中需要把开发板的MIPI输出信号转换为HDMI和LVDS输出,使用龙迅的LT8912B进行转换。龙迅的FAE提供的资料相对来说还是比较少的。先简单的看一下吧:厂商资料寄存器配置该文件提供了对LT8912B初始化的寄存器配置。对于我们来说需要做的就是,写一个驱动,在开机的时候调用相关的函数,
- 2023-05-16Rockchip RK3399 - linux内核移植
----------------------------------------------------------------------------------------------------------------------------开发板 :NanoPC-T4开发板eMMC :16GBLPDDR3:4GB显示屏 :15.6英寸HDMI接口显示屏u-boot :2017.09linux :5.10.110-----------------
- 2022-11-21安卓fstab.qcom文件解析
默认情况下,fstab中已经有了当前的分区配置,内容可能类似:#<filesystem><mountpoint> <type> <options> <dump><pass>proc
- 2022-08-20使用docker简单编译k20pro内核
简介本文将介绍一下如何使用docker编译红米k20pro的内核。作者当时尝试构建内核的原因是为了将3年前(好像是吧)购买的k20pro至尊版(已退役,12GB内存,512GB硬盘)制作成一个小的服