Re: [linux-usb-devel] [PATCH] : Allow embedded developers USB options normally reserved for OTG

From: Robin Getz
Date: Thu Jan 03 2008 - 20:21:51 EST


On Thu 3 Jan 2008 12:04, Richard D pondered:
> Does all USB Host controller hardware have the ability to disable PING?

I think they do. (or at least should)...

http://www.intel.com/technology/usb/download/ehci-r10.pdf
==================
4.11 Ping Control (page 88)

USB 2.0 defines an addition to the protocol for high-speed devices called
Ping. Ping is required for all USB 2.0 High-speed bulk and control endpoints.
Ping is not allowed for a split-transaction stream. This extension to the
protocol eliminates the bad side-effects of Naking OUT endpoints. The Status
field has a Ping State bit, which the host controller uses to determine the
next actual PID it will use in the next transaction to the endpoint (see
Table 3-16).

Table 4â12 illustrates the state transition table for the host controller's
responsibility for maintaining the PING protocol.

Refer to Chapter 8 in the USB Specification Revision 2.0 for detailed
description on the Ping protocol.

===============

I think the musb is just missing the PING/OUT State table, as described in
table 4-12.

I think this is controlled in the ehci driver with:

host/ehci.h:#define QTD_STS_PING (1 << 0) /* issue PING? */

-Robin
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/