diff options
author | Pascal Rigaux <pixel@mandriva.com> | 2001-09-13 13:41:11 +0000 |
---|---|---|
committer | Pascal Rigaux <pixel@mandriva.com> | 2001-09-13 13:41:11 +0000 |
commit | a25e48640b4d11cdb4d83cb878af082a00df59b9 (patch) | |
tree | 30efb75a523539baee9d0df3af92549f3c45f2a6 /generate_usbclass.pl | |
parent | 30b8e72afa22a7ff5a72370e4dc0cfbe0a329ada (diff) | |
download | ldetect-a25e48640b4d11cdb4d83cb878af082a00df59b9.tar ldetect-a25e48640b4d11cdb4d83cb878af082a00df59b9.tar.gz ldetect-a25e48640b4d11cdb4d83cb878af082a00df59b9.tar.bz2 ldetect-a25e48640b4d11cdb4d83cb878af082a00df59b9.tar.xz ldetect-a25e48640b4d11cdb4d83cb878af082a00df59b9.zip |
use the sub-category for usb probing
Diffstat (limited to 'generate_usbclass.pl')
-rwxr-xr-x | generate_usbclass.pl | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/generate_usbclass.pl b/generate_usbclass.pl index 63206c8..50fe13b 100755 --- a/generate_usbclass.pl +++ b/generate_usbclass.pl @@ -3,7 +3,7 @@ print q(/* This auto-generated from <usb.h>, don't modify! */ struct { - unsigned short id; + unsigned long id; const char *name; } usbclasses[] = { ); @@ -11,9 +11,12 @@ struct { while (<>) { chomp; if (/^C\s+(\d+)\s+(.*)/) { - ($cat, $descr) = ($1, $2); + ($cat, $cat_descr) = ($1, $2); + } elsif (/^\t(\d+)\s+(.*)/ && defined $cat) { + ($sub, $sub_descr) = ($1, $2); + $sub =~ /^\d\d$/ or die "bad line $.: sub category number badly formatted ($_)\n"; } elsif (/^\t\t(\d+)\s+(.*)/ && defined $cat) { - print qq(/* $. */ { 0x$cat$1, "$descr|$2" },\n); + print qq(/* $. */ { 0x$cat$sub$1, "$cat_descr|$sub_descr|$2" },\n); } elsif (/^\S/) { undef $cat; } @@ -24,7 +27,7 @@ print ' int nb_usbclasses = sizeof(usbclasses) / sizeof(*usbclasses); -extern const char *usb_class2text(unsigned short class) { +extern const char *usb_class2text(unsigned long class) { int i; for (i = 0; i < nb_usbclasses; i++) if (usbclasses[i].id == class) return usbclasses[i].name; |