Re: [U-Boot] [PATCH 10/18] dm: eth: Avoid blocking on packet reception

2015-08-07 Thread Joe Hershberger
Hi Simon,

On Mon, Jul 6, 2015 at 5:47 PM, Simon Glass s...@chromium.org wrote:
 Some devices can take a long time to work out whether they have a new packet
 or now. For example the ASIX USB Ethernet dongle can take 5 seconds to do
 this, since it waits until it gets a new packet on the wire before allowing
 the USB bulk read packet to be submitted.

 At present with driver mode the Ethernet receive code reads 32 packets. This
 can take a very long time if we must wait for all 32 packets. The old code
 (before driver model) worked by reading a single set of packets from the USB
 device, then processing all the packets with in. It would be nice to use
 the same behaviour with driver model.

 Add a flag to the receive method which indicates that the driver should try
 to find a packet if available, by consulting the hardware. When the flag is
 not set, it should just return any packet data it has already received. If
 there is none, it should return -EAGAIN so that the loop will terminate.

 Signed-off-by: Simon Glass s...@chromium.org
 ---

Acked-by: Joe Hershberger joe.hershber...@ni.com
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 10/18] dm: eth: Avoid blocking on packet reception

2015-07-23 Thread Simon Glass
On 6 July 2015 at 16:47, Simon Glass s...@chromium.org wrote:
 Some devices can take a long time to work out whether they have a new packet
 or now. For example the ASIX USB Ethernet dongle can take 5 seconds to do
 this, since it waits until it gets a new packet on the wire before allowing
 the USB bulk read packet to be submitted.

 At present with driver mode the Ethernet receive code reads 32 packets. This
 can take a very long time if we must wait for all 32 packets. The old code
 (before driver model) worked by reading a single set of packets from the USB
 device, then processing all the packets with in. It would be nice to use
 the same behaviour with driver model.

 Add a flag to the receive method which indicates that the driver should try
 to find a packet if available, by consulting the hardware. When the flag is
 not set, it should just return any packet data it has already received. If
 there is none, it should return -EAGAIN so that the loop will terminate.

 Signed-off-by: Simon Glass s...@chromium.org
 ---

  drivers/net/designware.c  |  2 +-
  drivers/net/sandbox-raw.c |  2 +-
  drivers/net/sandbox.c |  2 +-
  drivers/net/sunxi_emac.c  |  2 +-
  include/net.h | 10 +-
  net/eth.c |  5 -
  6 files changed, 17 insertions(+), 6 deletions(-)

Applied to u-boot-dm.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot