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.

[参考译文] AM3352:在启动的 Linux 中打印 soc 寄存器

Guru**** 2484615 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1444146/am3352-print-soc-registers-in-booted-linux

器件型号:AM3352

工具与软件:

是否可以在启动的 Linux 上从 soc 读取寄存器?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    内核启动后、第一个选项是"devmem2 soc_reg_addr"。
    此致!
    -hong

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    如何获取 soc_reg_addr? 去耦吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您会发现 AM335x SoC MMR 从 AM335x TRM 寻址。
    https://www.ti.com/lit/pdf/spruh73
    此致!
    -hong

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    添加了示例

    devmem 的示例

    获取  

    CM_PER 的基址:0x44E0_0000 (来自 https://www.ti.com/lit/pdf/spruh73中的第179页)

    CM_PER_McASP0的偏移量:34h

     

    启用 CLK (0x2用于启用时钟的值)

     

    root@Testboard:~# devmem2 0x44e00034 w 0x2

    /dev/mem 打开。

    映射到地址0xb6f4e000的存储器。

    地址0x44E00034 (0xb6f4e034)处的值:0x2

     

    读取

     

    root@Testboard:~# devmem2 0x44e00034 0x2

    /dev/mem 打开。

    映射到地址0xb6f4e000的存储器。

    地址0x44E00034 (0xb6f4e034)处的值:0x2

     

    另请读取其他、例如 McASP0 DMA 0x4600_0000

     

    root@Testboard:~# devmem2 0x46000000

    /dev/mem 打开。

    映射到地址0xb6f8b000处的存储器。

    地址0x46000000 (0xb6f8b0b8)处的值:0x0