* [PATCH] phy: exynos-mipi-video: Simplify code by using regmap_update_bits() [not found] <CGME20180416161949epcas1p11b738f30a12bd2f62ad9422f7c4e7ed6@epcas1p1.samsung.com> @ 2018-04-16 16:19 ` Sylwester Nawrocki 2018-04-23 6:43 ` Kishon Vijay Abraham I 0 siblings, 1 reply; 2+ messages in thread From: Sylwester Nawrocki @ 2018-04-16 16:19 UTC (permalink / raw) To: kishon Cc: krzk, linux-samsung-soc, linux-kernel, m.szyprowski, b.zolnierkie, Sylwester Nawrocki There is no functional change, just replacing regmap_read()/modify/ regmap_write() with regmap_update_bits() function calls. Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com> --- drivers/phy/samsung/phy-exynos-mipi-video.c | 34 ++++++++++++----------------- 1 file changed, 14 insertions(+), 20 deletions(-) diff --git a/drivers/phy/samsung/phy-exynos-mipi-video.c b/drivers/phy/samsung/phy-exynos-mipi-video.c index c198886f80a3..00d89599c67d 100644 --- a/drivers/phy/samsung/phy-exynos-mipi-video.c +++ b/drivers/phy/samsung/phy-exynos-mipi-video.c @@ -231,33 +231,27 @@ struct exynos_mipi_video_phy { static int __set_phy_state(const struct exynos_mipi_phy_desc *data, struct exynos_mipi_video_phy *state, unsigned int on) { - u32 val; + struct regmap *enable_map = state->regmaps[data->enable_map]; + struct regmap *resetn_map = state->regmaps[data->resetn_map]; spin_lock(&state->slock); /* disable in PMU sysreg */ if (!on && data->coupled_phy_id >= 0 && - state->phys[data->coupled_phy_id].phy->power_count == 0) { - regmap_read(state->regmaps[data->enable_map], data->enable_reg, - &val); - val &= ~data->enable_val; - regmap_write(state->regmaps[data->enable_map], data->enable_reg, - val); - } - + state->phys[data->coupled_phy_id].phy->power_count == 0) + regmap_update_bits(enable_map, data->enable_reg, + data->enable_val, 0); /* PHY reset */ - regmap_read(state->regmaps[data->resetn_map], data->resetn_reg, &val); - val = on ? (val | data->resetn_val) : (val & ~data->resetn_val); - regmap_write(state->regmaps[data->resetn_map], data->resetn_reg, val); - + if (on) + regmap_update_bits(resetn_map, data->resetn_reg, + data->resetn_val, data->resetn_val); + else + regmap_update_bits(resetn_map, data->resetn_reg, + data->resetn_val, 0); /* enable in PMU sysreg */ - if (on) { - regmap_read(state->regmaps[data->enable_map], data->enable_reg, - &val); - val |= data->enable_val; - regmap_write(state->regmaps[data->enable_map], data->enable_reg, - val); - } + if (on) + regmap_update_bits(enable_map, data->enable_reg, + data->enable_val, data->enable_val); spin_unlock(&state->slock); -- 2.14.2 ^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] phy: exynos-mipi-video: Simplify code by using regmap_update_bits() 2018-04-16 16:19 ` [PATCH] phy: exynos-mipi-video: Simplify code by using regmap_update_bits() Sylwester Nawrocki @ 2018-04-23 6:43 ` Kishon Vijay Abraham I 0 siblings, 0 replies; 2+ messages in thread From: Kishon Vijay Abraham I @ 2018-04-23 6:43 UTC (permalink / raw) To: Sylwester Nawrocki Cc: krzk, linux-samsung-soc, linux-kernel, m.szyprowski, b.zolnierkie On Monday 16 April 2018 09:49 PM, Sylwester Nawrocki wrote: > There is no functional change, just replacing regmap_read()/modify/ > regmap_write() with regmap_update_bits() function calls. merged, thanks! -Kishon > > Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com> > --- > drivers/phy/samsung/phy-exynos-mipi-video.c | 34 ++++++++++++----------------- > 1 file changed, 14 insertions(+), 20 deletions(-) > > diff --git a/drivers/phy/samsung/phy-exynos-mipi-video.c b/drivers/phy/samsung/phy-exynos-mipi-video.c > index c198886f80a3..00d89599c67d 100644 > --- a/drivers/phy/samsung/phy-exynos-mipi-video.c > +++ b/drivers/phy/samsung/phy-exynos-mipi-video.c > @@ -231,33 +231,27 @@ struct exynos_mipi_video_phy { > static int __set_phy_state(const struct exynos_mipi_phy_desc *data, > struct exynos_mipi_video_phy *state, unsigned int on) > { > - u32 val; > + struct regmap *enable_map = state->regmaps[data->enable_map]; > + struct regmap *resetn_map = state->regmaps[data->resetn_map]; > > spin_lock(&state->slock); > > /* disable in PMU sysreg */ > if (!on && data->coupled_phy_id >= 0 && > - state->phys[data->coupled_phy_id].phy->power_count == 0) { > - regmap_read(state->regmaps[data->enable_map], data->enable_reg, > - &val); > - val &= ~data->enable_val; > - regmap_write(state->regmaps[data->enable_map], data->enable_reg, > - val); > - } > - > + state->phys[data->coupled_phy_id].phy->power_count == 0) > + regmap_update_bits(enable_map, data->enable_reg, > + data->enable_val, 0); > /* PHY reset */ > - regmap_read(state->regmaps[data->resetn_map], data->resetn_reg, &val); > - val = on ? (val | data->resetn_val) : (val & ~data->resetn_val); > - regmap_write(state->regmaps[data->resetn_map], data->resetn_reg, val); > - > + if (on) > + regmap_update_bits(resetn_map, data->resetn_reg, > + data->resetn_val, data->resetn_val); > + else > + regmap_update_bits(resetn_map, data->resetn_reg, > + data->resetn_val, 0); > /* enable in PMU sysreg */ > - if (on) { > - regmap_read(state->regmaps[data->enable_map], data->enable_reg, > - &val); > - val |= data->enable_val; > - regmap_write(state->regmaps[data->enable_map], data->enable_reg, > - val); > - } > + if (on) > + regmap_update_bits(enable_map, data->enable_reg, > + data->enable_val, data->enable_val); > > spin_unlock(&state->slock); > > ^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2018-04-23 6:43 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <CGME20180416161949epcas1p11b738f30a12bd2f62ad9422f7c4e7ed6@epcas1p1.samsung.com>
2018-04-16 16:19 ` [PATCH] phy: exynos-mipi-video: Simplify code by using regmap_update_bits() Sylwester Nawrocki
2018-04-23 6:43 ` Kishon Vijay Abraham I
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®