Skip to contentSkip to conversation

keyspan: Remove duplicate device entries

PATCH In review Ben Collins 2 participants 3 messages Jun 27, 2008

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 keyspan: Remove duplicate device entries

The 28xb, as documented in comments, has the same ID's as the 28x. Remove the duplicated ID's from the device tables, and expand the comment to document this.

CC Greg Kroah-Hartman <[email protected]>
drivers/usb/serial/keyspan.h +2 -3
index 8d6ed02..cc48512 100644
@@ -222,7 +222,8 @@ struct ezusb_hex_record {
 
 /* Product IDs post-renumeration.  Note that the 28x and 28xb
    have the same id's post-renumeration but behave identically
-   so it's not an issue. */
+   so it's not an issue. As such, the 28xb is not listed in any
+   of the device tables. */
 #define	keyspan_usa18x_product_id		0x0112
 #define	keyspan_usa19_product_id		0x0107
 #define	keyspan_usa19qi_product_id		0x010c
@@ -566,7 +567,6 @@ static struct usb_device_id keyspan_ids_combined[] = {
 	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa28_product_id) },
 	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa28x_product_id) },
 	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa28xa_product_id) },
-	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa28xb_product_id) },
 	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa28xg_product_id) },
 	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa49w_product_id)},
 	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa49wlc_product_id)},
@@ -616,7 +616,6 @@ static struct usb_device_id keyspan_2port_ids[] = {
 	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa28_product_id) },
 	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa28x_product_id) },
 	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa28xa_product_id) },
-	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa28xb_product_id) },
 	{ USB_DEVICE(KEYSPAN_VENDOR_ID, keyspan_usa28xg_product_id) },
 	{ } /* Terminating entry */
 };
#1 lore raw
Quoted 3 lines · Ben Collins

The 28xb, as documented in comments, has the same ID's as the 28x. Remove the duplicated ID's from the device tables, and expand the comment to document this.

Was this causing a problem somehow? How did you notice this? Good catch.

I'll add it to my queue, thanks,

greg k-h

#2 lore raw
Quoted 7 lines · Greg KH
Quoted 3 lines · Ben Collins

The 28xb, as documented in comments, has the same ID's as the 28x. Remove the duplicated ID's from the device tables, and expand the comment to document this.

Was this causing a problem somehow? How did you notice this? Good catch.

Wasn't causing a problem, but I wrote a script awhile back that parses modules.alias looking for exact matches (doesn't do any fnmatch stuff, which might show more overlaps). Attached so you can see where this is coming from.

Mainly I wrote it to make sure we didn't have any module overlap (hostap/orinico kind of stuff), but it catches same module matching as well.

Quoted 1 line

I'll add it to my queue, thanks,

Np

#!/usr/bin/perl -w

my %map;

if (!defined($ARGV[0])) {
	print STDERR "Usage: check-aliases <modules.alias>\n";
	exit(1);
}

$aliases = $ARGV[0];

open(ALIASES, "< $aliases") or die "Could not open $aliases";

while (<ALIASES>) {
	chomp;
	my ($junk, $alias, $module) = split;

	if (defined($map{$alias})) {
		printf("%s %20s / %-20s : %s \n", ("$map{$alias}" eq "$module")
			? "INT" : "   ", $map{$alias}, $module, $alias);
	} else {
		$map{$alias} = $module;
	}
}

exit(0);