OSDev.org
https://forum.osdev.org/

XHCI: Endpoint Ring does not work on real hardware
https://forum.osdev.org/viewtopic.php?f=1&t=42614
Page 1 of 1

Author:  SanderR [ Thu Apr 08, 2021 12:47 pm ]
Post subject:  XHCI: Endpoint Ring does not work on real hardware

Hello everyone,

I am working on XHCI again and I was trying to make the XHCI driver work on real hardware.
I managed to make it working untill the point that I want to get the GET_DESCRIPTOR command.
In the emulator, it does exactly what I want: an object is placed on the event ring and there is a value in the buffer.
On real hardware, nothing seems to happen.

I decided to make a dump of the element the XHCI hardware made for the bcbaap and everything is 0 except Context Entries which is 1, Root hub port number,which is 1, Speed which is 4 and slotstate which is 1.
I got the feeling I am doing something wrong, but I have no idea what I did wrong and if there is any good debugging tool for this.

The following link goes to the code and to the location where I do the action:
https://github.com/AdeRegt/SanderOSUSB/ ... ci.c#L1041

I hope someone can tell me what I am doing wrong.

Thank you in advantage!

Author:  Candy [ Wed Aug 04, 2021 3:34 pm ]
Post subject:  Re: XHCI: Endpoint Ring does not work on real hardware

Your repo is still private. Not sure if I can help with this really...

Author:  SanderR [ Mon Aug 09, 2021 5:57 am ]
Post subject:  Re: XHCI: Endpoint Ring does not work on real hardware

Thank you for checking out on this post.
I closed the branch(this is why it looked like a private project) but this is the latest branch for this issue:
https://github.com/AdeRegt/SanderOSUSB/ ... dev/xhci.c
I found out that on real hardware the doorbell is working on this endpoint ring. but it returns a error and floods my system with interrupts without a number in USBSTS. I try to do it without interrupts, as you can see in the code. I hope you can help me seeing what is wrong.

Thanks.

Page 1 of 1 All times are UTC - 6 hours
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/