Hello,
I'm learning USB-driver development. Currently, I'm focusing on EHCI and trying to read the capability registers. Something weird is going on with HCCPARAMS register. In Bochs its' ok: the value is 0x00003286 and it makes sense. But on the real hardware (I use two laptops) it's 0x00036881. Bits 15:0 make sense. But bits 31:16 are reserved and should be all 0, as per the EHCI specifications. But in my case they contain 3.
Does someone have the same? Why it doesn't align with the specifications? Do those fields have some meaning or can I ignore them?
Thanks.
EHCI controller, HCCPARAMS reserved bits are not as expected
Re: EHCI controller, HCCPARAMS reserved bits are not as expected
Hi,
Bits 19:16 are specified in the EHCI v1.1 Addendum. Each bit indicates an additional capability.
- Ben
https://www.fysnet.net/the_universal_serial_bus.htm
Bits 19:16 are specified in the EHCI v1.1 Addendum. Each bit indicates an additional capability.
- Ben
https://www.fysnet.net/the_universal_serial_bus.htm
Re: EHCI controller, HCCPARAMS reserved bits are not as expected
Hi Ben. Thank you very mach. I downloaded the addendum and indeed it specifies those additional fields.BenLunt wrote: ↑Sat Dec 13, 2025 1:40 pm Hi,
Bits 19:16 are specified in the EHCI v1.1 Addendum. Each bit indicates an additional capability.
- Ben
https://www.fysnet.net/the_universal_serial_bus.htm
What is still strange and I can't understand: the HCIVERSION register on my both laptops reads as 0x100.
