<div dir="ltr">Thanks for sharing this!  I've been wanting to play with the USB device peripherals but haven't found the time to work on the driver.  I'll try to make time soon to read this over.</div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Jun 6, 2017 at 6:19 AM, Benjamin Herrenschmidt <span dir="ltr"><<a href="mailto:benh@kernel.crashing.org" target="_blank">benh@kernel.crashing.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi !<br>
<br>
So I've been writing a new UDC gadget driver for the vHub from scratch.<br>
<br>
It's still a work in progress as I haven't yet implement the "hub"<br>
functionality yet, so it's a single device UDC driver at the moment.<br>
<br>
There are also various improvements that need to be done, but overall<br>
it's functional enough to give me about 200Mbit/sec off hdparm -tf of a<br>
mass storage fed off a tmpfs file.<br>
<br>
I'll be working on it more sporadically during the next few weeks, I<br>
plan to have the virtual hub functionality going at some point and<br>
might look into further performance improvements, but it's in a state<br>
where some reviews/feedback could come in handy if anybody feels like<br>
having a look.<br>
<br>
So for the curious, look here:<br>
<br>
  <a href="https://github.com/ozbenh/linux-ast/commits/bmc" rel="noreferrer" target="_blank">https://github.com/ozbenh/<wbr>linux-ast/commits/bmc</a><br>
<br>
This is also to make sure nobody else is duplicating the work.<br>
<br>
(This contains *no* code from any of the existing implementations I've<br>
seen floating around, which have some serious issues anyway, and not<br>
just coding style related :-) This was written from scratch from a<br>
blank slate, using other upstream UDC drivers as guides).<br>
<br>
Cheers,<br>
Ben.<br>
<br>
</blockquote></div><br></div>