huchuan2025/40-Archive/2024年工作日记/0603.md

1.8 KiB
Raw Blame History

  • 工作
    • 文金对功耗

      • 更新新版本之后sensor变低
      • usb会引发提前唤醒
    • 菊姐

      • vnne
      • 测试啥?
    • sramP改电

    • 文艺iic ok

      • 小核和大核读代码逻辑不一样 一个是发一个连续的 另一个是离散的发两个
    • 测试iic命令备注 rt_i2c_read 0 0x49 0x1 1
      rt_i2c_read 0 0x51 0x1 1
      i2cget -f -y 0 0x49 0x1

      rt_i2c_open 0 rt_i2c_write 0 0x49 0x1 1 0x46 rt_i2c_write 0 0x4a 0x1 1 0x28 60 rt_i2c_write 0 0x4b 0x1 1 0x28 rt_i2c_write 0 0x4c 0x1 1 0x28 rt_i2c_write 0 0x4d 0x1 1 0x28 rt_i2c_write 0 0x4f 0x1 1 0x28

      都压制到0.4v

      rt_i2c_open 0
      rt_i2c_write 0 0x49 0x1 1 0 rt_i2c_write 0 0x4a 0x1 1 0 rt_i2c_write 0 0x4b 0x1 1 0 rt_i2c_write 0 0x4c 0x1 1 0 rt_i2c_write 0 0x4d 0x1 1 0 rt_i2c_write 0 0x4f 0x1 1 0

      rt_i2c_write 0 0x49 0x1 1 0x46 rt_i2c_write 0 0x4a 0x1 1 0x28 rt_i2c_write 0 0x4b 0x1 1 0x28 rt_i2c_write 0 0x4c 0x1 1 0x28 rt_i2c_write 0 0x4d 0x1 1 0x28 rt_i2c_write 0 0x4f 0x1 1 0x28 a55_deassert

      回到 75 60

    • pm_suspend S2 S3(deep sleep) CONFIG_SUSPEND_SKIP_SYNC

      • enter_state s2idle shallow deep
        • suspend_devices_and_enter
          • suspend_enter
            • syscore_suspend
  • 分析suspend流程 看一下用的什么中断来唤醒?
    • 并不是用中断唤醒而是直接复位了cpu。
    • 还有2个问题
      • 复位之前 cpu状态如何 肯定不是wfi
      • 复位地址是怎么发给小核的?
      • rpmsg底层用的什么函数
  • 分析内核日志打印
    • 先不看了,因为是复位 [%5lu.%06lu]
    • log_output
    • log_store 传入了ts_nsec
      • local_clock
        • sched_clock
        • 有2个实现 time/sched_clock.c
    • info_print_prefix print_timeinfo->ts_nsec