Kai Heng Feng <kai.heng.feng@xxxxxxxxxxxxx> wrote:
Matthew Wilcox <willy@xxxxxxxxxxxxx> wrote:
On Tue, Mar 13, 2018 at 03:26:19PM +0800, Kai-Heng Feng wrote:
+ usbcore.quirks=
+ [USB] A list of quirks entries to supplement or
+ override the built-in usb core quirk list. List
+ entries are separated by commas. Each entry has
+ the form VID:PID:Flags where VID and PID are Vendor
+ and Product ID values (4-digit hex numbers) and
+ Flags is a set of characters, each corresponding
+ to a common usb core quirk flag as follows:
This doesn't really tell me that the specified quirks will be XORed with
the built-in quirks. Maybe something like ...
[USB] A list of quirk entries to augment the
built-in usb core quirk list. List entries are
separated by commas. Each entry has the form
VendorID:ProductID:Flags. The IDs are 4-digit hex
numbers and Flags is a set of letters. Each letter
will change the built-in quirk; setting it if it is
clear and clearing it if it is set. The letters
have the following meanings:
Thanks, will update the description to specify the XOR behavior.
+ /* Each entry consists of VID:PID:flags */
+ field = strsep(&p, ":");
+ if (!field)
+ break;
+
+ if (kstrtou16(field, 16, &vid))
+ break;
+
+ field = strsep(&p, ":");
+ if (!field)
+ break;
+
+ if (kstrtou16(field, 16, &pid))
+ break;
Is there a reason to not use sscanf here like hid-quirks.c does?
Actually I use sscanf in previous patch version. Using kstrto* isn't
needed anymore, I'll use sscanf in next version.
Okay, I remember why I don't use sscanf, mainly because the quirk_param in
hid-quirks.c is charp instead of char, so using sscanf is trivia for it.
We use plain char* here because of module_param_cb(), so I guess using
sscanf doesn't make much sense here. strsep() isn't the most elegant
solution but it does its job well.
I'll update the description and send a new patch.
Kai-Heng
Kai-Heng
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html