是否可以在物理地址上使用 writel 和 readl 等 IO utils,还是我总是需要先将物理内存映射到我的虚拟空间,然后使用指针作为 writel/readl 的参数?
最佳答案
答案将取决于平台。如果您搜索代码,您会看到 writel 和 readl 通常在特定于体系结构的文件中(在内核树中的 arch/中)实现,作为汇编语言调用。在某些平台上,它可能会起作用。但是,始终调用 ioremap 来获取指针更有意义。这将有助于提高可移植性,如果在特定平台上不需要,无论如何都会对其进行优化。
参见:
关于IO 实用程序 writel 和 readl 可以用于物理地址吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37576486/