[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e8c91a84-bfef-42c0-9e20-91676bb3843d@linaro.org>
Date: Mon, 19 Aug 2024 18:27:24 +0200
From: Neil Armstrong <neil.armstrong@...aro.org>
To: Jerome Brunet <jbrunet@...libre.com>,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Maxime Ripard <mripard@...nel.org>, Thomas Zimmermann <tzimmermann@...e.de>,
David Airlie <airlied@...il.com>, Daniel Vetter <daniel@...ll.ch>
Cc: Kevin Hilman <khilman@...libre.com>,
Martin Blumenstingl <martin.blumenstingl@...glemail.com>,
dri-devel@...ts.freedesktop.org, linux-amlogic@...ts.infradead.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH LATER 8/9] drm/meson: dw-hdmi: don't write power
controller registers
On 30/07/2024 14:50, Jerome Brunet wrote:
> The HDMI phy has a power domain properly set in DT.
>
> Writing the power controller register directly from the hdmi driver is
> incorrect. The power domain framework should be used for that.
>
> HHI is a collection of Amlogic devices, such as clocks, reset,
> power domains and phys.
>
> This is another step to get rid of HHI access in Amlogic display drivers
> and possibly stop using the component API.
>
> Signed-off-by: Jerome Brunet <jbrunet@...libre.com>
> ---
>
> This change depends on:
> * f1ab099d6591 ("arm64: dts: amlogic: add power domain to hdmitx")
>
> Time is needed for these changes to sink in u-boot and distros,
> making this change safe to apply.
Well no, we will basically need to wait until none of the stable and long-stable kernel stops
shipping a kernel without this change, but you can check if a power-domain have been associated
with the device and do the same.
>
> drivers/gpu/drm/meson/meson_dw_hdmi.c | 4 ----
> 1 file changed, 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/meson/meson_dw_hdmi.c b/drivers/gpu/drm/meson/meson_dw_hdmi.c
> index ef059c5ef520..6c18d97b8b16 100644
> --- a/drivers/gpu/drm/meson/meson_dw_hdmi.c
> +++ b/drivers/gpu/drm/meson/meson_dw_hdmi.c
> @@ -111,7 +111,6 @@
> #define HDMITX_TOP_G12A_OFFSET 0x8000
>
> /* HHI Registers */
> -#define HHI_MEM_PD_REG0 0x100 /* 0x40 */
> #define HHI_HDMI_CLK_CNTL 0x1cc /* 0x73 */
> #define HHI_HDMI_PHY_CNTL0 0x3a0 /* 0xe8 */
> #define HHI_HDMI_PHY_CNTL1 0x3a4 /* 0xe9 */
> @@ -423,9 +422,6 @@ static void meson_dw_hdmi_init(struct meson_dw_hdmi *meson_dw_hdmi)
> /* Enable clocks */
> regmap_update_bits(priv->hhi, HHI_HDMI_CLK_CNTL, 0xffff, 0x100);
>
> - /* Bring HDMITX MEM output of power down */
> - regmap_update_bits(priv->hhi, HHI_MEM_PD_REG0, 0xff << 8, 0);
> -
> /* Bring out of reset */
> regmap_write(meson_dw_hdmi->top, HDMITX_TOP_SW_RESET, 0);
> msleep(20);
Powered by blists - more mailing lists