I'm trying to deal with this conflict between PCIe CLKREQn and some MMC1 signals that we need.
The problem is this - MMC1_SDCD (card detect) is the same pin as PCIE2_CLKREQn and there is no alternative selection pins to route PCIE2_CLKREQn. We need CD to have a pluggable microSD card slot.
Additionally, MMC1_SDWP conflicts with PCIE3_CLKREQn. We need that in order to be able to write protect a microSD card.
I just looked through TI's kernel code for Linux 5.10.y and find no code that writes to a register to request a clock except for some generic refclk enable/disable code.
The issue is I see no assignments in the DTS for the refclk, and no code within the TI PCIe drivers that handles the CLKREQ.
I think the PCIe RC is using the internal clock by default:
How does the PCIe driver work with the PCIeX_CLKREQn signal? Is this done in a deeper layer of code or is this all controlled via the PCIe hardware block?
Is it possible to utilize a different GPIO as the PCIE CLKREQn signal?
Thanks!