We are designing our own carrier board for Xavier SoM.
We want to have one USB3 (1 uphy), one M.2 E key (1 uphy), two M.2 M keys (2 x 4 uphy), one pcie-ethernet adapter (1 uphy), one UFS and Micro SD Card (1 uphy), and one 8 lanes pcie connector (8 uphys). We only need PCIe and USB in host mode only.
After playing with
Jetson_AGX_Series_DevKit_Pinmux_Configuration_Template.xlsm. This is what we got for all UPHY assignment:
uphy0: C1 (connect to pcie ethernet adapter)
uphy1: usb3-2 (USB3 port #2)
uphy2-5: C0 (M.2 M key)
uphy6-9: C4 (M.2 M key)
uphy10: C2 (M.2 E key)
uphy11: UFS micro SD.
all 8 nvhs-uphys: C5 (general 8 lanes pcie connector)
I saw most uphy assignment are defined in Linux device-tree. But according to
Tegra_Linux_Driver_Package_AGX_Xavier_Adaptation_Guide.pdf, we also need to change the ODMDATA value.
Currently xavier devkit is using ODMDATA=0x9190000. We need to change it to: pcie-xbar-4-1-1-0-4 (b01011), enable-ufs-uphy-l11 (b01), disable-sata.
My questions are:
- Does eMMC on Xavier SoM module use any uphy?
- Where is the uphy assignment for UFS micro-SD defined in Linux device-tree? I only see uphy assignment for PCIe and USB3 defined in Linux device-tree. Currently, UFS micro-SD is configured to use uphy10. We basically want to change it to use uphy11. Other than ODMDATA bit change, is there anything else we need to change?
- Is my
ODMDATA=0x58990000correct? I don’t see (nvhs) uphy for C5 in ODMDATA.