<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/usb/gadget/serial.c, branch linux-3.9.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.9.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.9.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2013-01-21T18:52:43Z</updated>
<entry>
<title>usb: gadget: f_acm: convert to new function interface with backwards compatibility</title>
<updated>2013-01-21T18:52:43Z</updated>
<author>
<name>Sebastian Andrzej Siewior</name>
</author>
<published>2012-12-23T20:10:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ff47f59467388104d369a441aa6996d257343775'/>
<id>urn:sha1:ff47f59467388104d369a441aa6996d257343775</id>
<content type='text'>
This patch converts f_acm into a module which uses the new function
interface. It also converts one of its users that is g_serial to make
use of it. The other users of it (g_nokia for instance) are still using
the old include file system and should not notice the change at all. So
they can be converter later independently.

Signed-off-by: Sebastian Andrzej Siewior &lt;bigeasy@linutronix.de&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
<entry>
<title>usb: gadget: allocate &amp; giveback serial ports instead hard code them</title>
<updated>2013-01-21T18:52:43Z</updated>
<author>
<name>Sebastian Andrzej Siewior</name>
</author>
<published>2012-12-23T20:10:06Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=19b10a8828a6cdd5a4e7e37babd5084d35641f87'/>
<id>urn:sha1:19b10a8828a6cdd5a4e7e37babd5084d35641f87</id>
<content type='text'>
This patch removes gserial_setup() and gserial_cleanup() and adds
gserial_alloc_line() and gserial_free_line() to replace them.

The initial setup of u_serial happens now on module load time. A
maximum of four TTY ports can be requested which is the current limit.
In theory we could extend this limit, the hard limit is the number of
available endpoints.
alloc_tty_driver() is now called at module init time with the max
available ports. The per-line footprint here is on 32bit is 3 * size of
pointer + 60 bytes (for cdevs).
The remaining memory (struct gs_port) is allocated once a port is
requested.

With this change it is possible to load g_multi and g_serial at the same
time. GS0 receives the module that is loaded first, GS1 is received by
the next module and so on. With the configfs interface the port number
can be exported and the device node is more predictable. Nothing changes
for g_serial and friends as long as one module is used.

Signed-off-by: Sebastian Andrzej Siewior &lt;bigeasy@linutronix.de&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
<entry>
<title>usb: gadget: u_serial: convert into a module</title>
<updated>2013-01-21T18:52:42Z</updated>
<author>
<name>Sebastian Andrzej Siewior</name>
</author>
<published>2012-12-23T20:10:04Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3249ca22c088c286d6227d8fae9c85a43a8ce9f6'/>
<id>urn:sha1:3249ca22c088c286d6227d8fae9c85a43a8ce9f6</id>
<content type='text'>
Every user of u_serial has now to select the U_SERIAL symbol instead of
including the file.
There is one limition with this: ports and and gs_tty_driver are global
variables in u_serial. Since all users share them, there can be only one
user loaded at a time i.e. either g_serial or g_nokia.

Signed-off-by: Sebastian Andrzej Siewior &lt;bigeasy@linutronix.de&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
<entry>
<title>usb: gadget: g_serial: split the three possible functions into three bind functions</title>
<updated>2013-01-21T18:52:41Z</updated>
<author>
<name>Sebastian Andrzej Siewior</name>
</author>
<published>2012-12-23T20:10:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=48177cd83792d25a5bab7f887acc47c2c314810e'/>
<id>urn:sha1:48177cd83792d25a5bab7f887acc47c2c314810e</id>
<content type='text'>
This patch factors out the three possible functions into three possible
bind functions which are passed as an argument to usb_add_config(). This
will ease the step by step converting of the individual functions to the
new function registration method.

Signed-off-by: Sebastian Andrzej Siewior &lt;bigeasy@linutronix.de&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
<entry>
<title>usb: gadget serial: don't shift bcd version left by 16</title>
<updated>2012-09-10T17:04:20Z</updated>
<author>
<name>Sebastian Andrzej Siewior</name>
</author>
<published>2012-09-10T17:06:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5c4d46eb89fe99011a02048533857345d9e8b506'/>
<id>urn:sha1:5c4d46eb89fe99011a02048533857345d9e8b506</id>
<content type='text'>
Fengguang Wu reported:
|drivers/usb/gadget/serial.c:89:22: sparse: cast truncates bits from
|constant value (24000000 becomes 0)

I obviously let the version number shift away. Since the version is a
16bit number it can be applied as it.

Cc: fengguang.wu@intel.com
Signed-off-by: Sebastian Andrzej Siewior &lt;bigeasy@linutronix.de&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
<entry>
<title>usb: gadget: remove usb_gadget_controller_number()</title>
<updated>2012-09-10T13:43:24Z</updated>
<author>
<name>Sebastian Andrzej Siewior</name>
</author>
<published>2012-09-10T07:16:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ed9cbda63d45638b69ce62412e3a3c7b00644835'/>
<id>urn:sha1:ed9cbda63d45638b69ce62412e3a3c7b00644835</id>
<content type='text'>
The bcdDevice field is defined as
|Device release number in binary-coded decimal
in the USB 2.0 specification. We use this field to distinguish the UDCs
from each other. In theory this could be used on the host side to apply
certain quirks if the "special" UDC in combination with this gadget is
used. This hasn't been done as far as I am aware. In practice it would
be better to fix the UDC driver before shipping since a later release
might not need this quirk anymore.

