捕获用户模式日志
摄像头软件中提供多种日志级别。开发者可根据需要启用这些日志级别,以高效调试问题。 日志级别通过以下覆盖(override)设置进行控制。
要启用日志记录:
- 首次使用时,创建一个名为
camxoverridesettings.txt的文本文件。 - 将所需的日志掩码添加到此文本文件中。例如 LogVerboseMask=0XFF11 和 LogInfoMask=0x1C09811。
- 将修改后的文件推送到
/var/cache/camera/camxoverridesettings.txt.。更改覆盖设置后可能需要重启设备。
/var/cache/camera/camxoverridesettings.txt 文件:
摄像头 UMD 日志
摄像头驱动程序实现了调试日志消息。可根据用户关注点(详细程度级别和组)过滤日志消息以限制显示内容。每条日志都来自指定的组,并具有从 verbose 到 error 的详细程度级别。所有摄像头调试日志遵循相同的格式:摄像头用户模式日志组
驱动程序被划分为多个称为组(group)的逻辑组件。使用特定组可以减少日志消息数量,仅关注你想要获取信息的组件。这通过位掩码实现,可有选择地启用来自摄像头系统不同组件的日志。 下表列出了 UMD 日志组。捕获内核模式日志
KMD 日志消息默认启用,并出现在内核日志中。摄像头 KMD 日志均以 CAM 前缀开头。KMD 中还提供额外的调试日志,通过组进行控制。 下表列出了 KMD 日志组。启用摄像头内核模式驱动日志
- 要在 KMD 中启用 CAM_SENSOR 和 CAM_ICP 调试日志,请在 SSH shell 中运行以下命令:
- QCS6490
- IQ-9075-EVK/IQ-8275-EVK
- QCS615
- 要动态启用 CSID IRQ 日志,请配合以下命令使用相应的掩码值。
- QCS6490
- IQ-9075-EVK/IQ-8275-EVK/QCS615
信息记录到 kmsg,可使用以下命令获取:- 启用 SOF、EOF、SOT 和 EOT IRQ:
- 仅设置短包和长包捕获 IRQ:
捕获的日志可提供 SOF 和 EOF 的详细信息,并指示哪个传感器正在出流。以下是示例日志: - QCS6490
启用 CSIPHY 日志转储
要启用 CSIPHY 日志转储:- 使用以下命令从 CSIPHY 获取日志转储:
信息会记录到 kmsg。
- 使用以下命令获取日志转储文件:
注意 在这些日志中,
<chipset name> 对应如下:
qcm6490- RB3gen2qcs9100- IQ-9075-EVK/IQ-8275-EVKqcs615- IQ-615-EVK
启用 CSID SOF/EOF IRQ 日志
要启用 CSID SOF/EOF IRQ 日志,请运行以下命令获取跟踪日志:<chipset name> 对应如下:
qcm6490- RB3gen2qcs9100- IQ-9075-EVK/IQ-8275-EVKqcs615- IQ-615-EVK
收集 CPAS 日志
要在摄像头日志中收集时钟投票信息:- 使用
camxoverridesettings.txt针对 core、HAL、IFE 和电源运行以下命令:
- 重启后,启用 KMD CAM_CPAS|CAM_PERF|CAM_REQ 掩码:
- 收集日志并运行用例:
注意 在这些日志中,
<chipset name> 对应如下:
qcm6490- RB3gen2qcs9100- IQ-9075-EVK/IQ-8275-EVKqcs615- IQ-615-EVK
启用内核运行时日志掩码
运行以下命令启用 CRM 日志:<chipset name> 对应如下:
无需重启设备。如果重启了设备,请在打开摄像头应用程序之前再次运行此命令。 以下列表提供了每个驱动的调试位掩码。
qcm6490- RB3gen2qcs9100- IQ-9075-EVK/IQ-8275-EVKqcs615- IQ-615-EVK

