Re: [PATCHv2 1/2] USB: gadget: mass/file storage: set serial number

From: MichaÅ Nazarewicz
Date: Thu Jul 08 2010 - 16:26:00 EST


On Thu, 08 Jul 2010 22:20:11 +0200, David Brownell <david-b@xxxxxxxxxxx> wrote:

> Can it be made to do so only when the gadget
> hasn't been provided with one already? Serial
> number module options are standard parts of the
> composite gadget framework...

I don't see a way for the gadget to know whether user gave
the iSerialNumber
parameter (other then reading the iSerialNumber variable
but I consider that ugly).

Uglier still is the current patch overriding
that explicitly-given parameter.

How does it override explicitly-given parameter? I don't follow...

All it does is add a iSerialNumber. Without this patch the
explicitly-given parameter won't even work:

if (cdev->desc.iSerialNumber && iSerialNumber)
string_override(composite->strings,
cdev->desc.iSerialNumber, iSerialNumber);

Composite checks if iSerialNumber is allocated and overrides the
string only if it is. Without my patch, the string ID is never
allocated.

Also, the overriding is performed *after* composite device's bind
callback is called so there is no way for the bind callback to
override explicitly-given parameter.

--
Best regards, _ _
| Humble Liege of Serenely Enlightened Majesty of o' \,=./ `o
| Computer Science, MichaÅ "mina86" Nazarewicz (o o)
+----[mina86*mina86.com]---[mina86*jabber.org]----ooO--(_)--Ooo--
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/