HNP polling is a mechanism which allows the OTG device currently acting
as host to determine when the other attached OTG device wishes to take
the host role. When an OTG host, which supports HNP, is connected to an
OTG peripheral which also supports HNP it shall poll the peripheral
regularly to determine whether it requires a role-swap and grant this at
the earliest opportunity.
This patchset adds OTG HNP polling support, and enable for chipidea usb
otg fsm driver, more patches for pass OTG certification will come later.

changes for v6:
- Remove patch of disable irq while stop host role.
- Split B_AIDL_BDIS timer patch to be 2 patches(9/10 and 10/10).
- Add Peter's ack for patch 3, 7, 8/10.
 
changes for v5:
- Instead of use stack memory, use kmalloc to allocate memory for host
  request flag one byte buffer(DMA read), and add host_req_flag pointer
  in struct otg_fsm for reference to that flag buffer.
- Add one patch to disable irq while stop host role(7/10).
- Add one patch to fix B_AIDL_BDIS timing issue(10/10).

changes for v4:
- Add OTG HNP capable check for connected device before sending HNP polling
  in patch 3/8.
- Add comment to explain HNP test update in chipidea.txt in patch 8/8.
- Fix some typo.
- Add Peter's Ack in patch 1,2,4,5,6,7/8 of the series.

Li Jun (10):
  usb: gadget: add hnp_polling_support and host_request_flag in
    usb_gadget
  usb: add OTG status selector definition for HNP polling
  usb: common: otg-fsm: add HNP polling support
  usb: chipidea: udc: bypass otg status selector handling to gadget
    driver
  usb: gadget: composite: handle otg status selector request from OTG
    host
  usb: chipidea: otg: set host_request_flag for gadget
  usb: chipidea: otg: enable HNP polling support for gadget and host
  Documentation: usb: chipidea: Update test procedure for HNP polling
  usb: otg-fsm: add B_AIDL_BDIS timer
  usb: chipidea: otg: add A idle to B disconnect timer

 Documentation/usb/chipidea.txt   |  9 +++--
 drivers/usb/chipidea/otg_fsm.c   | 29 ++++++++++++--
 drivers/usb/chipidea/otg_fsm.h   |  2 +
 drivers/usb/chipidea/udc.c       |  3 +-
 drivers/usb/common/usb-otg-fsm.c | 87 ++++++++++++++++++++++++++++++++++++++++
 drivers/usb/gadget/composite.c   | 25 ++++++++----
 include/linux/usb/gadget.h       |  6 +++
 include/linux/usb/otg-fsm.h      | 15 +++++++
 include/uapi/linux/usb/ch9.h     |  1 +
 9 files changed, 161 insertions(+), 16 deletions(-)

-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to