zoukankan      html  css  js  c++  java
  • usbip install

    # README for usbip-utils
    #
    # Copyright (C) 2011 matt mooney <mfm@muteddisk.com>
    #               2005-2008 Takahiro Hirofuchi


    [Requirements]
        - USB/IP device drivers
        Found in the staging directory of the Linux kernel.

        - sysfsutils >= 2.0.0
        sysfsutils library

        - libwrap0-dev
        tcp wrapper library

        - gcc >= 4.0

        - libglib2.0-dev >= 2.6.0

        - libtool, automake >= 1.9, autoconf >= 2.5.0, pkg-config


    [Install]
        0. Generate configuration scripts.
        $ ./autogen.sh

        1. Compile & install the userspace utilities.
        $ ./configure [--with-tcp-wrappers=no] [--with-usbids-dir=<dir>]
        $ make install

        2. Compile & install USB/IP drivers.


    [Usage]
        server:# (Physically attach your USB device.)

        server:# insmod usbip-core.ko
        server:# insmod usbip-host.ko

        server:# usbipd -D
        - Start usbip daemon.

        server:# usbip list -l
        - List driver assignments for USB devices.

        server:# usbip bind --busid 1-2
        - Bind usbip-host.ko to the device with busid 1-2.
        - The USB device 1-2 is now exportable to other hosts!
        - Use `usbip unbind --busid 1-2' to stop exporting the device.

        client:# insmod usbip-core.ko
        client:# insmod vhci-hcd.ko

        client:# usbip list --remote <host>
        - List exported USB devices on the <host>.

        client:# usbip attach --host <host> --busid 1-2
        - Connect the remote USB device.

        client:# usbip port
        - Show virtual port status.

        client:# usbip detach --port <port>
        - Detach the USB device.


    [Example]
    ---------------------------
        SERVER SIDE
    ---------------------------
    Physically attach your USB devices to this host.

        trois:# insmod path/to/usbip-core.ko
        trois:# insmod path/to/usbip-host.ko
        trois:# usbipd -D

    In another terminal, let's look up what USB devices are physically
    attached to this host.

        trois:# usbip list -l
        Local USB devices
        =================
         - busid 1-1 (05a9:a511)
             1-1:1.0 -> ov511

         - busid 3-2 (0711:0902)
             3-2:1.0 -> none

         - busid 3-3.1 (08bb:2702)
             3-3.1:1.0 -> snd-usb-audio
             3-3.1:1.1 -> snd-usb-audio

         - busid 3-3.2 (04bb:0206)
             3-3.2:1.0 -> usb-storage

         - busid 3-3 (0409:0058)
             3-3:1.0 -> hub

         - busid 4-1 (046d:08b2)
             4-1:1.0 -> none
             4-1:1.1 -> none
             4-1:1.2 -> none

         - busid 5-2 (058f:9254)
             5-2:1.0 -> hub

    A USB storage device of busid 3-3.2 is now bound to the usb-storage
    driver. To export this device, we first mark the device as
    "exportable"; the device is bound to the usbip-host driver. Please
    remember you can not export a USB hub.

    Mark the device of busid 3-3.2 as exportable:

        trois:# usbip --debug bind --busid 3-3.2
        ...
        usbip debug: usbip_bind.c:162:[unbind_other] 3-3.2:1.0 -> usb-storage
        ...
        bind device on busid 3-3.2: complete

        trois:# usbip list -l
        Local USB devices
        =================
        ...

         - busid 3-3.2 (04bb:0206)
             3-3.2:1.0 -> usbip-host
        ...

    ---------------------------
        CLIENT SIDE
    ---------------------------
    First, let's list available remote devices that are marked as
    exportable on the host.

        deux:# insmod path/to/usbip-core.ko
        deux:# insmod path/to/vhci-hcd.ko

        deux:# usbip list --remote 10.0.0.3
        Exportable USB devices
        ======================
         - 10.0.0.3
            1-1: Prolific Technology, Inc. : unknown product (067b:3507)
               : /sys/devices/pci0000:00/0000:00:1f.2/usb1/1-1
               : (Defined at Interface level) / unknown subclass / unknown protocol (00/00/00)
               :  0 - Mass Storage / SCSI / Bulk (Zip) (08/06/50)

        1-2.2.1: Apple Computer, Inc. : unknown product (05ac:0203)
               : /sys/devices/pci0000:00/0000:00:1f.2/usb1/1-2/1-2.2/1-2.2.1
               : (Defined at Interface level) / unknown subclass / unknown protocol (00/00/00)
               :  0 - Human Interface Devices / Boot Interface Subclass / Keyboard (03/01/01)

        1-2.2.3: OmniVision Technologies, Inc. : OV511+ WebCam (05a9:a511)
               : /sys/devices/pci0000:00/0000:00:1f.2/usb1/1-2/1-2.2/1-2.2.3
               : (Defined at Interface level) / unknown subclass / unknown protocol (00/00/00)
               :  0 - Vendor Specific Class / unknown subclass / unknown protocol (ff/00/00)

            3-1: Logitech, Inc. : QuickCam Pro 4000 (046d:08b2)
               : /sys/devices/pci0000:00/0000:00:1e.0/0000:02:0a.0/usb3/3-1
               : (Defined at Interface level) / unknown subclass / unknown protocol (00/00/00)
               :  0 - Data / unknown subclass / unknown protocol (0a/ff/00)
               :  1 - Audio / Control Device / unknown protocol (01/01/00)
               :  2 - Audio / Streaming / unknown protocol (01/02/00)

    Attach a remote USB device:

        deux:# usbip attach --host 10.0.0.3 --busid 1-1
        port 0 attached

    Show the devices attached to this client:

        deux:# usbip port
        Port 00: <Port in Use> at Full Speed(12Mbps)
           Prolific Technology, Inc. : unknown product (067b:3507)
           6-1 -> usbip://10.0.0.3:3240/1-1  (remote bus/dev 001/004)
           6-1:1.0 used by usb-storage
                  /sys/class/scsi_device/0:0:0:0/device
                  /sys/class/scsi_host/host0/device
                  /sys/block/sda/device

    Detach the imported device:

        deux:# usbip detach --port 0
        port 0 detached


    [Checklist]
        - See 'Debug Tips' on the project wiki.
        - http://usbip.wiki.sourceforge.net/how-to-debug-usbip
        - usbip-host.ko must be bound to the target device.
        - See /proc/bus/usb/devices and find "Driver=..." lines of the device.
        - Shutdown firewall.
        - usbip now uses TCP port 3240.
        - Disable SELinux.
        - If possible, compile your kernel with CONFIG_USB_DEBUG flag and try again.
        - Check the kernel and daemon messages.


    [Contact]
        Mailing List: linux-usb@vger.kernel.org

  • 相关阅读:
    LPC1768基本输入输出GPIO使用
    LPC1768IAP(详解,有上位机)
    STM32_IAP详解(有代码,有上位机)
    ucos2.86的任务调度漏洞
    ucos任务优先级从64到256,任务就绪表的改变
    ucos互斥信号量解决优先级反转问题
    ucos信号量集源码分析
    ucos内存管理原理详解
    ucos队列的实现--源码分析
    ucos调度器详解
  • 原文地址:https://www.cnblogs.com/ligao/p/6296732.html
Copyright © 2011-2022 走看看