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!
XHCI: Endpoint Ring does not work on real hardware
Re: XHCI: Endpoint Ring does not work on real hardware
Your repo is still private. Not sure if I can help with this really...
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.
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.