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 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.
- 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.
- Update TODO list at core.c, since the otg has supported with your
patchset.
- Typo: otg_fsm.c, line 463. %s/regulater/regulator/
- Please add comment at host.c that the vbus has controlled by
otg fsm for otg operation.

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