私は、カスタムPIDを備えたFTDI USB-Serialデバイスを取得して、自動的に(または手動で)ttyUSB%nに接続しようとしていますが、あまり成功していません。デバイスの通常のVID / PIDは0403/6001です。この方法でプログラムすると、完全に機能し、プラグイン時にttyUSB0に自動的に接続されます。新しいPIDを尊重するように再コンパイルされたドライバーでも、カスタム1でプログラムするとttyUSB0は表示されませんが、ftdi_sioデバイスとして認識されますドライバーをロードします。
ヘッダーとソースにPIDを追加しました:
// in ftdi_sio_ids.h
#define FTDI_CUSTOM_PID 0xABCD // not the actual pid
// then in ftdi_sio.c
static struct usb_device_id id_table_combined [] = {
// devices....
{ USB_DEVICE(FTDI_VID, FTDI_CUSTOM_PID) },
// ....
カーネル全体を再コンパイルし、デバイスを再フラッシュしました。デバイスを接続すると、次のようになります。
usb 1-1: new full-speed USB device number 2 using at91_ohci
usbcore: registered new interface driver usbserial
usbserial: USB Serial Driver core
USB Serial support registered for FTDI USB Serial Device
usbcore: registered new interface driver ftdi_sio
ftdi_sio: v1.6.0:USB FTDI Serial Converters Driver
lsusbは正しいカスタムVID / PIDを表示します。ドライバーはftdi_sioを使用することになっていることを認識しているようですが、変更されていないPIDの場合のようにttyUSB0に接続しません。ここで私が間違っていることについての提案はありますか?