mbox series

[0/8] drm: bridge: dw_hdmi: Misc enable/disable, CEC and EDID cleanup

Message ID 20240611155108.1436502-1-jonas@kwiboo.se (mailing list archive)
Headers show
Series drm: bridge: dw_hdmi: Misc enable/disable, CEC and EDID cleanup | expand

Message

Jonas Karlman June 11, 2024, 3:50 p.m. UTC
This series ensure poweron/poweroff and CEC phys addr invalidation is
happening under drm mode_config mutex lock, and also ensure EDID is
updated (when the dw-hdmi connector is used) after a hotplug pulse.

These changes has mainly been tested on Rockchip devices together with a
forthcoming series that add HDMI 2.0 4K@60Hz support to RK3228, RK3328,
RK3399 and RK3568.

Rockchip use the dw-hdmi connector so this should also be validated with
a driver that use the bridge connector.

Jonas Karlman (8):
  drm: bridge: dw_hdmi: Call poweron/poweroff from atomic enable/disable
  drm: bridge: dw_hdmi: Use passed mode instead of stored previous_mode
  drm: bridge: dw_hdmi: Fold poweron and setup functions
  drm: bridge: dw_hdmi: Remove previous_mode and mode_set
  drm: bridge: dw_hdmi: Invalidate CEC phys addr from connector detect
  drm: bridge: dw_hdmi: Remove cec_notifier_mutex
  drm: bridge: dw_hdmi: Update EDID during hotplug processing
  drm: bridge: dw_hdmi: Use display_info is_hdmi and has_audio

 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 145 ++++++----------------
 1 file changed, 39 insertions(+), 106 deletions(-)

Comments

Christian Hewitt June 21, 2024, 11:07 a.m. UTC | #1
> On 11 Jun 2024, at 7:50 PM, Jonas Karlman <jonas@kwiboo.se> wrote:
> 
> This series ensure poweron/poweroff and CEC phys addr invalidation is
> happening under drm mode_config mutex lock, and also ensure EDID is
> updated (when the dw-hdmi connector is used) after a hotplug pulse.
> 
> These changes has mainly been tested on Rockchip devices together with a
> forthcoming series that add HDMI 2.0 4K@60Hz support to RK3228, RK3328,
> RK3399 and RK3568.
> 
> Rockchip use the dw-hdmi connector so this should also be validated with
> a driver that use the bridge connector.

I’m not sure my level of kernel fiddling counts as proper validation
(Neil would be a more authoritative tester) but FWIW, I picked the
series to my 6.10-rc4 dev branch (for Amlogic devices supported by the
LibreELEC distro) and AFAICT everything is still working. Tested with
Amlogic GXBB, GXL and G12B boards.

Tested-by: Christian Hewitt <christianshewitt@gmail.com>

> Jonas Karlman (8):
>  drm: bridge: dw_hdmi: Call poweron/poweroff from atomic enable/disable
>  drm: bridge: dw_hdmi: Use passed mode instead of stored previous_mode
>  drm: bridge: dw_hdmi: Fold poweron and setup functions
>  drm: bridge: dw_hdmi: Remove previous_mode and mode_set
>  drm: bridge: dw_hdmi: Invalidate CEC phys addr from connector detect
>  drm: bridge: dw_hdmi: Remove cec_notifier_mutex
>  drm: bridge: dw_hdmi: Update EDID during hotplug processing
>  drm: bridge: dw_hdmi: Use display_info is_hdmi and has_audio
> 
> drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 145 ++++++----------------
> 1 file changed, 39 insertions(+), 106 deletions(-)