Other Parts Discussed in Thread: 66AK2E05, 66AK2H14
I posted a question about this several months ago and closed it because we found what was causing the issue. But we are experiencing the same symptom with boards where that root cause has been resolved.
My first question is where the best place to post a hardware-related issue is.
Some of our Keystone 66ak2h06 based boards are hanging when trying to start the network in u-boot. These boards start out working but, later, some fail. A significant percentage of the boards fail in exactly the way described and we are trying to determine a root cause so that we can address it.
The hang is very specific and repeatable. It happens on the first read access to the MDIO controller register space (e.g., 0x02090300). By "hang," I mean that it never returns from the read. This happens in keystone2_eth_mdio_enable. I have added some debug code to show the problem:
static void keystone2_eth_mdio_enable(void) { u_int32_t clkdiv; clkdiv = (EMAC_MDIO_BUS_FREQ / EMAC_MDIO_CLOCK_FREQ) - 1; writel((clkdiv & 0xffff) | MDIO_CONTROL_ENABLE | MDIO_CONTROL_FAULT | MDIO_CONTROL_FAULT_ENABLE, &adap_mdio->CONTROL); //Debug code added printf("gets here\n"); (void) readl(&adap_mdio->CONTROL) & MDIO_CONTROL_IDLE); printf("doesn't get here\n"); while (readl(&adap_mdio->CONTROL) & MDIO_CONTROL_IDLE) ; }
Everything else seems to run okay. That is, if I disable the network in u-boot, it is able to start and access non-network devices (NAND, SPI, ...).
I have checked all power supplies and the SYSCLK, PASSCLK, SGMIICLK, and ARMCLK, and they all look good. Note, however, that I cannot probe on the pins of the Keystone, so I probe as close as possible.
I checked the power and clock domain registers (in PSC) for the PA, SGMII, and SA and they all matched the values for a working board.
I do not believe this is a software problem. I also don't think that the Keystone, per se, is the root cause. But something is happening to these boards that is affecting the Keystone in a relatively specific way and I'd like to get closer to what it is.
So, I believe the issue is hardware -- perhaps we are killing Keystones -- and I would like to get some suggestions as to how to get closer to the root cause.
Thanks,
Lance