• Xiaochen Shen's avatar
    USB: Add Intel Langwell USB Device Controller driver · 5be19a9d
    Xiaochen Shen authored
    Intel Langwell USB Device Controller is a High-Speed USB OTG device
    controller in Intel Moorestown platform. It can work in OTG device mode
    with Intel Langwell USB OTG transceiver driver as well as device-only
    mode. The number of programmable endpoints is different through
    controller revision.
    
    NOTE:
    This patch is the first version Intel Langwell USB OTG device controller
    driver. The bug fixing is on going for some hardware and software
    issues.  Intel Langwell USB OTG transceiver driver and EHCI driver
    patches will be submitted later.
    
    Supported features:
     - USB OTG protocol support with Intel Langwell USB OTG transceiver
       driver (turn on CONFIG_USB_LANGWELL_OTG)
     - Support control, bulk, interrupt and isochronous endpoints
       (isochronous not tested)
     - PCI D0/D3 power management support
     - Link Power Management (LPM) support
    
    Tested gadget drivers:
     - g_file_storage
     - g_ether
     - g_zero
    
    The passed tests:
     - g_file_storage: USBCV Chapter 9 tests
     - g_file_storage: USBCV MSC tests
     - g_file_storage: from/to host files copying
     - g_ether: ping, ftp and scp files from/to host
     - Hotplug, with and without hubs
    
    Known issues:
     - g_ether: failed part of USBCV chap9 tests
     - LPM support not fully tested
    
    TODO:
     - g_ether: pass all USBCV chap9 tests
     - g_zero: pass usbtest tests
     - Stress tests on different gadget drivers
     - On-chip private SRAM caching support
    Signed-off-by: default avatarXiaochen Shen <xiaochen.shen@intel.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
    5be19a9d
langwell_udc.c 80.3 KB