Linux-USB Archive on lore.kernel.org
 help / color / Atom feed
From: "Andrew P. Lentvorski" <bsder@allcaps.org>
To: Alan Stern <stern@rowland.harvard.edu>
Cc: linux-usb@vger.kernel.org
Subject: Re: Unable to set "iInterface" in usb gadget via configfs
Date: Wed, 15 Jan 2020 18:23:47 -0800
Message-ID: <0453184e-353e-2a98-4f7a-c97b9dddf57a@allcaps.org> (raw)
In-Reply-To: <Pine.LNX.4.44L0.2001151011520.1788-100000@iolanthe.rowland.org>

On 1/15/20 7:14 AM, Alan Stern wrote:

> I don't think any earlier messages in this thread made it through the 
> mailing list, but this one definitely did.

Yay!  I also saw this one in the archives so I was hopeful.

>>> I've been trying to set "iInterface" in my usb gadget to a specific string, but I simply can't find a way to make configfs accept this.
>>>
>>> When I set my gadget up on my Beaglebone Black (uname -a: Linux beaglebone 4.14.108-ti-r113 #1 SMP PREEMPT Wed Jul 31 00:01:10 UTC 2019 armv7l GNU/Linux).
>>>
>>> I get (output from lsusb):
>>>
>>> iInterface 5 HID Interface
>>>
>>>
>>> But I want it to be something like:
>>>
>>> iInterface 4 LPC-LINK2 CMSIS-DAP V5.224
>>>
>>>
>>> This seems to be wired up as a fixed value in f_hid.c and doesn't seem to have a corresponding way to actually change it via configfs.
>>>
>>>
>>> #define CT_FUNC_HID_IDX 0
>>>
>>> static struct usb_string ct_func_string_defs[] = {
>>>         [CT_FUNC_HID_IDX].s     = "HID Interface",
>>>         {},                     /* end of list */
>>> };
> 
> Then maybe you need to fix f_hid.c.  Or maybe configfs isn't meant to
> allow the user to specify these string index values (I don't know any
> of the configfs details).

That's kind of my problem in that I was hoping to get someone far more
knowledegable than me to at least flag these before attacking it:

A) I didn't overlook something stupid and this really is hardwired with
no way to change it (either in configfs or ... some other? kernel mechanism)

B) This is an *actual* bug.

C) This is an actual bug *that should be fixed* and isn't that way
intentionally for some Linux reason.

D) This is actually the right place to fix it.  Obviously there is going
to be something at the configfs level, too, and I have *zero* idea where
to start looking for that.

Thanks,
-a


  reply index

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-14 23:58 Andrew P. Lentvorski
2020-01-15 15:14 ` Alan Stern
2020-01-16  2:23   ` Andrew P. Lentvorski [this message]
2020-01-16 13:02     ` Felipe Balbi
2020-01-17  0:39       ` Andrew P. Lentvorski
2020-01-17  9:25         ` Felipe Balbi
2020-01-18  0:58           ` Andrew P. Lentvorski
2020-01-19 16:45             ` Felipe Balbi

Reply instructions:

You may reply publically to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=0453184e-353e-2a98-4f7a-c97b9dddf57a@allcaps.org \
    --to=bsder@allcaps.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=stern@rowland.harvard.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Linux-USB Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-usb/0 linux-usb/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-usb linux-usb/ https://lore.kernel.org/linux-usb \
		linux-usb@vger.kernel.org
	public-inbox-index linux-usb

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-usb


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git