Re: [PATCH v2 14/15] drm/mediatek: mtk_hdmi_common: Add OP_HDMI, vendor and product strings

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 2024-12-09 at 10:56 +0100, AngeloGioacchino Del Regno wrote:
> External email : Please do not click links or open attachments until you have verified the sender or the content.
> 
> 
> Il 09/12/24 10:09, CK Hu (胡俊光) ha scritto:
> > Hi, Angelo:
> > 
> > On Thu, 2024-12-05 at 12:45 +0100, AngeloGioacchino Del Regno wrote:
> > > External email : Please do not click links or open attachments until you have verified the sender or the content.
> > > 
> > > 
> > > In preparation for adding the HDMI TX v2 driver, and to allow
> > > a future modernization of the HDMI v1 one, perform changes
> > > that enable the usage of the HDMI Helpers provided by DRM.
> > > 
> > > Check if the HDMI driver provides the function pointers to
> > > hdmi_{clear,write}_infoframe used by the HDMI Helper API and,
> > > if present, add DRM_BRIDGE_OP_HDMI to the drm_bridge ops,
> > > enabling the drm API to register the bridge as HDMI and to use
> > > the HDMI Helper functions.
> > > 
> > > Moreover, as part of data exclusively used (in the context of
> > > HDMI bridges) by the helpers, assign the vendor "MediaTek" and
> > > product "On-Chip HDMI" strings to the drm_bridge struct.
> > > 
> > > If the hdmi_{write,clear}_infoframe pointers are not assigned,
> > > vendor and product strings and HDMI helpers will not be used,
> > > hence this commit brings no functional changes to drivers that
> > > have not been refactored to use the new helpers.
> > > 
> > > This also means that, in the current state, there is effectively
> > > no functional change to mtk_hdmi and its other components.
> > 
> > OP_HDMI is for v2.
> > vendor and product strings is for both v1 and v2.
> > So separate this patch to two patches.
> > 
> 
> They're both for v2, because only v2 uses the HDMI helpers, while v1 does not.

Sorry, these two is required by DRM_BRIDGE_OP_HDMI.

  /**
         * @vendor: Vendor of the product to be used for the SPD InfoFrame
         * generation. This is required if @DRM_BRIDGE_OP_HDMI is set.
         */
        const char *vendor;
 
        /**
         * @product: Name of the product to be used for the SPD InfoFrame
         * generation. This is required if @DRM_BRIDGE_OP_HDMI is set.
         */
        const char *product;

So,

Reviewed-by: CK Hu <ck.hu@xxxxxxxxxxxx>

> 
> Cheers,
> Angelo
> 
> > Regards,
> > CK
> > 
> > > 
> > > Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@xxxxxxxxxxxxx>
> > > ---
> > >   drivers/gpu/drm/mediatek/mtk_hdmi_common.c | 7 +++++++
> > >   1 file changed, 7 insertions(+)
> > > 
> > > diff --git a/drivers/gpu/drm/mediatek/mtk_hdmi_common.c b/drivers/gpu/drm/mediatek/mtk_hdmi_common.c
> > > index 4f708b04f5e8..0f60842462b0 100644
> > > --- a/drivers/gpu/drm/mediatek/mtk_hdmi_common.c
> > > +++ b/drivers/gpu/drm/mediatek/mtk_hdmi_common.c
> > > @@ -408,9 +408,16 @@ struct mtk_hdmi *mtk_hdmi_common_probe(struct platform_device *pdev)
> > > 
> > >          hdmi->bridge.funcs = ver_conf->bridge_funcs;
> > >          hdmi->bridge.ops = DRM_BRIDGE_OP_DETECT | DRM_BRIDGE_OP_EDID | DRM_BRIDGE_OP_HPD;
> > > +
> > > +       if (ver_conf->bridge_funcs->hdmi_write_infoframe &&
> > > +           ver_conf->bridge_funcs->hdmi_clear_infoframe)
> > > +               hdmi->bridge.ops |= DRM_BRIDGE_OP_HDMI;
> > > +
> > >          hdmi->bridge.type = DRM_MODE_CONNECTOR_HDMIA;
> > >          hdmi->bridge.of_node = pdev->dev.of_node;
> > >          hdmi->bridge.ddc = hdmi->ddc_adpt;
> > > +       hdmi->bridge.vendor = "MediaTek";
> > > +       hdmi->bridge.product = "On-Chip HDMI";
> > > 
> > >          ret = devm_drm_bridge_add(dev, &hdmi->bridge);
> > >          if (ret)
> > > --
> > > 2.47.0
> > > 
> > 
> 
> 





[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux