* [PATCH 0/3] drm/sun4i: More cleanups and fixes
@ 2017-04-25 15:25 Chen-Yu Tsai
2017-04-25 15:25 ` [PATCH 1/3] drm/sun4i: Drop unused tcon pointer Chen-Yu Tsai
` (3 more replies)
0 siblings, 4 replies; 5+ messages in thread
From: Chen-Yu Tsai @ 2017-04-25 15:25 UTC (permalink / raw)
To: linux-arm-kernel
Hi Maxime,
The subject is probably getting old. Here are a few more cleanups.
Patch 1 should have been part of the patch
drm/sun4i: Use lists to track registered display backends and TCONs
from my multiple pipeline support series. Please squash it in if you can.
Patch 2 just moves setting the TCON clocks back inside the TCON driver.
Patch 3 cleans up a DRM driver debug message.
Regards
ChenYu
Chen-Yu Tsai (3):
drm/sun4i: Drop unused tcon pointer
drm/sun4i: Set TCON clock inside sun4i_tconX_mode_set
drm/sun4i: backend: Clarify sun4i_backend_layer_enable debug message
drivers/gpu/drm/sun4i/sun4i_backend.c | 3 ++-
drivers/gpu/drm/sun4i/sun4i_drv.h | 1 -
drivers/gpu/drm/sun4i/sun4i_rgb.c | 2 --
drivers/gpu/drm/sun4i/sun4i_tcon.c | 6 ++++++
drivers/gpu/drm/sun4i/sun4i_tv.c | 2 --
5 files changed, 8 insertions(+), 6 deletions(-)
--
2.11.0
^ permalink raw reply [flat|nested] 5+ messages in thread* [PATCH 1/3] drm/sun4i: Drop unused tcon pointer 2017-04-25 15:25 [PATCH 0/3] drm/sun4i: More cleanups and fixes Chen-Yu Tsai @ 2017-04-25 15:25 ` Chen-Yu Tsai 2017-04-25 15:25 ` [PATCH 2/3] drm/sun4i: Set TCON clock inside sun4i_tconX_mode_set Chen-Yu Tsai ` (2 subsequent siblings) 3 siblings, 0 replies; 5+ messages in thread From: Chen-Yu Tsai @ 2017-04-25 15:25 UTC (permalink / raw) To: linux-arm-kernel The sun4i DRM driver now uses 2 lists to track backends and tcons. During the switch, the original tcon pointer was not removed. As it is now unused, remove it, so other new drivers can't accidentally use it. Signed-off-by: Chen-Yu Tsai <wens@csie.org> --- As mentioned in the cover letter, please squash this into the patch drm/sun4i: Use lists to track registered display backends and TCONs --- drivers/gpu/drm/sun4i/sun4i_drv.h | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/gpu/drm/sun4i/sun4i_drv.h b/drivers/gpu/drm/sun4i/sun4i_drv.h index 835bdb5cc0c2..250c29017ef5 100644 --- a/drivers/gpu/drm/sun4i/sun4i_drv.h +++ b/drivers/gpu/drm/sun4i/sun4i_drv.h @@ -20,7 +20,6 @@ struct sun4i_drv { struct list_head backend_list; struct list_head tcon_list; - struct sun4i_tcon *tcon; struct drm_fbdev_cma *fbdev; }; -- 2.11.0 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 2/3] drm/sun4i: Set TCON clock inside sun4i_tconX_mode_set 2017-04-25 15:25 [PATCH 0/3] drm/sun4i: More cleanups and fixes Chen-Yu Tsai 2017-04-25 15:25 ` [PATCH 1/3] drm/sun4i: Drop unused tcon pointer Chen-Yu Tsai @ 2017-04-25 15:25 ` Chen-Yu Tsai 2017-04-25 15:25 ` [PATCH 3/3] drm/sun4i: backend: Clarify sun4i_backend_layer_enable debug message Chen-Yu Tsai 2017-04-26 6:21 ` [PATCH 0/3] drm/sun4i: More cleanups and fixes Maxime Ripard 3 siblings, 0 replies; 5+ messages in thread From: Chen-Yu Tsai @ 2017-04-25 15:25 UTC (permalink / raw) To: linux-arm-kernel Currently we are configuring the TCON's dot clock or special clock directly from the encoder mode_set functions. Since we already provide mode_set helper functions for the TCON's 2 channels, we can set the respective clock from those helpers, and reduce the exposure of the TCON's internals. Signed-off-by: Chen-Yu Tsai <wens@csie.org> --- drivers/gpu/drm/sun4i/sun4i_rgb.c | 2 -- drivers/gpu/drm/sun4i/sun4i_tcon.c | 6 ++++++ drivers/gpu/drm/sun4i/sun4i_tv.c | 2 -- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/sun4i/sun4i_rgb.c b/drivers/gpu/drm/sun4i/sun4i_rgb.c index 1147451eb993..51ece4c39d7e 100644 --- a/drivers/gpu/drm/sun4i/sun4i_rgb.c +++ b/drivers/gpu/drm/sun4i/sun4i_rgb.c @@ -175,8 +175,6 @@ static void sun4i_rgb_encoder_mode_set(struct drm_encoder *encoder, sun4i_tcon0_mode_set(tcon, mode); - clk_set_rate(tcon->dclk, mode->crtc_clock * 1000); - /* FIXME: This seems to be board specific */ clk_set_phase(tcon->dclk, 120); } diff --git a/drivers/gpu/drm/sun4i/sun4i_tcon.c b/drivers/gpu/drm/sun4i/sun4i_tcon.c index 8301389c411d..29fd829aa54c 100644 --- a/drivers/gpu/drm/sun4i/sun4i_tcon.c +++ b/drivers/gpu/drm/sun4i/sun4i_tcon.c @@ -131,6 +131,9 @@ void sun4i_tcon0_mode_set(struct sun4i_tcon *tcon, u8 clk_delay; u32 val = 0; + /* Configure the dot clock */ + clk_set_rate(tcon->dclk, mode->crtc_clock * 1000); + /* Adjust clock delay */ clk_delay = sun4i_tcon_get_clk_delay(mode, 0); regmap_update_bits(tcon->regs, SUN4I_TCON0_CTL_REG, @@ -206,6 +209,9 @@ void sun4i_tcon1_mode_set(struct sun4i_tcon *tcon, WARN_ON(!tcon->quirks->has_channel_1); + /* Configure the dot clock */ + clk_set_rate(tcon->sclk1, mode->crtc_clock * 1000); + /* Adjust clock delay */ clk_delay = sun4i_tcon_get_clk_delay(mode, 1); regmap_update_bits(tcon->regs, SUN4I_TCON1_CTL_REG, diff --git a/drivers/gpu/drm/sun4i/sun4i_tv.c b/drivers/gpu/drm/sun4i/sun4i_tv.c index 49c49431a053..542da220818b 100644 --- a/drivers/gpu/drm/sun4i/sun4i_tv.c +++ b/drivers/gpu/drm/sun4i/sun4i_tv.c @@ -486,8 +486,6 @@ static void sun4i_tv_mode_set(struct drm_encoder *encoder, SUN4I_TVE_RESYNC_FIELD : 0)); regmap_write(tv->regs, SUN4I_TVE_SLAVE_REG, 0); - - clk_set_rate(tcon->sclk1, mode->crtc_clock * 1000); } static struct drm_encoder_helper_funcs sun4i_tv_helper_funcs = { -- 2.11.0 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 3/3] drm/sun4i: backend: Clarify sun4i_backend_layer_enable debug message 2017-04-25 15:25 [PATCH 0/3] drm/sun4i: More cleanups and fixes Chen-Yu Tsai 2017-04-25 15:25 ` [PATCH 1/3] drm/sun4i: Drop unused tcon pointer Chen-Yu Tsai 2017-04-25 15:25 ` [PATCH 2/3] drm/sun4i: Set TCON clock inside sun4i_tconX_mode_set Chen-Yu Tsai @ 2017-04-25 15:25 ` Chen-Yu Tsai 2017-04-26 6:21 ` [PATCH 0/3] drm/sun4i: More cleanups and fixes Maxime Ripard 3 siblings, 0 replies; 5+ messages in thread From: Chen-Yu Tsai @ 2017-04-25 15:25 UTC (permalink / raw) To: linux-arm-kernel sun4i_backend_layer_enable can be called to enable or disable a layer. However the debug message always says "Enable", which is confusing. This patch makes the debug message vary according to the enable state. Signed-off-by: Chen-Yu Tsai <wens@csie.org> --- drivers/gpu/drm/sun4i/sun4i_backend.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/sun4i/sun4i_backend.c b/drivers/gpu/drm/sun4i/sun4i_backend.c index e9eca057ff35..e53107418add 100644 --- a/drivers/gpu/drm/sun4i/sun4i_backend.c +++ b/drivers/gpu/drm/sun4i/sun4i_backend.c @@ -73,7 +73,8 @@ void sun4i_backend_layer_enable(struct sun4i_backend *backend, { u32 val; - DRM_DEBUG_DRIVER("Enabling layer %d\n", layer); + DRM_DEBUG_DRIVER("%sabling layer %d\n", enable ? "En" : "Dis", + layer); if (enable) val = SUN4I_BACKEND_MODCTL_LAY_EN(layer); -- 2.11.0 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 0/3] drm/sun4i: More cleanups and fixes 2017-04-25 15:25 [PATCH 0/3] drm/sun4i: More cleanups and fixes Chen-Yu Tsai ` (2 preceding siblings ...) 2017-04-25 15:25 ` [PATCH 3/3] drm/sun4i: backend: Clarify sun4i_backend_layer_enable debug message Chen-Yu Tsai @ 2017-04-26 6:21 ` Maxime Ripard 3 siblings, 0 replies; 5+ messages in thread From: Maxime Ripard @ 2017-04-26 6:21 UTC (permalink / raw) To: linux-arm-kernel On Tue, Apr 25, 2017 at 11:25:02PM +0800, Chen-Yu Tsai wrote: > Hi Maxime, > > The subject is probably getting old. Here are a few more cleanups. > > Patch 1 should have been part of the patch > > drm/sun4i: Use lists to track registered display backends and TCONs > > from my multiple pipeline support series. Please squash it in if you can. > > Patch 2 just moves setting the TCON clocks back inside the TCON driver. > > Patch 3 cleans up a DRM driver debug message. Applied all, thanks! Maxime -- Maxime Ripard, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 801 bytes Desc: not available URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20170426/c32dc853/attachment.sig> ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2017-04-26 6:21 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2017-04-25 15:25 [PATCH 0/3] drm/sun4i: More cleanups and fixes Chen-Yu Tsai 2017-04-25 15:25 ` [PATCH 1/3] drm/sun4i: Drop unused tcon pointer Chen-Yu Tsai 2017-04-25 15:25 ` [PATCH 2/3] drm/sun4i: Set TCON clock inside sun4i_tconX_mode_set Chen-Yu Tsai 2017-04-25 15:25 ` [PATCH 3/3] drm/sun4i: backend: Clarify sun4i_backend_layer_enable debug message Chen-Yu Tsai 2017-04-26 6:21 ` [PATCH 0/3] drm/sun4i: More cleanups and fixes Maxime Ripard
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox