This patchset fixes the stellaris_enet TX handling code. The principal motivation is to fix the buffer overrun noted in the first patch, and to remove tx_fifo_len from the state (which completely sidesteps the question of how to validate it in incoming migration state :-)). I also fixed a couple of other bugs I noticed while I was there.
This isn't actually sufficient to get my test image to work: that needs proper implementation of the MII registers in the PHY. I tested this with a minor hack to make all MII registers return 0x24, which happens to satisfy the test image's setup code. However implementing the PHY registers is more work than I want to do on this device right now... Peter Maydell (5): hw/net/stellaris_enet: Restructure tx_fifo code to avoid buffer overrun hw/net/stellaris_enet: Correct handling of packet padding hw/net/stellaris_enet: Rewrite tx fifo handling code hw/net/stellaris_enet: Correctly implement the TR and THR registers hw/net/stellaris_enet: Fix debug format strings hw/net/stellaris_enet.c | 128 +++++++++++++++++++++++++++++++++--------------- 1 file changed, 88 insertions(+), 40 deletions(-) -- 1.9.0