Commit cd7f72e6 authored by Jernej Skrabec's avatar Jernej Skrabec Committed by Neil Armstrong

drm/bridge/synopsys: dw-hdmi: Add an option to suppress loading CEC driver

This adds DW-HDMI driver a glue option to disable loading of the CEC sub-driver.

On some SoCs, the CEC functionality is enabled in the IP config bits, but the
CEC bus is non-functional like on Amlogic SoCs, where the CEC config bit is set
but the DW-HDMI CEC signal is not connected to a physical pin, leading to some
confusion when the DW-HDMI CEC controller can't communicate on the bus.
Reviewed-by: default avatarNeil Armstrong <narmstrong@baylibre.com>
Signed-off-by: default avatarJernej Skrabec <jernej.skrabec@siol.net>
Signed-off-by: default avatarNeil Armstrong <narmstrong@baylibre.com>
Acked-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
Link: https://patchwork.freedesktop.org/patch/msgid/20210416092737.1971876-2-narmstrong@baylibre.com
parent 42be7ca1
...@@ -3421,7 +3421,7 @@ struct dw_hdmi *dw_hdmi_probe(struct platform_device *pdev, ...@@ -3421,7 +3421,7 @@ struct dw_hdmi *dw_hdmi_probe(struct platform_device *pdev,
hdmi->audio = platform_device_register_full(&pdevinfo); hdmi->audio = platform_device_register_full(&pdevinfo);
} }
if (config0 & HDMI_CONFIG0_CEC) { if (!plat_data->disable_cec && (config0 & HDMI_CONFIG0_CEC)) {
cec.hdmi = hdmi; cec.hdmi = hdmi;
cec.ops = &dw_hdmi_cec_ops; cec.ops = &dw_hdmi_cec_ops;
cec.irq = irq; cec.irq = irq;
......
...@@ -153,6 +153,8 @@ struct dw_hdmi_plat_data { ...@@ -153,6 +153,8 @@ struct dw_hdmi_plat_data {
const struct dw_hdmi_phy_config *phy_config; const struct dw_hdmi_phy_config *phy_config;
int (*configure_phy)(struct dw_hdmi *hdmi, void *data, int (*configure_phy)(struct dw_hdmi *hdmi, void *data,
unsigned long mpixelclock); unsigned long mpixelclock);
unsigned int disable_cec : 1;
}; };
struct dw_hdmi *dw_hdmi_probe(struct platform_device *pdev, struct dw_hdmi *dw_hdmi_probe(struct platform_device *pdev,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment