lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Sat, 15 Aug 2009 10:19:16 +0530
From:	Anand Gadiyar <gadiyar@...il.com>
To:	Ondrej Zary <linux@...nbow-software.org>
Cc:	gregkh@...e.de, Alan Cox <alan@...rguk.ukuu.org.uk>,
	linux-usb@...r.kernel.org,
	linux-kernel <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v2] [resend] ark3116: add IrDA support (for Gembird 
	UIR-22)

On Tue, Aug 4, 2009 at 4:03 PM, Ondrej Zary<linux@...nbow-software.org> wrote:
> Add IrDA support to ark3116 driver. This makes Gembird UIR-22 USB to
> IrDA adapter work (vendor ID 0x18ec, device ID 0x3118). This adapter
> contains ARK3116T USB serial chip and an IrDA transceiver, thus
> a command like "irattach /dev/ttyUSB0 -s" is needed.
>
> All magic numbers were captured using usbsnoop from windows driver
> that came with the device.
>
>
> Signed-off-by: Ondrej Zary <linux@...nbow-software.org>

Hi,

Oliver Neukum had sent out a "looking for testers" mail for
autosuspend for this driver [1].

I had a USB-IR convertor with this chip inside but could not get it to
work before to test this. Will try and find the hardware and test your
patch as well as his.

Since you have this device as well, maybe you could help test autosuspend too.

Thanks,
Anand

[1] <http://lists.openwall.net/linux-kernel/2009/02/06/409>



>
> --- linux-2.6.30-orig/drivers/usb/serial/ark3116.c      2009-07-19 19:21:54.000000000 +0200
> +++ linux/drivers/usb/serial/ark3116.c  2009-08-01 22:04:48.000000000 +0200
> @@ -31,10 +31,20 @@
>
>  static struct usb_device_id id_table [] = {
>        { USB_DEVICE(0x6547, 0x0232) },
> +       { USB_DEVICE(0x18ec, 0x3118) },         /* USB to IrDA adapter */
>        { },
>  };
>  MODULE_DEVICE_TABLE(usb, id_table);
>
> +static int is_irda(struct usb_serial *serial)
> +{
> +       struct usb_device *dev = serial->dev;
> +       if (le16_to_cpu(dev->descriptor.idVendor) == 0x18ec &&
> +                       le16_to_cpu(dev->descriptor.idProduct) == 0x3118)
> +               return 1;
> +       return 0;
> +}
> +
>  struct ark3116_private {
>        spinlock_t lock;
>        u8 termios_initialized;
> @@ -100,11 +110,21 @@
>                goto cleanup;
>        }
>
> +       if (is_irda(serial))
> +               dbg("IrDA mode");
> +
>        /* 3 */
>        ARK3116_SND(serial, 3, 0xFE, 0x40, 0x0008, 0x0002);
>        ARK3116_SND(serial, 4, 0xFE, 0x40, 0x0008, 0x0001);
>        ARK3116_SND(serial, 5, 0xFE, 0x40, 0x0000, 0x0008);
> -       ARK3116_SND(serial, 6, 0xFE, 0x40, 0x0000, 0x000B);
> +       ARK3116_SND(serial, 6, 0xFE, 0x40, is_irda(serial) ? 0x0001 : 0x0000,
> +                   0x000B);
> +
> +       if (is_irda(serial)) {
> +               ARK3116_SND(serial, 1001, 0xFE, 0x40, 0x0000, 0x000C);
> +               ARK3116_SND(serial, 1002, 0xFE, 0x40, 0x0041, 0x000D);
> +               ARK3116_SND(serial, 1003, 0xFE, 0x40, 0x0001, 0x000A);
> +       }
>
>        /* <-- seq7 */
>        ARK3116_RCV(serial,  7, 0xFE, 0xC0, 0x0000, 0x0003, 0x00, buf);
> @@ -141,6 +161,8 @@
>        ARK3116_SND(serial, 147, 0xFE, 0x40, 0x0083, 0x0003);
>        ARK3116_SND(serial, 148, 0xFE, 0x40, 0x0038, 0x0000);
>        ARK3116_SND(serial, 149, 0xFE, 0x40, 0x0001, 0x0001);
> +       if (is_irda(serial))
> +               ARK3116_SND(serial, 1004, 0xFE, 0x40, 0x0000, 0x0009);
>        ARK3116_SND(serial, 150, 0xFE, 0x40, 0x0003, 0x0003);
>        ARK3116_RCV(serial, 151, 0xFE, 0xC0, 0x0000, 0x0004, 0x03, buf);
>        ARK3116_SND(serial, 152, 0xFE, 0x40, 0x0000, 0x0003);
>
>
>
> --
> Ondrej Zary
> --
> To unsubscribe from this list: send the line "unsubscribe linux-usb" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