ChangeSet 1.1722.83.15, 2004/06/03 16:50:29-07:00, [EMAIL PROTECTED]
[PATCH] USB: kyocera 7135 patch
Here is a patch based on 2.6.7-rc2 that makes the Kyocera 7135 work.
The Kyocera appears to have the same setup as the Trio. Its endpoints
are laid out like this:
> >>>type address
> >>>usb bulk out: 0x01
> >>>usb interrupt in: 0x82
> >>>usb bulk out: 0x03
> >>>usb bulk in: 0x84
The last two are the ones used for the syncing communication.
So the patch adds the ids for the kyocera and makes the treo_attach
function handle the kyocera too. I also changed the comment; it appears
there was an error in the original comment about the treo:
Joe Nardelli wrote:
> Actually, the comment isn't quite right for Treos either (oops). It
> should read:
>
> ...
> 1st bulk in endpoint to communicate with the 2nd bulk out endpoint
> ...
Signed-off-by: Greg Kroah-Hartman <[EMAIL PROTECTED]>
drivers/usb/serial/visor.c | 18 +++++++++++-------
drivers/usb/serial/visor.h | 3 +++
2 files changed, 14 insertions(+), 7 deletions(-)
diff -Nru a/drivers/usb/serial/visor.c b/drivers/usb/serial/visor.c
--- a/drivers/usb/serial/visor.c Fri Jun 18 11:04:28 2004
+++ b/drivers/usb/serial/visor.c Fri Jun 18 11:04:28 2004
@@ -247,6 +247,8 @@
.driver_info = (kernel_ulong_t)&palm_os_4_probe },
{ USB_DEVICE(ACEECA_VENDOR_ID, ACEECA_MEZ1000_ID),
.driver_info = (kernel_ulong_t)&palm_os_4_probe },
+ { USB_DEVICE(KYOCERA_VENDOR_ID, KYOCERA_7135_ID),
+ .driver_info = (kernel_ulong_t)&palm_os_4_probe },
{ }, /* optional parameter entry */
{ } /* Terminating entry */
};
@@ -290,6 +292,7 @@
{ USB_DEVICE(SAMSUNG_VENDOR_ID, SAMSUNG_SPH_I500_ID) },
{ USB_DEVICE(GARMIN_VENDOR_ID, GARMIN_IQUE_3600_ID) },
{ USB_DEVICE(ACEECA_VENDOR_ID, ACEECA_MEZ1000_ID) },
+ { USB_DEVICE(KYOCERA_VENDOR_ID, KYOCERA_7135_ID) },
{ }, /* optional parameter entry */
{ } /* Terminating entry */
};
@@ -795,7 +798,7 @@
dev_err(dev, "%s - error %d getting connection info\n",
__FUNCTION__, retval);
else
- usb_serial_debug_data (__FILE__, __FUNCTION__, 0x14, transfer_buffer);
+ usb_serial_debug_data (__FILE__, __FUNCTION__, retval,
transfer_buffer);
kfree (transfer_buffer);
return 0;
@@ -881,18 +884,19 @@
/* Only do this endpoint hack for the Handspring devices with
* interrupt in endpoints, which for now are the Treo devices. */
- if ((serial->dev->descriptor.idVendor != HANDSPRING_VENDOR_ID) ||
+ if (!((serial->dev->descriptor.idVendor == HANDSPRING_VENDOR_ID) ||
+ (serial->dev->descriptor.idVendor == KYOCERA_VENDOR_ID)) ||
(serial->num_interrupt_in == 0))
return 0;
dbg("%s", __FUNCTION__);
/*
- * It appears that Treos want to use the 1st interrupt endpoint to
- * communicate with the 2nd bulk out endpoint, so let's swap the 1st
- * and 2nd bulk in and interrupt endpoints. Note that swapping the
- * bulk out endpoints would break lots of apps that want to communicate
- * on the second port.
+ * It appears that Treos and Kyoceras want to use the
+ * 1st bulk in endpoint to communicate with the 2nd bulk out endpoint,
+ * so let's swap the 1st and 2nd bulk in and interrupt endpoints.
+ * Note that swapping the bulk out endpoints would break lots of
+ * apps that want to communicate on the second port.
*/
#define COPY_PORT(dest, src) \
dest->read_urb = src->read_urb; \
diff -Nru a/drivers/usb/serial/visor.h b/drivers/usb/serial/visor.h
--- a/drivers/usb/serial/visor.h Fri Jun 18 11:04:28 2004
+++ b/drivers/usb/serial/visor.h Fri Jun 18 11:04:28 2004
@@ -55,6 +55,9 @@
#define ACEECA_VENDOR_ID 0x4766
#define ACEECA_MEZ1000_ID 0x0001
+#define KYOCERA_VENDOR_ID 0x0C88
+#define KYOCERA_7135_ID 0x0021
+
/****************************************************************************
* Handspring Visor Vendor specific request codes (bRequest values)
* A big thank you to Handspring for providing the following information.
-------------------------------------------------------
This SF.Net email is sponsored by The 2004 JavaOne(SM) Conference
Learn from the experts at JavaOne(SM), Sun's Worldwide Java Developer
Conference, June 28 - July 1 at the Moscone Center in San Francisco, CA
REGISTER AND SAVE! http://java.sun.com/javaone/sf Priority Code NWMGYKND
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel