qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] ARM ethernet fixes


From: Paul Brook
Subject: Re: [Qemu-devel] ARM ethernet fixes
Date: Sun, 18 Dec 2005 16:51:02 +0000
User-agent: KMail/1.8.2

On Thursday 15 December 2005 00:00, Paul Brook wrote:
> On Wednesday 14 December 2005 22:17, Daniel Jacobowitz wrote:
> > This is enough to let me use apt-get within qemu-system-arm :-)
>
> I'd totally missed that there were _two_ TX FIFOs.
>
> > @@ -364,6 +381,8 @@ static void smc91c111_writeb(void *opaqu
> >              return;
> >          case 12: /* Interrupt ACK.  */
> >              s->int_level &= ~(value & 0xd6);
> > +            if (value & INT_TX)
> > +                smc91c111_pop_tx_fifo_done(s);
> >              smc91c111_update(s);
> >              return;
>
> I'm fairly sure this is still wrong. We should only clear INT_TX if the tx
> completion fifo is empty. Maybe have smc91c111_update set the INT_TX bit if
> tx_fifo_done_len != 0.
>
> You also need to make smc91c111_reset, smc91c111_writeb: bank 2 offset 0
> cmd 2 (Reset MMU) and smc91c111_writeb: bank 2 offset 0 cmd 7 (Reset TX
> FIFO) set s->tx_fifo_done_len = 0.

Something like the attached patch.

Paul

Attachment: patch
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]