I am currently trying to do a warm reboot of Linux without powering down the board. When I arrive to u-boot code, it is not able to detect the SDMMC4 to download again the kernel Image. We have the following messages:
Card doesn't support part_switch MMC partition switch failed MMC partition switch failedtegra-pcie: PCI regions: tegra-pcie: I/O: 0x0000000012000000-0x0000000012010000 tegra-pcie: non-prefetchable memory: 0x0000000013000000-0x0000000020000000 tegra-pcie: prefetchable memory: 0x0000000020000000-0x0000000040000000 tegra-pcie: 4x1, 1x1 configuration tegra-pcie: probing port 0, using 4 lanes tegra-pcie: link 0 down, retrying tegra-pcie: link 0 down, retrying tegra-pcie: link 0 down, retrying tegra-pcie: link 0 down, ignoring tegra-pcie: probing port 1, using 1 lanes tegra-pcie: link 1 down, retrying tegra-pcie: link 1 down, retrying tegra-pcie: link 1 down, retrying tegra-pcie: link 1 down, ignoring In: serial Out: serial Err: serial Net: No ethernet found. Hit any key to stop autoboot: 0 MMC: no card present switch to partitions #0, OK mmc0 is current device ** No partition table - mmc 0 ** starting USB... USB0: USB EHCI 1.10 scanning bus 0 for devices... 1 USB Device(s) found scanning usb for storage devices... 0 Storage Device(s) found scanning usb for ethernet devices... 0 Ethernet Device(s) found USB device 0: unknown device No ethernet found. missing environment variable: pxeuuid missing environment variable: bootfile Retrieving file: pxelinux.cfg/00000000 No ethernet found.
After some investigations, we find that the Linux kernel disables the power domain corresponding to the SDMMC4 during its first boot, therefore, u-boot cannot detect the SDMMC4 when we perform the warm reboot. We followed the procedure in the NVIDIA Technical Reference Manual ( 220.127.116.11 SDMMC4 Initialization Sequence) to reset the SDMMC but it seems that this operation is not enough to enable again the corresponding power domain.
So I would know if there is a mean to disable the power domain management in Linux in order to prevent the switch-off of SDMMC4 power domain?Otherwise, could you point to us where we can find the process to enable the SDMMC4 power domain?