工具/软件:
您好:
目前、我正在使用 AM62A7电路板实现深度睡眠功能。 要将系统置于深度睡眠状态、我将使用以下命令:
echo mem > /sys/power/state
为了唤醒系统、我使用gpiochip1
连接到 PIR 传感器的 GPIO 40 ON。 不过、我发现、即使 PIR 传感器检测到运动并且触发 GPIO、电路板有时也无法唤醒。
您能否提出任何可能的解决方案或所需的配置、以确保通过 GPIO 从深度睡眠状态可靠唤醒?
此致、
严酷的神德
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:
您好:
目前、我正在使用 AM62A7电路板实现深度睡眠功能。 要将系统置于深度睡眠状态、我将使用以下命令:
echo mem > /sys/power/state
为了唤醒系统、我使用gpiochip1
连接到 PIR 传感器的 GPIO 40 ON。 不过、我发现、即使 PIR 传感器检测到运动并且触发 GPIO、电路板有时也无法唤醒。
您能否提出任何可能的解决方案或所需的配置、以确保通过 GPIO 从深度睡眠状态可靠唤醒?
此致、
严酷的神德
尊敬的 Anshu:
我正在使用 edgeai 9.2构建。
我将在下面添加用于我的应用程序的器件树
请仔细查看
我以这种方式使用它作为参考
&main_pmx0 { main_uart0_pins_default: main-uart0-pins-default { pinctrl-single,pins = < AM62AX_IOPAD(0x1c8, PIN_INPUT_PULLUP, 0) /* (E14) UART0_RXD */ AM62AX_IOPAD(0x1cc, PIN_OUTPUT_PULLUP, 0) /* (D15) UART0_TXD */ >; }; /PIR handled seperately to not affect poweroff sequence pir_keys: pir-keys { compatible = "gpio-keys"; pinctrl-names = "default"; autorepeat; pir-gpio { label = "PIR"; linux,code = <KEY_X>; interrupts-extended = <&main_gpio0 40 IRQ_TYPE_EDGE_RISING>, //mcu_gpio0 12 <&main_pmx0 0x0a4>; interrupt-names = "irq", "wakeup"; }; };
此致、
严酷的神德
你好,严酷,我正在研究这个,明天会回来给你。
有关启用主 GPIO 唤醒的示例、请参阅 k3-am62x-sk-lpm-wkup-sources.dtso: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/arch/arm64/boot/dts/ti/k3-am62x-sk-lpm-wkup-sources.dtso?h=10.00.07
如果有任何进展、请告诉我。
此致、
Kendall
尊敬的 Kendall:
我们目前正在使用 AM62A7处理器、最初可以使用菊花链 I/O 方法实现唤醒。 但是、我们遇到了电路板正常运行一段时间但随后无法从深度睡眠中唤醒的问题。 不清楚 CPU 是挂起还是进入不可恢复状态。 我们的设置包括用于处理应用程序逻辑的自定义服务和脚本。 我们使用的是 EdgeAI 9.2。
由于菊花链方法的不可靠性、我们最近改为使用 MCU (WKUP) GPIO 作为唤醒源。 在使用我们的应用程序测试这种新方法时、我们注意到系统有时仍然无法唤醒、即使没有应用程序在运行。
能否请您确认该处理器或 EdgeAI 内部版本是否存在任何已知限制? 任何见解或建议的解决方案都将非常感谢。
此致、
严酷的神德
您好!
经过进一步调查、没有支持任何低功耗模式的 EdgeAI 构建。
如果您不需要使用 EdgeAI、则可以尝试构建和安装 Linux 和 U-Boot。 对于 Linux、请使用 ti-linux-6.12.y 分支上的 ti-linux-kernel 存储库 对于 U-Boot、请使用 ti-u-boot-2025.01分支上的 ti-u-boot 存储库。 通过这种配置、应支持 DEEPSLEEP 功能。
如果在使用上述器件时 DeepSleep 不起作用、您可以尝试删除 TI Linux 模块、因为某些模块可能会影响 DeepSleep 功能。
TI-Linux-kernel 存储库: git.ti.com/.../
TI-u-boot 存储库: git.ti.com/.../
可以在 SDK 文档中的相应部分下找到如何构建 U-Boot 和内核: https://software-dl.ti.com/processor-sdk-linux/esd/AM62AX/10_01_00/exports/docs/linux/sdk.html Foundational_Components
如果这对我有帮助、请告诉我。
此致、
Kendall
尊敬的 Kendall:
这是清楚地提到的文档中的9.2电源管理部分关于低功耗模式和从这只有我能够成功地把我的板进入深度睡眠下面我是附加链接请检查:-
https://software-dl.ti.com/processor-sdk-linux/esd/AM62AX/09_02_00/exports/docs/linux/Foundational_Components、Kernel_Drivers、Power_Management、pm_low_power_modes.html
让我再次告诉你我的问题.
我将 Processor SDK Linux 用于 AM62Ax 09_02_00。现在、我能够将电路板置于深度睡眠状态、这一点非常好。 但当我们将其保持在睡眠状态一段时间时、然后尝试使用连接到 MAIN_GPIO0 40且有时未唤醒的 PIR 事件将其从睡眠状态唤醒。 我使用 UART 检查了日志、其中显示了 一些供您参考的 CPU_STALL 日志、我还在下面共享了这些日志。 我不知道发生了什么、但这会影响我们的功能、当发生这种情况时、我们需要重新启动我们不希望的主板、请为我建议一些解决方案。
而在上面的回答你告诉删除一些插件和模块你能告诉我哪些模块应该删除?
[13343.225539] do_idle+0x248/0x2c0 [13343.228763] cpu_startup_entry+0x38/0x40 [13343.232678] secondary_start_kernel+0x11c/0x140 [13343.237204] __secondary_switched+0xb0/0xb4 [13343.241383] ---[ end trace 0000000000000000 ]--- [13343.821082] omap_i2c 20000000.i2c: controller timed out [13349.972903] rcu: INFO: rcu_preempt self-detected stall on CPU [13349.978684] rcu: 0-....: (5344 ticks this GP) idle=4304/0/0x3 softirq=2511677/2511678 fqs=1859 [13349.987375] (t=5250 jiffies g=3162545 q=9527 ncpus=4) [13349.992509] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G W O 6.1.80-ti-g2e423244f8c0 #1 [13350.001365] Hardware name: Texas Instruments AM62A7 SK (DT) [13350.006925] pstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) [13350.013874] pc : _raw_spin_unlock_irqrestore+0xc/0x50 [13350.018935] lr : vblank_disable_fn+0x84/0xa0 [drm] [13350.024006] sp : ffff800008003e30 [13350.027310] x29: ffff800008003e30 x28: 0000000000000005 x27: 0000000000000020 [13350.034440] x26: ffff800000c29a60 x25: ffff8000091379c0 x24: ffff00087f8251a8 [13350.041567] x23: 0000000000000000 x22: ffff000801886c80 x21: ffff000803242000 [13350.048692] x20: ffff000803242144 x19: 0000000000000000 x18: ffff800000e69000 [13350.055820] x17: ffff800876847000 x16: ffff800008000000 x15: 000000000000003c [13350.062953] x14: ffffffffffffffff x13: 0000000000000001 x12: 000000000000003c [13350.070079] x11: 0000000000000901 x10: 0000000000000002 x9 : 0000000000000031 [13350.077205] x8 : 000000000000002b x7 : ffff800000e695c0 x6 : 0000026cdd9ca857 [13350.084330] x5 : 03ffffffffffffff x4 : ffff00080014edc0 x3 : 0000000000000000 [13350.091456] x2 : 0000000000000000 x1 : 0000000000000000 x0 : ffff000803242144 [13350.098583] Call trace: [13350.101023] _raw_spin_unlock_irqrestore+0xc/0x50 [13350.105730] call_timer_fn.constprop.0+0x24/0x80 [13350.110342] __run_timers.part.0+0x1f4/0x234 [13350.114603] run_timer_softirq+0x3c/0x7c [13350.118516] _stext+0x124/0x28c [13350.121649] ____do_softirq+0x10/0x20 [13350.125305] call_on_irq_stack+0x24/0x4c [13350.129217] do_softirq_own_stack+0x1c/0x30 [13350.133391] __irq_exit_rcu+0xb4/0xe0 [13350.137047] irq_exit_rcu+0x10/0x20 [13350.140527] el1_interrupt+0x38/0x70 [13350.144098] el1h_64_irq_handler+0x18/0x2c [13350.148189] el1h_64_irq+0x64/0x68 [13350.151582] arch_cpu_idle+0x18/0x2c [13350.155152] default_idle_call+0x30/0x6c [13350.159070] do_idle+0x248/0x2c0 [13350.162297] cpu_startup_entry+0x34/0x40 [13350.166212] kernel_init+0x0/0x130 [13350.169610] arch_post_acpi_subsys_init+0x0/0x18 [13350.174224] start_kernel+0x650/0x694 [13350.177881] __primary_switched+0xbc/0xc4 [13374.604501] omap_i2c 20020000.i2c: controller timed out [13374.609793] rtc-ds1307 2-0068: write error -110 [13375.660491] omap_i2c 20020000.i2c: controller timed out [13375.665780] rtc-ds1307 2-0068: read error -110 [13376.716458] omap_i2c 20020000.i2c: controller timed out [13376.721753] rtc-ds1307 2-0068: write error -110 [13377.768447] omap_i2c 20020000.i2c: controller timed out [13377.773739] rtc-ds1307 2-0068: read error -110 [13378.824424] omap_i2c 20020000.i2c: controller timed out [13378.829720] rtc-ds1307 2-0068: write error -110 [13379.884412] omap_i2c 20020000.i2c: controller timed out [13379.889700] rtc-ds1307 2-0068: read error -110 [13380.940382] omap_i2c 20020000.i2c: controller timed out [13380.945679] rtc-ds1307 2-0068: write error -110 [13381.992363] omap_i2c 20020000.i2c: controller timed out [13381.997659] rtc-ds1307 2-0068: read error -110 [13383.052343] omap_i2c 20020000.i2c: controller timed out [13383.057639] rtc-ds1307 2-0068: write error -110 [13384.104333] omap_i2c 20020000.i2c: controller timed out [13384.109623] rtc-ds1307 2-0068: read error -110 [13385.164316] omap_i2c 20020000.i2c: controller timed out [13385.169611] rtc-ds1307 2-0068: write error -110 [13386.220289] omap_i2c 20020000.i2c: controller timed out [13386.225584] rtc-ds1307 2-0068: read error -110 [13387.276276] omap_i2c 20020000.i2c: controller timed out [13387.281576] rtc-ds1307 2-0068: write error -110 [13388.328251] omap_i2c 20020000.i2c: controller timed out [13388.333550] rtc-ds1307 2-0068: read error -110 [13389.388230] omap_i2c 20020000.i2c: controller timed out [13389.393534] rtc-ds1307 2-0068: write error -110 [13390.444236] omap_i2c 20020000.i2c: controller timed out [13390.449563] rtc-ds1307 2-0068: read error -110 [13391.500197] omap_i2c 20020000.i2c: controller timed out [13391.505504] rtc-ds1307 2-0068: write error -110 [13392.556177] omap_i2c 20020000.i2c: controller timed out [13392.561471] rtc-ds1307 2-0068: read error -110 [13393.612155] omap_i2c 20020000.i2c: controller timed out [13393.617453] rtc-ds1307 2-0068: write error -110 [13394.664143] omap_i2c 20020000.i2c: controller timed out [13394.669440] rtc-ds1307 2-0068: read error -110 [13395.720175] omap_i2c 20020000.i2c: controller timed out [13395.725500] rtc-ds1307 2-0068: write error -110 [13396.780101] omap_i2c 20020000.i2c: controller timed out [13396.785394] rtc-ds1307 2-0068: read error -110 [13397.832082] omap_i2c 20020000.i2c: controller timed out [13397.837376] rtc-ds1307 2-0068: write error -110 [13398.892068] omap_i2c 20020000.i2c: controller timed out [13398.897394] rtc-ds1307 2-0068: read error -110 [13399.948049] omap_i2c 20020000.i2c: controller timed out [13399.953347] rtc-ds1307 2-0068: write error -110 [13401.004028] omap_i2c 20020000.i2c: controller timed out [13401.009316] rtc-ds1307 2-0068: read error -110 [13402.060007] omap_i2c 20020000.i2c: controller timed out [13402.065307] rtc-ds1307 2-0068: write error -110 [13403.112011] omap_i2c 20020000.i2c: controller timed out [13403.117305] rtc-ds1307 2-0068: read error -110 [13404.171984] omap_i2c 20020000.i2c: controller timed out [13404.177279] rtc-ds1307 2-0068: write error -110 [13405.227964] omap_i2c 20020000.i2c: controller timed out [13405.233251] rtc-ds1307 2-0068: read error -110 [13406.283938] omap_i2c 20020000.i2c: controller timed out [13406.289231] rtc-ds1307 2-0068: write error -110 [13407.339947] omap_i2c 20020000.i2c: controller timed out [13407.345237] rtc-ds1307 2-0068: read error -110 [13408.395890] omap_i2c 20020000.i2c: controller timed out [13408.401188] rtc-ds1307 2-0068: write error -110 [13409.447878] omap_i2c 20020000.i2c: controller timed out [13409.453171] rtc-ds1307 2-0068: read error -110 [13410.507861] omap_i2c 20020000.i2c: controller timed out [13410.513157] rtc-ds1307 2-0068: write error -110 [13411.563842] omap_i2c 20020000.i2c: controller timed out [13411.569135] rtc-ds1307 2-0068: read error -110 [13412.615822] omap_i2c 20020000.i2c: controller timed out [13412.621157] rtc-ds1307 2-0068: write error -110 [13413.187779] rcu: INFO: rcu_preempt self-detected stall on CPU [13413.193558] rcu: 0-....: (21097 ticks this GP) idle=4304/0/0x3 softirq=2511677/2511678 fqs=7353 [13413.202333] (t=21054 jiffies g=3162545 q=17882 ncpus=4) [13413.207641] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G W O 6.1.80-ti-g2e423244f8c0 #1 [13413.216497] Hardware name: Texas Instruments AM62A7 SK (DT) [13413.222057] pstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) [13413.229006] pc : _raw_spin_unlock_irqrestore+0xc/0x50 [13413.234065] lr : vblank_disable_fn+0x84/0xa0 [drm] [13413.239129] sp : ffff800008003e30 [13413.242433] x29: ffff800008003e30 x28: 0000000000000005 x27: 0000000000000020 [13413.249563] x26: ffff800000c29a60 x25: ffff8000091379c0 x24: ffff00087f8251a8 [13413.256688] x23: 0000000000000000 x22: ffff000801886c80 x21: ffff000803242000 [13413.263813] x20: ffff000803242144 x19: 0000000000000000 x18: ffff800000e69000 [13413.270940] x17: ffff800876847000 x16: ffff800008000000 x15: 000000000000003c [13413.278065] x14: ffffffffffffffff x13: 0000000000000001 x12: 000000000000003c [13413.285190] x11: 0000000000000901 x10: 0000000000000002 x9 : 0000000000000031 [13413.292315] x8 : 000000000000002b x7 : ffff800000e695c0 x6 : 0000026cdd9ca857 [13413.299440] x5 : 03ffffffffffffff x4 : ffff00080014edc0 x3 : 0000000000000000 [13413.306565] x2 : 0000000000000000 x1 : 0000000000000000 x0 : ffff000803242144 [13413.313692] Call trace:
您好!
要移除这些模块、请 使用以下命令尝试删除 ti_k3_dsp_remoteproc:
modprobe -rf ti_k3_dsp_remoteproc
如果这不起作用、您能否从以下位置发送完整日志:
echo mem > /sys/power/state
您也可以在将系统置于休眠状态之前输入以下命令、以便在暂停期间查看日志:
echo N > /sys/module/printk/parameters/console_suspend
此致、
Kendall
您好!
当我运行压力测试时、系统会持续进入 DEEPSLEEP 并由 MAIN_GPIO0_40唤醒、我能够在1800次迭代后复制 DEEPSLEEP 挂起。 但是、我没有看到任何 CPU 停滞的日志。
我不确定 Edge AI 10.1中是否仍然存在此错误、因此我需要额外一天的时间进行测试。 我将在星期一向您介绍该测试的结果。
同时、如果您对如何测试以更好地复制您的系统有任何建议、请告诉我。 此外、您是否能够在进入 DEEPSLEEP 之前运行以下命令:
echo N > /sys/module/printk/parameters/console_suspend
这可能会显示一些其他日志。 然后、您能否从进入 DeepSleep 之前开始发送完整的日志?
此致、
Kendall
尊敬的 Kendall:
感谢您方面的测试并分享结果。
然而,我们仍然面临着这个问题-尽管我不确定将其称为"悬空"是完全合适的。 在此状态下、系统保持上电状态、并且 PMIC 正确生成所有电压(我们通过探测对此进行了验证)。
尽管如此、我们还是无法唤醒电路板、并且 UART 在这种状态下也无法正常工作。 恢复的唯一方法是重新引导系统、我们希望避免这种情况、因为我们在独立设置中使用它。
此外,我们使用进行loglevel=14
了测试,希望它能提供扩展日志或即使在睡眠期间也能保持 UART 输出。 我捕获了日志并将它们保存到一个文件中、我将在此处附加该文件。
请查看日志、并告知我们您的观察结果。
这是日志文件、我还附加了最后几个日志、请进行检查
我将提供日志
Echo N >/sys/module/printk/parameters/console_suspend
在星期一之前
[ 1884.260717] ------------[ cut here ]------------ [ 1884.260735] WARNING: CPU: 0 PID: 406 at drivers/gpio/gpiolib.c:3140 gpiod_set_value+0x5c/0xcc [ 1884.260761] Modules linked in: md5 des_generic libdes usb_f_eem g_ether usb_f_rndis u_ether libcomposite v4l2loopback(O) st_lsm6dsx_spi cdc_ether option usb_wwan usbnet usbserial mii cc33xx mac80211 libarc4 xhci_plat_hcd rpmsg_ctrl cfg80211 rfkill rpmsg_char dwc3 cdns_csi2rx panel_sitronix_st7789v cc33xx_sdio crct10dif_ce ti_k3_r5_remoteproc leds_gpio virtio_rpmsg_bus k3_j72xx_bandgap rpmsg_ns e5010_jpeg_enc dwc3_am62 st_lsm6dsx_i2c st_lsm6dsx tevi_ap1302 kfifo_buf v4l2_fwnode tidss at24 drm_dma_helper wave5 veml6030 rtc_ds1307 j721e_csi2rx videobuf2_dma_contig v4l2_mem2mem videobuf2_memops drm_kms_helper videobuf2_v4l2 syscopyarea videobuf2_common cdns_dphy_rx v4l2_async sysfillrect sysimgblt videodev fb_sys_fops mc pwm_tiecap sa2ul spi_omap2_mcspi pwm_bl cryptodev(O) fuse drm drm_panel_orientation_quirks ipv6 [last unloaded: bq25790_charger] [ 1884.260977] CPU: 0 PID: 406 Comm: mytest Tainted: G W O 6.1.80-ti-g2e423244f8c0 #1 [ 1884.260985] Hardware name: Texas Instruments AM62A7 SK (DT) [ 1884.260991] pstate: 80000005 (Nzcv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 1884.260999] pc : gpiod_set_value+0x5c/0xcc [ 1884.261007] lr : st7789v_prepare+0x108/0x810 [panel_sitronix_st7789v] [ 1884.261024] sp : ffff80000ad73800 [ 1884.261028] x29: ffff80000ad73800 x28: ffff00080a74aac0 x27: 0000000000000000 [ 1884.261040] x26: ffff800000e3be68 x25: ffff000804d63880 x24: ffff800000dd18c0 [ 1884.261052] x23: ffff00080a607e00 x22: 0000000000000066 x21: 0000000000000000 [ 1884.261063] x20: 0000000000000000 x19: ffff0008012fbe80 x18: 00000000000000ff [ 1884.261074] x17: 0000000000000001 x16: ffff800000e3cdf8 x15: 0000000000000203 [ 1884.261086] x14: 00000000000001c6 x13: 000001aaa84c9b48 x12: 0000000000000000 [ 1884.261097] x11: 0000000000000000 x10: 00000000000009b0 x9 : ffff80000ad73700 [ 1884.261108] x8 : ffff00087f825180 x7 : ffff000801af8e00 x6 : 0000000000000000 [ 1884.261120] x5 : 0000000000000000 x4 : 0000000000000000 x3 : 0000000000000000 [ 1884.261130] x2 : 0000000000000000 x1 : ffff0008012fb100 x0 : 0000000000000001 [ 1884.261144] Call trace: [ 1884.261147] gpiod_set_value+0x5c/0xcc [ 1884.261155] st7789v_prepare+0x108/0x810 [panel_sitronix_st7789v] [ 1884.261168] drm_panel_prepare+0x28/0x40 [drm] [ 1884.261388] panel_bridge_pre_enable+0x14/0x20 [drm_kms_helper] [ 1884.261489] drm_atomic_bridge_call_pre_enable+0x68/0x80 [drm] [ 1884.261646] drm_atomic_bridge_chain_pre_enable+0x4c/0x14c [drm] [ 1884.261802] drm_atomic_helper_commit_modeset_enables+0x218/0x32c [drm_kms_helper] [ 1884.261872] tidss_atomic_commit_tail+0x48/0x80 [tidss] [ 1884.261896] commit_tail+0xa4/0x190 [drm_kms_helper] [ 1884.261966] drm_atomic_helper_commit+0x16c/0x180 [drm_kms_helper] [ 1884.262036] drm_atomic_commit+0xac/0xf0 [drm] [ 1884.262192] drm_atomic_helper_commit_duplicated_state+0xf0/0x10c [drm_kms_helper] [ 1884.262261] drm_atomic_helper_resume+0x98/0x184 [drm_kms_helper] [ 1884.262331] drm_mode_config_helper_resume+0x24/0x90 [drm_kms_helper] [ 1884.262403] tidss_resume+0x14/0x20 [tidss] [ 1884.262423] __device_resume+0xe0/0x25c [ 1884.262435] dpm_resume+0x9c/0x124 [ 1884.262444] dpm_resume_end+0x18/0x30 [ 1884.262453] suspend_devices_and_enter+0x1b8/0x4d4 [ 1884.262462] pm_suspend+0x1ec/0x264 [ 1884.262468] state_store+0x8c/0x110 [ 1884.262474] kobj_attr_store+0x18/0x30 [ 1884.262486] sysfs_kf_write+0x44/0x54 [ 1884.262494] kernfs_fop_write_iter+0x118/0x1b0 [ 1884.262500] vfs_write+0x228/0x2b4 [ 1884.262508] ksys_write+0x6c/0x100 [ 1884.262515] __arm64_sys_write+0x1c/0x30 [ 1884.262522] invoke_syscall+0x48/0x114 [ 1884.262532] el0_svc_common.constprop.0+0xd4/0xfc [ 1884.262540] do_el0_svc+0x20/0x30 [ 1884.262547] el0_svc+0x28/0xa0 [ 1884.262558] el0t_64_sync_handler+0xbc/0x140 [ 1884.262567] el0t_64_sync+0x18c/0x190 [ 1884.262575] ---[ end trace 0000000000000000 ]--- [ 1884.388552] st7789v spi0.1: Unrecognized panel IDs [4294967291] [ 1884.518069] wlcore: mac80211 start [ 1884.522386] wlcore: mac80211 add interface type 2 mac fe:23:34:d1:08:37 [ 1884.522412] wlcore: using pre-allocated hw queue base 0 [ 1884.530157] wlcore: mac80211 config psm off power 0 idle changed 0xffffff9d [ 1884.530171] wlcore: mac80211 configure filter, FIF_ALLMULTI = 0 [ 1884.530659] wlcore: mac80211 conf tx 0 [ 1884.531280] wlcore: mac80211 conf tx 1 [ 1884.531899] wlcore: mac80211 conf tx 2 [ 1884.532522] wlcore: mac80211 conf tx 3 [ 1884.533147] wlcore: mac80211 bss info role 0 changed 0x20674ff [ 1885.625050] OOM killer enabled. [ 1885.628210] Restarting tasks ... done. [ 1885.635419] random: crng reseeded on system resumption [ 1885.656014] PM: suspend exit [ 1888.949482] v4l2_get_link_freq: Link frequency estimated using pixel rate: result might be inaccurate [ 1888.958858] v4l2_get_link_freq: Consider implementing support for V4L2_CID_LINK_FREQ in the transmitter driver [ 1894.418592] wlcore: mac80211 hw scan [ 1894.973594] Deferred event dump:00000000: 00000100 000c0017 000000c0 0000002c [ 1894.980885] Deferred event dump:00000010: 000000b0 00000000 00000000 00000000 [ 1894.988389] Deferred event dump:00000020: 00000000 00000000 00000000 00000000 [ 1894.997264] Deferred event dump:00000030: 00000000 00000000 00000000 00000000 [ 1902.135113] v4l2_get_link_freq: Link frequency estimated using pixel rate: result might be inaccurate [ 1902.144390] v4l2_get_link_freq: Consider implementing support for V4L2_CID_LINK_FREQ in the transmitter driver [ 1925.195149] wlcore: mac80211 hw scan [ 1925.836352] Deferred event dump:00000000: 00000100 00100015 00070001 00820000 [ 1925.843684] Deferred event dump:00000010: 24051642 00000102 00000000 00000000 [ 1925.850946] Deferred event dump:00000020: 00000000 00000000 00000000 00000000 [ 1925.858196] Deferred event dump:00000030: 00000000 00000000 00000000 00000000 [ 1926.695938] wlcore: mac80211 hw scan [ 1927.310723] Deferred event dump:00000000: 00000100 000c0016 000000c0 0000002c [ 1927.317986] Deferred event dump:00000010: 000000b0 00000000 00000000 00000000 [ 1927.325272] Deferred event dump:00000020: 00000000 00000000 00000000 00000000 [ 1927.332541] Deferred event dump:00000030: 00000000 00000000 00000000 00000000 [ 1954.796063] PM: suspend entry (deep) [ 1954.817602] Filesystems sync: 0.017 seconds [ 1954.825689] Freezing user space processes [ 1954.834298] Freezing user space processes completed (elapsed 0.004 seconds) [ 1954.841455] OOM killer disabled. [ 1954.844762] Freezing remaining freezable tasks [ 1954.851615] Freezing remaining freezable tasks completed (elapsed 0.002 seconds) [ 1954.859139] printk: Suspending console(s) (use no_console_suspend to debug) U-Boot SPL 2023.04-ti-gf9b966c67473 (Mar 19 2024 - 20:31:40 +0000) SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.7--v09.02.07 (Kool Koala)') am62a_init: board_init_f done SPL initial stack usage: 17064 bytes am62a_init: spl_boot_device: devstat = 0x43 bootmedia = 0x9 bootindex = 0 Trying to boot from MMC1 am62a_init: spl_boot_device: devstat = 0x43 bootmedia = 0x9 bootindex = 0 Authentication passed am62a_init: spl_boot_device: devstat = 0x43 bootmedia = 0x9 bootindex = 0 Authentication passed am62a_init: spl_boot_device: devstat = 0x43 bootmedia = 0x9 bootindex = 0 Authentication passed am62a_init: spl_boot_device: devstat = 0x43 bootmedia = 0x9 bootindex = 0 Authentication passed am62a_init: spl_boot_device: devstat = 0x43 bootmedia = 0x9 bootindex = 0 Authentication passed Starting ATF on ARM64 core... NOTICE: BL31: v2.10.0(release):v2.10.0-367-g00f1ec6b87-dirty NOTICE: BL31: Built : 16:09:05, Feb 9 2024
您好、Kendall
下面我附加了我存储的内核日志、正如您提到的、用于提供命令
echo N > /sys/module/printk/parameters/console_suspend
您好!
根据您发送的日志、值得移除您未使用的任何 GPIO、因为每个睡眠周期都会显示以下警告:
WARNING: CPU: 0 PID: 406 at drivers/gpio/gpiolib.c:3140 gpiod_set_value+0x5c/0xcc
此外、 在每个睡眠周期中、GPIO 键都会出现错误:
gpio-keys trailcam-keys: failed to get gpio state: -16
这些错误看起来可以通过修复器件树来修复。 如果问题不是这样、修复这些错误至少有助于缩小范围。
此外、我还查看了您最初再次发送的错误日志。 RTC-ds1307器件似乎有问题。 日志看起来可能是 IRQ 未得到服务或竞态条件。 如果可能、我建议在没有该设备的情况下尝试您的设置、以查看问题是否仍然存在。
此致、
Kendall
您好!
在第431-433线路上唤醒 MCU GPIO 时不需要中断扩展名和中断名称。 您可以将该代码更改为以下内容、并进行测试以查看其是否有用:
gpios = <&mcu_gpio0 12 GPIO_ACTIVE_LOW>;
如果问题未消失、请在暂停系统之前输入以下命令:
echo N > /sys/module/printk/parameters/console_suspend
然后将完整日志附加到您的评论。
此致、
Kendall