usb 序號
2011/01/26 01:23
瀏覽886
迴響1
推薦0
引用0
http://tbofcai.blogspot.com/2010/06/usbchipgenius.html
取得此晶片相對應的量產工具。
ChipGenius
http://tw.network01.net/modules/mydownloads/singlefile.php?cid=7&lid=33
smi mass production
SM32110量產工具 量產工具下载.rar
以下截錄自http://www.csie.nctu.edu.tw/~mdchang/lkn/lkn.html
==========================================Begin
USB Devices
與 PCI devices 類似,差別只是在改找 USB bus ID,也就是 VID (vendor ID) 與 PID (product ID)。
1.
利用 lsusb 找出 USB 裝置的 VID/PID。
可觀察 USB 裝置插入/移除後,那個 device 出現又消失。lsusb 得到的資訊如下:
$ /usr/sbin/lsusb | grep -v 0000:0000
Bus 004 Device 003: ID 157e:300d
其中 ID 後的兩組數字分別就是 USB VID/PID。grep -v 0000:0000 是排除 VID/PID 皆為 0x0000 的 USB host controller。
2.
在 .../drivers/ 下搜尋 VIP/PID,並且要同時出現在 struct usb_device_id 的定義裏。
USB IDs 並沒有如 PCI IDs 有個檔案定義 symbols,所以要直接以 VID/PID 的數值來尋找。如同 PCI,USB drivers 也必須告訴 kernel 支援那些硬體,這些資訊就存在 struct usb_device_id 這個資料結構內。如:
static struct usb_device_id usb_ids[] = {
/* ZD1211 */
{ USB_DEVICE(0x0ace, 0x1211), .driver_info = DEVICE_ZD1211 },
{ USB_DEVICE(0x07b8, 0x6001), .driver_info = DEVICE_ZD1211 },
/* ZD1211B */
{ USB_DEVICE(0x157e, 0x300d), .driver_info = DEVICE_ZD1211B },
/* "Driverless" devices that need ejecting */
{ USB_DEVICE(0x0ace, 0x2011), .driver_info = DEVICE_INSTALLER },
{}
};
3.
老方法:在 source tree 下的所有 Makefile 搜尋包含 struct usb_device_id 的檔案名稱,如:
$ find -type f -name Makefile | xargs grep -l zd_usb | xargs cat
obj-$(CONFIG_ZD1211RW) += zd1211rw.o
zd1211rw-objs := zd_chip.o zd_ieee80211.o \
zd_mac.o zd_netdev.o \
zd_rf_al2230.o zd_rf_rf2959.o \
zd_rf.o zd_usb.o zd_util.o
ifeq ($(CONFIG_ZD1211RW_DEBUG),y)
EXTRA_CFLAGS += -DDEBUG
endif
由上得知此 USB device 需要啟動 CONFIG_ZD1211RW。
==========================================End.
取得此晶片相對應的量產工具。
ChipGenius
http://tw.network01.net/modules/mydownloads/singlefile.php?cid=7&lid=33
smi mass production
SM32110量產工具 量產工具下载.rar
以下截錄自http://www.csie.nctu.edu.tw/~mdchang/lkn/lkn.html
==========================================Begin
USB Devices
與 PCI devices 類似,差別只是在改找 USB bus ID,也就是 VID (vendor ID) 與 PID (product ID)。
1.
利用 lsusb 找出 USB 裝置的 VID/PID。
可觀察 USB 裝置插入/移除後,那個 device 出現又消失。lsusb 得到的資訊如下:
$ /usr/sbin/lsusb | grep -v 0000:0000
Bus 004 Device 003: ID 157e:300d
其中 ID 後的兩組數字分別就是 USB VID/PID。grep -v 0000:0000 是排除 VID/PID 皆為 0x0000 的 USB host controller。
2.
在 .../drivers/ 下搜尋 VIP/PID,並且要同時出現在 struct usb_device_id 的定義裏。
USB IDs 並沒有如 PCI IDs 有個檔案定義 symbols,所以要直接以 VID/PID 的數值來尋找。如同 PCI,USB drivers 也必須告訴 kernel 支援那些硬體,這些資訊就存在 struct usb_device_id 這個資料結構內。如:
static struct usb_device_id usb_ids[] = {
/* ZD1211 */
{ USB_DEVICE(0x0ace, 0x1211), .driver_info = DEVICE_ZD1211 },
{ USB_DEVICE(0x07b8, 0x6001), .driver_info = DEVICE_ZD1211 },
/* ZD1211B */
{ USB_DEVICE(0x157e, 0x300d), .driver_info = DEVICE_ZD1211B },
/* "Driverless" devices that need ejecting */
{ USB_DEVICE(0x0ace, 0x2011), .driver_info = DEVICE_INSTALLER },
{}
};
3.
老方法:在 source tree 下的所有 Makefile 搜尋包含 struct usb_device_id 的檔案名稱,如:
$ find -type f -name Makefile | xargs grep -l zd_usb | xargs cat
obj-$(CONFIG_ZD1211RW) += zd1211rw.o
zd1211rw-objs := zd_chip.o zd_ieee80211.o \
zd_mac.o zd_netdev.o \
zd_rf_al2230.o zd_rf_rf2959.o \
zd_rf.o zd_usb.o zd_util.o
ifeq ($(CONFIG_ZD1211RW_DEBUG),y)
EXTRA_CFLAGS += -DDEBUG
endif
由上得知此 USB device 需要啟動 CONFIG_ZD1211RW。
==========================================End.
限會員,要發表迴響,請先登入

