Re: [PATCH v5 0/6] reset: APIs to manage a list of resets

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

 





On 06/01/2017 10:21 PM, Philipp Zabel wrote:
A set of patches to allow consumers to get and de/assert or trigger
a number of resets at the same time. A patch on top of Vivek's original
API extension is added to hide the reset_control_array behind a struct
reset_control so that the consumer doesn't have care about the difference
between a singular reset control and reset control controlling an array
of resets, except when requesting the control.

This series also contains reset controls patches for dwc3-of-simple
and tegra pmc drivers.
A small patch is added in this series to correctly re-order the
resource handling in dwc3_of_simple_remove().

The series is tested on torvald's master branch the device tree
patches to enable usb on db820c.

Changes since v4:
  - Added a patch to hide reset control arrays behind struct reset_control
    and adapted the consumer patches. This could be merged with the reset
    array API patch if we think this is a good idea.

Hi Philipp,

I tested this series again on my db820c setup. Things work fine.
We can merge this series after fixing the 3/6 patch in this series.

Thanks

Hi Felipe,
If you are okay with changes in dwc3, can you kindly consider Ack'ing this
series. May be Philipp can pull the entire series after fixing.

Thanks
Vivek


Changes since v3:
  - Squashed of_reset_control_get_count() patch in the second patch that
    adds the reset control array APIs.
  - The error path after getting count through of_reset_control_get_count()
    now returns NULL pointer in case when 'optional' flag is true.
  - Added code in reset_control_array_assert() to deassert the
    already asserted resets in the error case.
  - Using of_reset_control_array_get_optional_exclusive() in dwc3 patch
    to request the reset control array.
  - Added a patch to fix the order in which resources are handled in
    dwc3_of_simple_remove() path.
  - Added tegra_powergate->reset to take care of single reset control
    passed from the client drivers.

Changes since v2:
  - Addressed comments to make APIs inline with gpiod API.
  - Moved number of reset controls in 'struct reset_control_array'
    so that the footprint is reduced.
  - of_reset_control_array_get() and devm_reset_control_array_get()
    now return pointer to the newly created reset control array.
  - Added comments to mention that the reset control array APIs don't
    guarantee any particular order when handling the reset controls.
  - Dropped 'name' from reset_control_array' since the interface is meant
    for a bunch of anonymous resets that can all be asserted or deasserted
    in arbitrary order.
  - Fixed returns for APIs reported by kbuild.
  - Fixed 'for' clause guards reported by kbuild.

Changes since v1:
  - Addressed comment for error handling in of_reset_control_get_count()
  - Added patch to manage reset controller array.
  - Rebased dwc3-of-simple changes based on the new set of APIs
    for reset control array.
  - Added a patch for soc/tegra/pmc driver to use the new set of
    reset control array APIs.

Philipp Zabel (2):
   reset: use kref for reference counting
   reset: hide reset control arrays behind struct reset_control

Vivek Gautam (4):
   reset: Add APIs to manage array of resets
   usb: dwc3: of-simple: Re-order resource handling in remove
   usb: dwc3: of-simple: Add support to get resets for the device
   soc/tegra: pmc: Use the new reset APIs to manage reset controllers

  drivers/reset/core.c              | 234 ++++++++++++++++++++++++++++++++++++--
  drivers/soc/tegra/pmc.c           |  82 ++++---------
  drivers/usb/dwc3/dwc3-of-simple.c |  29 ++++-
  include/linux/reset.h             |  73 ++++++++++++
  4 files changed, 344 insertions(+), 74 deletions(-)


--
The Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project

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



[Index of Archives]     [ARM Kernel]     [Linux ARM]     [Linux ARM MSM]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux