Open AnasAtBerg opened 2 months ago
SER2 corresponds to UART3 in the DTS. UART3 is currently configured with RTS & CTS in msc-sm2s-imx8mp-module.dtsi.
However, EK855 only connects the RTS pin (CTS not connected).
According to device tree docs:
I suspect the fact that we have CTS configured even though it's not connected may be causing undefined behaviour on the connected RS485 line.
Deployed new device trees on USB stick without CTS configuration (only RTS). Will test it on target HW on Thursday (2/5).
Blocker: need to be at the office to run a test and decide whether the fix is sufficient.
If yes, apply and commit the fix - then move to done. If no, move back to in-progress.
Fix didn't work - back in progress.
The fix didn't work since it was misguided. The problem only happens when booting the SoC, which suggests that the SER2 RTS is being pulled low. Why?
Blocked Will be tested with a physical resistor at QR Tech.
A 10kOhm PU resistor on RTS# fixes the problem. Avnet specify that a PU resistor is implemented on module for the SoC; however, I believe that means it's SW enabled. Meaning they use the IOMUX to enable the appropriate internal PU resistor. The problem with that is that it happens much later in the process - so we miss our chance to connect the bootloader.
Therefore, adding a physical PU resistor eliminates the problem by ensuring we have it from the get-go.
Description
We can't connect to the bootloader on SysA after flashing the SW. Tested without the Avnet SoC mounted and we connected successfully. We suspect that the Avnet board is pulling the RTS pin low (low = ready to send) on SER2 and that interrupts the connection to uC on SysA.