Re: [PATCH v4 00/11] Add USB OTG HNP and SRP support on Chipidea usb driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Mar 27, 2014 at 12:48:11PM +0800, Peter Chen wrote:
> On Wed, Mar 26, 2014 at 03:00:55PM +0800, Peter Chen wrote:
> > 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]
> > 
> 
> Move comments after reviewing your patchset:
> 
> - We have two ci_hdrc_otg_fsm_start called, one at core.c
> one at udc.c, if controller works at peripheral mode, it
> will be called two times, I suggested one at host.c and
> one at udc.c.

I will try to put this in host.c

> - At ci_otg_fsm_irq, the ci->is_otg doesn't need to be checked
> since the ci_otg_fsm_irq can only be called when ci->is_otg is 1.

This problem does not exist with new otg check applied.

> - Update TODO list at core.c, since the otg has supported with your
> patchset.

I will update.

> - Typo: otg_fsm.c, line 463. %s/regulater/regulator/

I will update.

> - Please add comment at host.c that the vbus has controlled by
> otg fsm for otg operation.

I will add comments for it.

> 
> The functions are tested for both OTG and non-OTG supported.
> 
> Peter
> 
> > 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
> > 
> > 
> 
> -- 
> 
> 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




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux