flat assembler
Message board for the users of flat assembler.
Index
> OS Construction > UHCI Ports (USB implementation with more than 2?) Goto page 1, 2 Next |
Author |
|
smiddy 05 Aug 2014, 01:01
Sorry, I'm no help. I did a semi-search and found this blog, maybe there's some good information there: http://www.darrylnewberry.com/blog/?p=56
|
|||
05 Aug 2014, 01:01 |
|
cod3b453 05 Aug 2014, 17:21
You could incrementally scan for PORTSC bit 7 which is always 1, possibly also check the other bits are as expected.
I can't see anything from my own machines that indicate either way either, sorry. |
|||
05 Aug 2014, 17:21 |
|
BAiC 05 Aug 2014, 19:30
smiddy: thanks anyway.
cod3b453 wrote: You could incrementally scan for PORTSC bit 7 which is always 1, possibly also check the other bits are as expected. while I appreciate the thought; I've been burned by these kinds of token methods too many times in the past. I only use serial methods in hardware enumeration. - Stefan _________________ byte me. |
|||
05 Aug 2014, 19:30 |
|
neville 06 Aug 2014, 03:28
This is what I remember from my UHCI implementation for FAMOS in 2008:
UHCI host controllers are implemented as devices on the PCI bus. Each HC has a root hub with exactly TWO ports. So iirc the answer to your question is NO, but I haven't delved back into the documentation to confirm this. Of course multiple HC's can be implemented, so in general an even number of ports is possible. BTW, smiddy, Darryls Blog that you linked to has a small but significant error. HCD is the Host Controller Driver (not Host Controller Device). The HCD is pure software but in USB parlence the word device always refers to hardware imo. Hope this helps. _________________ FAMOS - the first memory operating system |
|||
06 Aug 2014, 03:28 |
|
BAiC 06 Aug 2014, 03:56
neville: I've already determined that there may (permissive 'may') be more than 2 ports. read my original post.
Quote: Each HC has a root hub with exactly TWO ports the documentation explicitly states that a root hub may have more than 2 ports so this statement is wrong (again; read my original post to know where it is in the doc). - Stefan _________________ byte me. |
|||
06 Aug 2014, 03:56 |
|
neville 06 Aug 2014, 10:20
I checked the Intel UHCI Design Guide that I used, and my memory is correct The root hub has only 2 ports. I have to suggest that you may be misinterpreting the document you are referring to, or maybe the specification has been revised? (but I would think that is unlikely). Additional ports can be provided by connecting external hub devices to either or both of the root hub ports, or by using additional Host Controllers if they are available in the hardware. But each HC only has ONE Root Hub with TWO ports according to my documentation (dated March 1996!) Again, I hope this helps.
_________________ FAMOS - the first memory operating system |
|||
06 Aug 2014, 10:20 |
|
BAiC 06 Aug 2014, 20:04
do a search for 'uhci11d.pdf' (there are plenty of copies roaming around), get it, then read Section 1.4 "Root Hub/Ports". it's in the last sentence of the first paragraph.
Quote: UHCI permits additional ports to be implemented up to the maximum specified by the USB Specification. -Stefan _________________ byte me. |
|||
06 Aug 2014, 20:04 |
|
neville 06 Aug 2014, 22:44
BAiC, Now I am sure you are misinterpreting the document. The reference to "ports" does NOT mean Root Hub Ports. The specification defines only TWO I/O addresses for the root hub port registers in the PCI configuration address space: USBBase+10-11H for Port1 and USBBase+12-13H for Port2. So there can olny be two root hub ports. I believe the "maximum specified" is probably referring to the maximum of 128 devices which can be connected to a host controller. In theory all of these could be downstream hub devices, each providing 2 or more additional ports (NOT root hub ports!) but obviously that wouldn't be practical However I'm sure that it's NOT referring to root hub ports because that would make no sense at all.
I think that USB specifications in general are often difficult to interpret. I know, because I went through all the pain 6 years ago and I could (perhaps should) write a book about it I hope this clarifies it for you. _________________ FAMOS - the first memory operating system |
|||
06 Aug 2014, 22:44 |
|
BAiC 07 Aug 2014, 00:05
I'm not misinterpreting anything. you are. The document explicitly states that there may be more ports in the root hub. mistakes by the authors of documentation are always possible but the implications of any specific statement are not.
I highly recommend not writing a book you ignorant piece of shit. the fact that you can't read the fucking manual means you have no business teaching it. don't spread your shit interpretations. Quote: I hope this clarifies it for you. go fuck yourself. |
|||
07 Aug 2014, 00:05 |
|
neville 07 Aug 2014, 01:03
OMG! It would seem that my expressed hope that I might be helping you was just a little misplaced. Clearly I won't take the trouble again if at any future time you ask us for help. Consider your foul-mouthed self to be henceforth black-listed, at least by me!
_________________ FAMOS - the first memory operating system |
|||
07 Aug 2014, 01:03 |
|
sinsi 07 Aug 2014, 04:03
According to Intel's documentation for UHCI
Quote: Ports per Controller 2 |
|||
07 Aug 2014, 04:03 |
|
BAiC 07 Aug 2014, 06:57
sinsi: that's nice. what documentation are you referring to? also, where is that "quote" from (within the actual documenation)?
|
|||
07 Aug 2014, 06:57 |
|
sinsi 07 Aug 2014, 07:24
io-controller-hub-10-family-datasheet.pdf
5.18 USB UHCI Host Controllers (D29:F0, F1, F2, F3 and D26:F0, F1 and F2) wrote: The ICH10 contains six USB full/low-speed host controllers that support the standard Universal Host Controller Interface (UHCI), Revision 1.1. Each UHCI Host Controller (UHC) includes a root hub with two separate USB ports each, for a total of twelve USB ports. Basically the same for ICH5 and even 82801EB. One controller = two ports. |
|||
07 Aug 2014, 07:24 |
|
BAiC 07 Aug 2014, 20:18
sinsi: obviously you didn't read my question on the first post so I'll repeat it here:
Quote: does anyone know of an actual UHCI implementation with more than 2 ports? that is the specification for one of the IO Controllers. it is NOT the specification for UHCI. don't confuse the two. - Stefan _________________ byte me. |
|||
07 Aug 2014, 20:18 |
|
sinsi 07 Aug 2014, 22:26
But the IO Controller is built according to the UHCI specification. If a controller has more than two ports it can't be UHCI-compliant. UHCI is Intel's proprietary USB 1.0/1.1 interface, later specs do allow for more than two ports.
|
|||
07 Aug 2014, 22:26 |
|
neville 07 Aug 2014, 22:49
sinsi wrote: If a controller has more than two ports it can't be UHCI-compliant _________________ FAMOS - the first memory operating system |
|||
07 Aug 2014, 22:49 |
|
BAiC 07 Aug 2014, 23:45
my point is that the UHCI allows more than 2 ports. the fact that one implementation only uses 2 is not relevant.
Quote: If a controller has more than two ports it can't be UHCI-compliant this is wrong. as I pointed out: the documentation explicitly allows more than 2. |
|||
07 Aug 2014, 23:45 |
|
sinsi 08 Aug 2014, 12:25
The sentence before yours -
Quote: For the Host Controller implementation described in this design guide, the root hub is integrated into the Host Controller and has two ports (Figure 6). What I think the document is saying that the Intel UHCI only has two ports but if another company wants to licence it they can add more. Probably why Compaq, Microsoft and National Semiconductor started OHCI. |
|||
08 Aug 2014, 12:25 |
|
BAiC 08 Aug 2014, 23:59
yeah, the specific implementation described has 2 ports but the standard/specification allows more than 2. distinguishing between implementation and standard is the crux of the problem here.
I'm not confused about how many ports the UHCI implements; I was simply curious if anyone knew of an implementation that has more than 2 (I also provided reason for that curiosity). neville was confused about my question. I responded harshly because I don't appreciate my questions being hijacked by errant self-congratulating fools. it is bad enough that there is so little information out there for OS Developers. we don't need people like neville to pollute what little information is available. side note: from what I understand OHCI was defined before UHCI. but don't quote me on that. -Stefan _________________ byte me. |
|||
08 Aug 2014, 23:59 |
|
Goto page 1, 2 Next < Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.