Re: OHCI_BE_FRAME_NO_SHIFT question

David Brownell <[email protected]>
Newsgroups gmane.linux.usb.devel
Message-ID <20071008143935.DFC932393DE@adsl-69-226-248-13.dsl.pltn13.pacbell.net>
> IIRC, according to OHCI specs, frame number is a 16-bit value and is 
> padded with 2 zero bytes, as opposed to 32-bit value. Since it's a 
> 16-bit value, all be platforms should still have it in the first 2 bytes 
> (need the OHCI_BE_FRAME_NO_SHIFT).

Actually, in 7.3.3 the register holding the frame number is defined as
as a 32 bit register, with the low 16 bits holding that number.  But
nobody uses the reigster; the HCCA, in memory, is used.

The value stored in the HCCA is a 16 bit field at a specific offset,
but since not all CPUs can do 16 bit memory accesses it's used as a
32 bit field.  And that's why big-endian OHCI will shift 16 bits,
unless the vendor explicitly violates the spec...

- Dave

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.