There are some driver in tree (on the host side) which use the bcdDevice
field to figure out special workarounds for a given firmware revision.
This seems to make sense. Therefore this patch converts all gadgets
(except a few) to use the kernel version instead a random 2 or 3 plus
the UDC number. The few that don't report kernel's version are:
- webcam
  This one reports always a version 0x10 so allow it to do so in future.
- nokia
  This one reports always 0x211. The comment says that this gadget works
  only if the UDC supports altsettings so I added a check for this.
- serial
  This one reports 0x2400 + UDC number. Since the gadget version is 2.4
  this could make sense. Therefore bcdDevice is 0x2400 here.

I also remove various gadget_is_&lt;name&gt; macros which are unused. The
remaining few macros should be moved to feature / bug bitfield.

Acked-by: Michal Nazarewicz &lt;mina86@mina86.com&gt;
Signed-off-by: Sebastian Andrzej Siewior &lt;bigeasy@linutronix.de&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
<entry>
<title>usb: gadget: libcomposite: move composite.c into libcomposite</title>
<updated>2012-09-10T13:13:03Z</updated>
<author>
<name>Sebastian Andrzej Siewior</name>
</author>
<published>2012-09-06T18:11:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=721e2e91945bc2520d57d795dfe1b502ecec567c'/>
<id>urn:sha1:721e2e91945bc2520d57d795dfe1b502ecec567c</id>
<content type='text'>
This moves composite.c into libcomposite and updates all gadgets.
Finally!

Acked-by: Michal Nazarewicz &lt;mina86@mina86.com&gt;
Signed-off-by: Sebastian Andrzej Siewior &lt;bigeasy@linutronix.de&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
<entry>
<title>usb: gadget: Provide a default implementation of default manufacturer string</title>
<updated>2012-09-10T13:13:02Z</updated>
<author>
<name>Sebastian Andrzej Siewior</name>
</author>
<published>2012-09-10T13:01:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=cc2683c318a5bf192b75cd5c343b51009db0cf6c'/>
<id>urn:sha1:cc2683c318a5bf192b75cd5c343b51009db0cf6c</id>
<content type='text'>
Some gadgets provide custom entry here. Some may override it with an
etntry that is also created by composite if there was no value sumbitted
at all.
This patch removes all "custom manufacturer" strings which are the same
as these which are created by composite. Then it moves the creation of
the default manufacturer string to usb_composite_overwrite_options() in
case no command line argument has been used and the entry is still an
empty string.
By doing this we get rid of the global variable "composite_manufacturer"
in composite.

Acked-by: Michal Nazarewicz &lt;mina86@mina86.com&gt;
Signed-off-by: Sebastian Andrzej Siewior &lt;bigeasy@linutronix.de&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
<entry>
<title>usb: gadget: make sure each gadget is using same index for Product, Serial,…</title>
<updated>2012-09-10T13:13:00Z</updated>
<author>
<name>Sebastian Andrzej Siewior</name>
</author>
<published>2012-09-06T18:11:21Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=276e2e4f1f3e07a0ad891bf757dbcfd655ff5f91'/>
<id>urn:sha1:276e2e4f1f3e07a0ad891bf757dbcfd655ff5f91</id>
<content type='text'>
The index in usb_string array is defined by the gadget. The gadget can
choose which index entry it assigns for the serial number and which the
product name. The gadget has just to ensure that the descriptor contains
the proper string id which is assigned by composite.
If the composite layer knows the index of the "default" information
which will be overwritten by module parameters, it can be used later to
overwrite it.

Acked-by: Michal Nazarewicz &lt;mina86@mina86.com&gt;
Signed-off-by: Sebastian Andrzej Siewior &lt;bigeasy@linutronix.de&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
<entry>
<title>usb: gadget: push VID/PID/USB BCD module option into gadgets</title>
<updated>2012-09-10T13:12:59Z</updated>
<author>
<name>Sebastian Andrzej Siewior</name>
</author>
<published>2012-09-10T13:01:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7d16e8d3eb704f5f6eb5a271d5758b495634e8e6'/>
<id>urn:sha1:7d16e8d3eb704f5f6eb5a271d5758b495634e8e6</id>
<content type='text'>
This patch moves the module options idVendor, idProduct and bcdDevice
from composite.c into each gadgets. This ensures compatibility with
current gadgets and removes the global variable which brings me step
closer towards composite.c in libcomposite

Acked-by: Michal Nazarewicz &lt;mina86@mina86.com&gt;
Signed-off-by: Sebastian Andrzej Siewior &lt;bigeasy@linutronix.de&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
</feed>
