我正在尝试处理PCIe CLKREQn与我们需要的某些MMC1信号之间的冲突。
问题是- MMC1_SDCD (卡检测)与PCIe2_CLKREQn的针脚相同,并且没有其它选择针脚来路由PCIe2_CLKREQn。 我们需要CD才能有可插拔microSD卡插槽。
此外,MMC1_SDWP与PCIe3_CLKREQn冲突。 我们需要这样才能对microSD卡进行写保护。
我刚刚浏览了TI的Linux 5.10 .y内核代码,发现除了一些通用REFCLK启用/禁用代码之外,没有任何代码写入寄存器以请求时钟。
问题是我在DTS中没有看到针对REFCLK的分配,也没有看到用于处理CLKREQ的TI PCIe驱动程序中的代码。
我认为PCIe RC默认使用内部时钟:
PCIe驱动程序如何与PCIeX_CLKREQn信号配合使用? 这是在更深层的代码层中完成的,还是全部通过PCIe硬件块控制?
是否可以使用不同的GPIO作为PCIe CLKREQn信号?
谢谢!