Hi,
> 
> > 2. I do neither know what is the enqueue() nor do I find an identifier
> > with that name.
> > But if I understand you right your statement does not answer my
> > question.
> > I want to know where in usb-uhci.c transfer is triggered (at
> > hardwarelevel).( in order to conclude how it is working periodically)
> > 
> > The anterior poster did not find out that, too. Therefore this question
> > seems legitimate to me. So, who is going to discover the secret? (:
> 
> UHCI is kickstarted in static void start_hc(struct uhci_hcd *uhci)
> But this is a one time thing. There is no need to touch the chip
> for an individual transfer. You build a data structure in main memory
> which the CPU and UHCI walk. You trigger a transfer over the bus by
> altering that data structure. This is done eg. in:
>       /* Always breadth first */
>       uhci_insert_tds_in_qh(qh, urb, UHCI_PTR_BREADTH);
> 
>       if (eurb)
>               uhci_append_queued_urb(uhci, eurb, urb);
>       else
>               uhci_insert_qh(uhci, skelqh, urb);
> 
>       HTH
>               Oliver

Ok, your snippet is from uhci.c, meanwhile I work with usb-uhci.c,
unfortunately.
I understand: the hc, kickstartet in starthc, periodically and
autonomously reads mainmemory's data structure, ok?
By an interrupt hcd can acknowledge transfer completition to the client
driver. The so called IOC.
There stay 3 main questions:
1. How is ensured that hcd und hd do not access simultaneously that data
structure?
2. This interrupt service routine uhci_interrupt, at least in usb-uhci,
has a long, long  call to process_urb. "Why process urb when transfer is
over?" (:
3.This function uhci_switch_timer_int anywhere there, what does it do?
Is there still more code executed that I am not aware of?
Thanks for responding
Thomas Feldburg 





-------------------------------------------------------
The SF.Net email is sponsored by EclipseCon 2004
Premiere Conference on Open Tools Development and Integration
See the breadth of Eclipse activity. February 3-5 in Anaheim, CA.
http://www.eclipsecon.org/osdn
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to