Re: [PATCH v3 5/6] drm/msm/dsi: Take advantage of devm_regulator_bulk_get_const()

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

 



On 03/08/2022 01:37, Douglas Anderson wrote:
As of the commit 1de452a0edda ("regulator: core: Allow drivers to
define their init data as const") we no longer need to do copying of
regulator bulk data from initdata to something dynamic. Let's take
advantage of that.

In addition to saving some code, this also moves us to using
ARRAY_SIZE() to specify how many regulators we have which is less
error prone.

This gets rid of some layers of wrappers which makes it obvious that
we can get rid of an extra error print.
devm_regulator_bulk_get_const() prints errors for you so you don't
need an extra layer of printing.

In all cases here I have preserved the old settings without any
investigation about whether the loads being set are sensible. In the
cases of some of the PHYs if several PHYs in the same file used
exactly the same settings I had them point to the same data structure.

NOTE: Though I haven't done the math, this is likely an overall
savings in terms of "static const" data. We previously always
allocated space for 8 supplies. Each of these supplies took up 36
bytes of data (32 for name, 4 for an int).

Signed-off-by: Douglas Anderson <dianders@xxxxxxxxxxxx>

Ah, so to array conversion is already done. That's great.

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx>


---

Changes in v3:
- Do all the PHYs too.

It would have been easier if DSI and DSI PHY were split to separate patches.

- Get rid of error print after devm_regulator_bulk_get_const().
- Just directly call the bulk commands; get rid of the wrapper.
- Update commit message to point at the git hash of the regulator change.

Changes in v2:
- ("Take advantage of devm_regulator_bulk_get_const") new for v2.

  drivers/gpu/drm/msm/dsi/dsi.h                 |  12 --
  drivers/gpu/drm/msm/dsi/dsi_cfg.c             | 172 +++++++++---------
  drivers/gpu/drm/msm/dsi/dsi_cfg.h             |   3 +-
  drivers/gpu/drm/msm/dsi/dsi_host.c            |  42 ++---
  drivers/gpu/drm/msm/dsi/phy/dsi_phy.c         |  37 +---
  drivers/gpu/drm/msm/dsi/phy/dsi_phy.h         |   5 +-
  drivers/gpu/drm/msm/dsi/phy/dsi_phy_10nm.c    |  20 +-
  drivers/gpu/drm/msm/dsi/phy/dsi_phy_14nm.c    |  32 ++--
  drivers/gpu/drm/msm/dsi/phy/dsi_phy_20nm.c    |  14 +-
  drivers/gpu/drm/msm/dsi/phy/dsi_phy_28nm.c    |  28 +--
  .../gpu/drm/msm/dsi/phy/dsi_phy_28nm_8960.c   |  12 +-
  drivers/gpu/drm/msm/dsi/phy/dsi_phy_7nm.c     |  32 ++--
  12 files changed, 167 insertions(+), 242 deletions(-)

--
With best wishes
Dmitry



[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux