All of lore.kernel.org
 help / color / mirror / Atom feed
* Question about usb3 host code
@ 2021-06-25 10:46 Laurentiu-Cristian Duca
  2021-06-25 11:18 ` Greg KH
  0 siblings, 1 reply; 3+ messages in thread
From: Laurentiu-Cristian Duca @ 2021-06-25 10:46 UTC (permalink / raw)
  To: linux-usb

Hello linux-usb community,

  I am new to linux-usb code and I hope that my question is not silly.
I am interested in real-time usb.

  I know that on USB3, the gadget can initiate transactions
and I am searching for the function that is called in the usb3 host
when an USB3 gadget wants to start a transaction.
For example for raspberry pi 4 or other host.
Is it on the xhci host code or on the USB3 controller code (for example dwc3) ?

  Do you have any hints?
I appreciate any help.

Thank you,
Laurentiu-Cristian

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Question about usb3 host code
  2021-06-25 10:46 Question about usb3 host code Laurentiu-Cristian Duca
@ 2021-06-25 11:18 ` Greg KH
  2021-06-25 11:57   ` Laurentiu-Cristian Duca
  0 siblings, 1 reply; 3+ messages in thread
From: Greg KH @ 2021-06-25 11:18 UTC (permalink / raw)
  To: Laurentiu-Cristian Duca; +Cc: linux-usb

On Fri, Jun 25, 2021 at 01:46:09PM +0300, Laurentiu-Cristian Duca wrote:
> Hello linux-usb community,
> 
>   I am new to linux-usb code and I hope that my question is not silly.
> I am interested in real-time usb.
> 
>   I know that on USB3, the gadget can initiate transactions

It can?  What do you mean by this exactly?

USB works in the "host asks a gadget if it has data" method.  The gadget
can not talk to the host unless it is asked.

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Question about usb3 host code
  2021-06-25 11:18 ` Greg KH
@ 2021-06-25 11:57   ` Laurentiu-Cristian Duca
  0 siblings, 0 replies; 3+ messages in thread
From: Laurentiu-Cristian Duca @ 2021-06-25 11:57 UTC (permalink / raw)
  To: Greg KH; +Cc: linux-usb

Hi,

On 6/25/21, Greg KH <gregkh@linuxfoundation.org> wrote:
> On Fri, Jun 25, 2021 at 01:46:09PM +0300, Laurentiu-Cristian Duca wrote:
>> Hello linux-usb community,
>>
>>   I am new to linux-usb code and I hope that my question is not silly.
>> I am interested in real-time usb.
>>
>>   I know that on USB3, the gadget can initiate transactions
>
> It can?  What do you mean by this exactly?

I know form the following 2 sources:

1. Integrating devices in FPGA using an end-to-end hardware/software
co-designed message-based approach
Thomas Baumela

The communication model between USB devices and drivers follows a
master-slaves cheme. It means that every data transfer, either
transmitting or receiving a message, is initiated by the driver
itself. Before USB 3.0, this meant that drivers had to poll devices
like mice or keyboard. Indeed, there was no such mechanism as
interrupts coming from the device to let the driver know that a
message is ready to be received. From USB 3.0 on, when a device has to
send a message to its driver, it triggers a notification signal from
its USB controller. This notification is then forwarded to the device
which will then start the transfer as usual.

2. Universal Serial Bus - From introduction to rapid development
Texas Instruments - video on youtube
time 5:35-5:46
"Hosts are also responsible for transaction initiation and flow control.
One exception to this, is with the 3.0 standard, devices can also
initiate transactions"

>
> USB works in the "host asks a gadget if it has data" method.  The gadget
> can not talk to the host unless it is asked.
>
> thanks,
>
> greg k-h
>

Thanks,
L-C.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-06-25 11:57 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-25 10:46 Question about usb3 host code Laurentiu-Cristian Duca
2021-06-25 11:18 ` Greg KH
2021-06-25 11:57   ` Laurentiu-Cristian Duca

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.