libftdi Archives

Subject: Re: block usb device from module assignment

From: Ibrahim Kamal <ika@xxxxxxxxxxxx>
To: libftdi@xxxxxxxxxxxxxxxxxxxxxxx
Date: Mon, 12 May 2014 17:18:37 +0200
By the way, here is what i do to solve this issue: http://www.ikalogic.com/ftdi-d2xx-linux-overcoming-big-problem/

Works like a charm for us...

Best regards,

IKALOGIC
ikalogic.com

Ibrahim Kamal
C.E.O. / P.D.G.
TEL: (+33) 555 358 028
GSM: (+33) 641 742 484
FAX: (+33) 972 125 830

IKALOGIC S.A.S. - 1 Avenue d'ESTER
87069 Limoges CEDEX FRANCE SIRET# 522 847 250



Le 12/05/2014 17:16, Ibrahim Kamal a écrit :
Using custom VID is good, but if like me, you have to deploy your products on windows too, you loose all driver certifications done by FTDI, hence you loose a big advantage of FTDI chips...

Best regards,

IKALOGIC
ikalogic.com

Ibrahim Kamal
C.E.O. / P.D.G.
TEL: (+33) 555 358 028
GSM: (+33) 641 742 484
FAX: (+33) 972 125 830

IKALOGIC S.A.S. - 1 Avenue d'ESTER
87069 Limoges CEDEX FRANCE SIRET# 522 847 250



Le 12/05/2014 17:12, Ryan Tennill a écrit :
What about using a different VID/PID combination? FTDI will allocate a block of 8 PID upon request if you want to use their VID: http://www.ftdichip.com/Support/Knowledgebase/index.html?basicdetails.htm.

You should be able to use the FTDI eeprom tool to set it to whatever you want and prevent the automatic attachment of the ftdi_sio module. It also breaks automatic driver install on Windows if that is an issue.

My first thought was the simple program to detach but it could be annoying to do that every time you reconnect the hardware.

Ryan


Distant Focus Corporation
Champaign, IL 61822
217-351-2655 x126
http://distantfocus.com/projects/



On Sun, 2014-05-11 at 11:08 +0800, Xiaofan Chen wrote:
On Sun, May 11, 2014 at 5:33 AM, gobo <gobo770@xxxxxxxxx> wrote:
> can anyone offer suggestions on how to stop the assignment of a
> specific device to a module?
>
> i've tried to write a udev rule, but it seems OPTIONS+="ignore_device"
> is no longer valid.
>

Other than using udev rules, you can write a simple program
to detach/attach kernel driver using libusb (Linux only).

http://libusb.sourceforge.net/api-1.0/group__dev.html

int libusb_kernel_driver_active (libusb_device_handle *dev, int
interface_number)
 Determine if a kernel driver is active on an interface.

int libusb_detach_kernel_driver (libusb_device_handle *dev, int
interface_number)
 Detach a kernel driver from an interface.

int libusb_attach_kernel_driver (libusb_device_handle *dev, int
interface_number)
 Re-attach an interface's kernel driver, which was previously detached
using libusb_detach_kernel_driver().

int libusb_set_auto_detach_kernel_driver (libusb_device_handle *dev, int enable)
 Enable/disable libusb's automatic kernel driver detachment.




libftdi - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to libftdi+unsubscribe@xxxxxxxxxxxxxxxxxxxxxxx





libftdi - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to libftdi+unsubscribe@xxxxxxxxxxxxxxxxxxxxxxx





libftdi - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to libftdi+unsubscribe@xxxxxxxxxxxxxxxxxxxxxxx


Current Thread