Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 647da406 authored by simon's avatar simon Committed by David S. Miller
Browse files

usb: plusb: Add support for PL-25A1



This patch adds support for the PL-25A1 by adding the appropriate
USB ID's. This chip is used in the Belkin 'Windows Easy Transfer'
Cables.

Signed-off-by: default avatarSimon Wood <simon@mungewell.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 6e4d2d9e
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -258,7 +258,7 @@ config USB_NET_NET1080
	  optionally with LEDs that indicate traffic

config USB_NET_PLUSB
	tristate "Prolific PL-2301/2302 based cables"
	tristate "Prolific PL-2301/2302/25A1 based cables"
	# if the handshake/init/reset problems, from original 'plusb',
	# are ever resolved ... then remove "experimental"
	depends on USB_USBNET && EXPERIMENTAL
+20 −2
Original line number Diff line number Diff line
@@ -45,6 +45,14 @@
 * seems to get wedged under load.  Prolific docs are weak, and
 * don't identify differences between PL2301 and PL2302, much less
 * anything to explain the different PL2302 versions observed.
 *
 * NOTE:  pl2501 has several modes, including pl2301 and pl2302
 * compatibility.   Some docs suggest the difference between 2301
 * and 2302 is only to make MS-Windows use a different driver...
 *
 * pl25a1 glue based on patch from Tony Gibbs.  Prolific "docs" on
 * this chip are as usual incomplete about what control messages
 * are supported.
 */

/*
@@ -95,7 +103,7 @@ static int pl_reset(struct usbnet *dev)
}

static const struct driver_info	prolific_info = {
	.description =	"Prolific PL-2301/PL-2302",
	.description =	"Prolific PL-2301/PL-2302/PL-25A1",
	.flags =	FLAG_POINTTOPOINT | FLAG_NO_SETINT,
		/* some PL-2302 versions seem to fail usb_set_interface() */
	.reset =	pl_reset,
@@ -111,6 +119,7 @@ static const struct driver_info prolific_info = {

static const struct usb_device_id	products [] = {

/* full speed cables */
{
	USB_DEVICE(0x067b, 0x0000),	// PL-2301
	.driver_info =	(unsigned long) &prolific_info,
@@ -119,6 +128,15 @@ static const struct usb_device_id products [] = {
	.driver_info =	(unsigned long) &prolific_info,
},

/* high speed cables */
{
	USB_DEVICE(0x067b, 0x25a1),     /* PL-25A1, no eeprom */
	.driver_info =  (unsigned long) &prolific_info,
}, {
	USB_DEVICE(0x050d, 0x258a),     /* Belkin F5U258/F5U279 (PL-25A1) */
	.driver_info =  (unsigned long) &prolific_info,
},

	{ },		// END
};
MODULE_DEVICE_TABLE(usb, products);
@@ -145,5 +163,5 @@ static void __exit plusb_exit(void)
module_exit(plusb_exit);

MODULE_AUTHOR("David Brownell");
MODULE_DESCRIPTION("Prolific PL-2301/2302 USB Host to Host Link Driver");
MODULE_DESCRIPTION("Prolific PL-2301/2302/25A1 USB Host to Host Link Driver");
MODULE_LICENSE("GPL");