I solved the kernel panic issue. It may require a fix by Toradex.
SODIMM pins 183(Ethernet Link/Activity Status) and 185(Ethernet Speed Status) must be tied to valid logic levels. They cannot be allowed to float.
Allowing these pins to float can cause kernel panics during the TEZI install process. Even if the kernel doesn’t panic, the SOM’s Ethernet PHY(eth0) will not show up as a recognized device when entering the “ifconfig” command at the TEZI prompt.
This behavior has been proven by running the TEZI installer(v 1.8) with two Toradex iMX6ULL_WB_IT 1.1A SOMs on our custom carrier board. It has also been proven by running the TEZI installer with these SOMs on the Toradex Colibri Evaluation Board. In the latter case, R24 and R25, series resistors on Ethernet speed and activity LEDs, were removed. When the TEZI installer was executed, one SOM did not show “eth0” as a recognized device when the “ifconfig” command was entered. The second SOM experienced a kernel panic before the “ifconfig” command was entered.
There is no mention in the iMX6ULL datasheet about strapping these pins to valid logic levels. The iMX6ULL hardware design guide says all unused Ethernet pins can be left floating. The datasheet for the SOM’s Ethernet PHY(KSZ8041NL) says there are internal pullups on these pins during powerup and reset. So no external pullup or pulldown resistors should be necessary. At some point in the TEZI process, these pins aren’t being sampled properly.
This issue may be a consequence of switching the SOM’s Ethernet PHY power rails on and off. In our case, we found that jumpering around the switch on the PHY’s 3.3V rail made the kernel panics go away.
There are at least two solutions to this problem:
1) pull SODIMM pins 183 and 185 to valid logic levels at all times. For most applications, this likely means pulling both of them to logic high.
2) overwrite the latched values for these pins whenever the PHY is reset, or its power is switched on.
Our application for the iMX6ULL is low power, so we don’t populate any LEDs for production. That’s how the issue revealed itself to us. By not populating the Ethernet link status and speed LEDs, the PHY’s LED0 and LED1 pins are floating. LED0 enables or disables auto negotiate. LED1 sets the advertised link speed during the auto negotiate process.
This issue could also exist on your other your SOMs if their Ethernet power rails are switched on and off, like the iMX6ULL.
I’ll leave it to a Toradex person to provide the final “answer” response to this thread, in case they want to include specific verbiage.