周五见| STR相关问题讲解

Comake Online


作者| veahow、sz.chen、Peng.Xiong、shaojun.ke、koda.xu、社区技术运营官


Comake社区技术问题汇总,第20230825期,本期将分享STR相关的问题。


本期问题速览


▪ Linux进入STR后如何配置UART唤醒?


▪ 进入STR时,kernel会崩溃的问题


▪ RTOS进入STR然后唤醒摄像头出现异常要如何解决?


▪ 从str唤醒后JPD出现如下报错


▪ Linux正常运行,没有进入STR,如何使用RTC alarm


▪  STR的流程是怎样的?


▪  str的gpio唤醒使用流程





Q1:Linux进入STR后如何配置UART唤醒?


A1:【SSD22X/SSD21X/SSC9211 Linux适用】


1 场景描述


客户应用在STR后需要按键、串口、USB唤醒,在USB作为通信接口时串口关闭,在串口作为通信接口时,USB关闭,需要有支持STR UART唤醒的功能。


2 环境搭建


2.1 版本说明

SDK版本:IKAYAKI_ULS00V010

硬件平台:SSD222X_QFN128_2L_DDR2_DEMO公板


由于公板的JP4排针有引出相关的引脚,本次测试使用公板的PAD_KEY8、PAD_KEY9脚(分别对应JP4排针的Pin 7和Pin 8),详细信息如下表所示:



本次内核使用的pioneer3_ssc020a_s01a_spinand_demo_qfn128_usbcamera_defconfig这个配置,需要修改kernel/arch/arm/boot/dts/pioneer3-ssc020a-s01a-qfn128-demo-usbcam-dualSensor-padmux.dtsi



并在kernel/arch/arm/boot/dts/pioneer3.dtsi处修改:



2.2 实现方法


实现方法可分为两种,一种是通过UART中断唤醒,一种是将UART_RX脚注册为GPIO中断进行唤醒,两种方法均可正常唤醒,区别在于功耗。


2.2.1 UART中断唤醒


使用UART中断唤醒,进入STR需要开启某些模块,会导致功耗有较大的提升。修改kernel/arch/arm/mach-sstar/pioneer3/sram.S:



以及修改kernel/drivers/sstar/serial/ms_uart.c的ms_uart_startup函数:



2.2.2 UART_RX GPIO中断唤醒


由于支持UART中断唤醒导致功耗有增加,想要保持原有低功耗情况只能支持UART_RX GPIO唤醒。该实现比较简单,直接修改kernel/arch/arm/boot/dts/pioneer3.dtsi的wakeup中的wakeup_source即可:



如果同时有其他的GPIO中断,比如PAD_KEY12这个脚,只需要再修改source_num就可以:



点击阅读原文



Q2:进入STR时,kernel会崩溃的问题


A2:使用 dispcam_p3_spinand.glibc-9.1.0-s01a.64.qfn128.demo_defconfig 编译出的image,在进入STR时,会有如下的异常:



上述问题是由于dts中,pwm节点的clk源配置有问题导致的,请按如下进行修改即可:



更新的点如截图所示:



点击阅读原文



Q3:RTOS进入STR然后唤醒摄像头出现异常要如何解决?


→点击阅读全文




如您在开发的过程中遇到STR相关问题,或您需要技术支持选型支持商务支持,欢迎进入Comake社区开发论坛发帖咨询,社区技术工程师和运营人员将会及时响应您的诉求。



往期回顾


周五见| SSD21X/22X相关问题讲解


周五见| SSD22X相关问题讲解


周五见| SSD20X相关问题讲解


周五见| IQ与PQ相关问题讲解


周五见| mipi相关问题讲解





扫码进入论坛

原厂答疑|产品选型|官方资源



扫码咨询客服

SDK下载|芯片、开发板购买