[U-Boot] [PATCH v6 00/11] usb: Extend ehci and ohci generic drivers

patrice.chotard at st.com patrice.chotard at st.com
Mon Jun 5 09:42:00 UTC 2017


From: Patrice Chotard <patrice.chotard at st.com>

This series improves generic ehci and ohci drivers by addition of :
	_ error path during probe (clocks, resets and phy release)
	_ .remove callback
	_ add generic PHY framework for both generic ehci and ohci drivers
	_ add RESET and CLOCK framework for generic ohci driver

To implement these features, some new methods are needed in RESET and
CLOCKS frameworks :
	_ add reset_request(), reset_count() and reset_assert_all() methods in
	  RESET framework
	_ add clk_count() and add clk_disable_all() methods in CLOCK framework

v6:	_ replace clk_get_by_index() by dev_read_phandle_with_args() in
	  clk_count() in patch 4
	_  add Reviewed-by Simon Glass for patch 2 and 5

v5:	_ rebase on top of dm/master requested by Simon Glass in order to use
	  livetree update
	_ replace fdtdec_parse_phandle_with_args() by dev_read_phandle_with_args() in patch 2

v4:	_ add clk_disable_all() and reset_assert_all() methods into CLOCK and
	  RESET framework as suggested by Simon Glass and Marek Vasut
	_ add reset_count() and clk_count() methods which returns respectively the 
	  number of resets and clocks declared into "resets" and "clocks" DT properties.
	  This allows to allocate the right amount of memory to keep resets and clocks
	  reference
	_ update the memory allocation for deasserted resets and enabled
	  clocks reference list. Replace lists by arrays.
	
v3:     _ keep enabled clocks and deasserted resets reference in list in order to 
	  disable clock or assert resets in error path or in .remove callback
	_ add missing commit message
	_ use struct generic_ehci * instead of struct udevice * as parameter for
	  ehci_release_resets() and ehci_release_clocks()
	_ test return value on generic_phy_get_by_index() and
	  generic_phy_init()
	_ split previous patch 5 in 3 independant patch for CLOCK, RESET and PHY support

v2:     _ add needed reset_request() in RESET framework
	_ add error path in ehci/ohci-generic to disable clocks and to assert
	resets
	_ add .remove callback with clocks, resets and phy release
	_ split the replacement of printf() by error() in an independant patch

Patrice Chotard (11):
  reset: add reset_request()
  reset: add reset_count()
  reset: add reset_assert_all()
  clk: add clk_count()
  clk: add clk_disable_all()
  usb: host: ehci-generic: replace printf() by error()
  usb: host: ehci-generic: add error path and .remove callback
  usb: host: ehci-generic: add generic PHY support
  usb: host: ohci-generic: add CLOCK support
  usb: host: ohci-generic: add RESET support
  usb: host: ohci-generic: add generic PHY support

 drivers/clk/clk-uclass.c        |  35 ++++++++++
 drivers/reset/reset-uclass.c    |  44 +++++++++++++
 drivers/usb/host/ehci-generic.c | 142 +++++++++++++++++++++++++++++++++-------
 drivers/usb/host/ohci-generic.c | 121 +++++++++++++++++++++++++++++++++-
 include/clk.h                   |  22 +++++++
 include/reset.h                 |  37 +++++++++++
 6 files changed, 376 insertions(+), 25 deletions(-)

-- 
1.9.1



More information about the U-Boot mailing list