On Wed, Mar 19, 2014 at 06:01:33PM +0800, Li Jun wrote: > From: Li Jun <b47624@xxxxxxxxxxxxx> > > This patchset adds USB OTG HNP and SRP support on chipidea usb driver, > existing OTG port role swtich function by ID pin status kept unchanged, > based on that, if select CONFIG_USB_OTG_FSM, OTG HNP and SRP will be > supported. > > Reference to: > "On-The-Go and Embedded Host Supplement to the USB Revision 2.0 Specification July 27, 2012 > Revision 2.0 version 1.1a" > Please fix below build warning using default configuration (CONFIG_USB_OTG is not enabled) /home/b29397/work/projects/upstream/usb/usb/drivers/usb/chipidea/otg_fsm.h:95:12: warning: 'ci_hdrc_otg_fsm_init' defined but not used [-Wunused-function] /home/b29397/work/projects/upstream/usb/usb/drivers/usb/chipidea/otg_fsm.h:115:13: warning: 'ci_hdrc_otg_fsm_remove' defined but not used [-Wunused-function] CC drivers/usb/chipidea/udc.o /home/b29397/work/projects/upstream/usb/usb/drivers/usb/chipidea/otg_fsm.h:110:13: warning: 'ci_hdrc_otg_fsm_start' defined but not used [-Wunused-function] CC fs/ubifs/debug.o CC drivers/usb/chipidea/host.o /home/b29397/work/projects/upstream/usb/usb/drivers/usb/chipidea/otg_fsm.h:95:12: warning: 'ci_hdrc_otg_fsm_init' defined but not used [-Wunused-function] /home/b29397/work/projects/upstream/usb/usb/drivers/usb/chipidea/otg_fsm.h:115:13: warning: 'ci_hdrc_otg_fsm_remove' defined but not used [-Wunused-function] Peter > Changes since v3: > - Move out 2 patches from this patchset, as which are not directly related to > otg fsm. > - Add a new file chipidea.txt under Documentation/usb/ to show how to test > OTG HNP and SRP. > - Directly embed struct otg_fsm into ci_hdrc instead of pointer of otg_fsm. > - Remove flag check in ci_otg_del_timer(). > - Remove ADP related code and comments since ADP is not supported by chip. > - Start OTG fsm before request_irq. > - For B-device, do not do OTG fsm transitions when gadget driver > is not registered, and start OTG fsm in register gadget driver. > - Directly call ci_otg_fsm_work() in ci_hdrc_otg_fsm_start(). > - Enable data pulse when a_wait_vfall timer time out. > - Update a_wait_vrise time out function. > - UPdate comments of OTG time macro definitions in otg_fsm.h according to > OTG and EH 2.0. > - Some typo correction and comments format changes. > > Changes since v2: > - Add ABI document for sysfs input files description: > Documentation/ABI/testing/sysfs-platform-chipidea-usb-otg > - Add a debug file for show some USB registers value. > - Split host driver change to be 2 patches, one for otg_port number init; > the other one for vbus control change. > - Export interrupt enable and status read functions from udc driver. > - Only enable AVV irq in otg fsm init. > - Remove duplicated USBSTS bits definitions. > - Add HowTo demo role switch with 2 Freescale i.MX6Q sabre SD boards > in cover letter. > - typo correction. > > Changes since v1: > - Move out HNP polling patch from this series, which will be a seperated patchset > followed this one > - Change fsm timers global variables to be a structure embeded in ci_hdrc, > to make multiple OTG instances can exist in one system > - Change some otg fsm functions to be static > - Re-split timer init patch to avoid a later patch changing a previous one > in the same series > - Change timer structure memory allocation to be devm_kzalloc > - Update some format alignment and spelling errors > > Li Jun (11): > usb: chipidea: usb OTG fsm initialization. > usb: chipidea: host: vbus control change for OTG HNP. > usb: chipidea: host: init otg port number. > usb: chipidea: udc: driver update for OTG HNP. > usb: chipidea: add OTG fsm operation functions implemenation. > usb: chipidea: OTG fsm timers initialization. > usb: chipidea: OTG HNP and SRP fsm implementation. > usb: chipidea: add sys inputs for OTG fsm input. > usb: chipidea: debug: add debug file for OTG variables > Documentation: ABI: usb: chipidea USB OTG HNP sysfs > Documentation: usb: add chipidea.txt for how to demo usb OTG HNP and > SRP > > .../ABI/testing/sysfs-platform-chipidea-usb-otg | 56 ++ > Documentation/usb/chipidea.txt | 69 ++ > drivers/usb/chipidea/Makefile | 1 + > drivers/usb/chipidea/bits.h | 11 +- > drivers/usb/chipidea/ci.h | 3 + > drivers/usb/chipidea/core.c | 10 +- > drivers/usb/chipidea/debug.c | 84 ++ > drivers/usb/chipidea/host.c | 13 +- > drivers/usb/chipidea/host.h | 9 + > drivers/usb/chipidea/otg.c | 17 +- > drivers/usb/chipidea/otg_fsm.c | 852 ++++++++++++++++++++ > drivers/usb/chipidea/otg_fsm.h | 122 +++ > drivers/usb/chipidea/udc.c | 17 +- > 13 files changed, 1255 insertions(+), 9 deletions(-) > create mode 100644 Documentation/ABI/testing/sysfs-platform-chipidea-usb-otg > create mode 100644 Documentation/usb/chipidea.txt > create mode 100644 drivers/usb/chipidea/otg_fsm.c > create mode 100644 drivers/usb/chipidea/otg_fsm.h > > -- > 1.7.9.5 > > -- Best Regards, Peter Chen -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html