The main goal of this series is to make a small dent in cleaning up the way we deal with regulator loads. The idea is to add some extra functionality to the regulator "bulk" API so that consumers can specify the load using that. Though I didn't convert everyone over, I include patches in this series that show how the Qualcomm DSI driver is improved by this. I'd expect: * The first two patches are bugfixes found while converting the DSI driver over. Those could land any time. * The third patch ("drm/msm/dsi: Don't set a load before disabling a regulator") is a patch a sent the other day verbatim, included in this series because it's highly related. It could land any time. That's why I called this series "v2". * After that I have patches that add to the regulator API and then show a usage of those in the DSI driver. I'd expect that the two regulator patches could land in the regulator tree. The DSI patches would need to wait until the new regulator changes are available. Changes in v2: - ("Fix number of regulators for msm8996_dsi_cfg") new for v2. - ("Fix number of regulators for SDM660") new for v2. - ("Allow specifying an initial load w/ the bulk API") new for v2. - ("Use the new regulator bulk feature to specify the load") new for v2. - ("Allow drivers to define their init data as const") new for v2. - ("Take advantage of devm_regulator_bulk_get_const") new for v2. Douglas Anderson (7): drm/msm/dsi: Fix number of regulators for msm8996_dsi_cfg drm/msm/dsi: Fix number of regulators for SDM660 drm/msm/dsi: Don't set a load before disabling a regulator regulator: core: Allow specifying an initial load w/ the bulk API drm/msm/dsi: Use the new regulator bulk feature to specify the load regulator: core: Allow drivers to define their init data as const drm/msm/dsi: Take advantage of devm_regulator_bulk_get_const() drivers/gpu/drm/msm/dsi/dsi.h | 1 - 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 | 61 +------ drivers/gpu/drm/msm/dsi/phy/dsi_phy.c | 41 +---- drivers/gpu/drm/msm/dsi/phy/dsi_phy_10nm.c | 4 +- drivers/gpu/drm/msm/dsi/phy/dsi_phy_14nm.c | 6 +- drivers/gpu/drm/msm/dsi/phy/dsi_phy_20nm.c | 4 +- drivers/gpu/drm/msm/dsi/phy/dsi_phy_28nm.c | 6 +- .../gpu/drm/msm/dsi/phy/dsi_phy_28nm_8960.c | 2 +- drivers/gpu/drm/msm/dsi/phy/dsi_phy_7nm.c | 6 +- drivers/regulator/core.c | 20 +- drivers/regulator/devres.c | 28 +++ include/linux/regulator/consumer.h | 16 +- 14 files changed, 165 insertions(+), 205 deletions(-) -- 2.37.1.359.gd136c6c3e2-goog