OHCI descriptor lists
Posted: Sun Sep 08, 2013 12:03 pm
Anyone here know enough about OHCI to answer this question for me??
According to the specs, each endpoint descriptor (ED) has a "head" transfer descriptor (TD) field and a "tail" TD field, which are supposed to be filled with the addresses of the first and the last TD for that ED. The specs state that if the "head" TD and "tail" TD fields have the same value, the TD list for that ED is empty. Makes sense so far.
So, I'm initializing my Head TD and Tail TD fields to zero. Now when I want to add a TD to the list, I'm not sure what to do. If I set both the Head and Tail TD fields to the address of my TD, the controller should treat the list as empty. So I'm thinking that either the Head or Tail field should be left at zero, but which one?
Also, the TD structure has a NextTD field that points to the next TD in the list. In my case, I only have one TD, so what should the NextTD be set to? Zero? Itself?
I'm just trying to figure out what the controller is expecting, and the documentation that I've got isn't clear about what the fields should be set to in this scenario.
Thanks for the help.
- Joshua
According to the specs, each endpoint descriptor (ED) has a "head" transfer descriptor (TD) field and a "tail" TD field, which are supposed to be filled with the addresses of the first and the last TD for that ED. The specs state that if the "head" TD and "tail" TD fields have the same value, the TD list for that ED is empty. Makes sense so far.
So, I'm initializing my Head TD and Tail TD fields to zero. Now when I want to add a TD to the list, I'm not sure what to do. If I set both the Head and Tail TD fields to the address of my TD, the controller should treat the list as empty. So I'm thinking that either the Head or Tail field should be left at zero, but which one?
Also, the TD structure has a NextTD field that points to the next TD in the list. In my case, I only have one TD, so what should the NextTD be set to? Zero? Itself?
I'm just trying to figure out what the controller is expecting, and the documentation that I've got isn't clear about what the fields should be set to in this scenario.
Thanks for the help.
- Joshua