On Tue, Apr 01, 2014 at 11:14:48PM +0100, Peter Maydell wrote: > This patchset overhauls the stellaris_enet TX and RX handling code, > and converts it to use vmstate. > > The principal motivation is to fix the buffer overrun noted > in the first patch, and to reimplement things using simpler > state fields which are easier to migrate and to validate in > post_load. 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...
I see this isn't upstream yet - plan to merge it? > Changes v1->v2: > * only transmit when 1 is written to TR, not on any write > * new patches to get rid of rx_fifo, rx_fifo_len > * vmstate conversion (includes migration sanitizing code) > > Peter Maydell (7): > 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: Get rid of rx_fifo pointer > hw/net/stellaris_enet: Convert to vmstate > > hw/net/stellaris_enet.c | 311 > ++++++++++++++++++++++++++++-------------------- > 1 file changed, 185 insertions(+), 126 deletions(-) > > -- > 1.9.0 >