RE: [EXT] Re: [PATCH v6 4/8] phy: Add HDMI configuration options

From: Sandor Yu
Date: Mon Jul 10 2023 - 04:01:14 EST




> -----Original Message-----
> From: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx>
> Sent: 2023年7月10日 15:44
> To: Sandor Yu <sandor.yu@xxxxxxx>; andrzej.hajda@xxxxxxxxx;
> neil.armstrong@xxxxxxxxxx; robert.foss@xxxxxxxxxx;
> Laurent.pinchart@xxxxxxxxxxxxxxxx; jonas@xxxxxxxxx;
> jernej.skrabec@xxxxxxxxx; airlied@xxxxxxxxx; daniel@xxxxxxxx;
> robh+dt@xxxxxxxxxx; krzysztof.kozlowski+dt@xxxxxxxxxx;
> shawnguo@xxxxxxxxxx; s.hauer@xxxxxxxxxxxxxx; festevam@xxxxxxxxx;
> vkoul@xxxxxxxxxx; dri-devel@xxxxxxxxxxxxxxxxxxxxx;
> devicetree@xxxxxxxxxxxxxxx; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx;
> linux-kernel@xxxxxxxxxxxxxxx; linux-phy@xxxxxxxxxxxxxxxxxxx
> Cc: kernel@xxxxxxxxxxxxxx; dl-linux-imx <linux-imx@xxxxxxx>; Oliver Brown
> <oliver.brown@xxxxxxx>
> Subject: Re: [EXT] Re: [PATCH v6 4/8] phy: Add HDMI configuration options
>
>
> On 10/07/2023 10:28, Sandor Yu wrote:
> > Hi Dmitry,
> >
> > Thanks for your comments,
> >
> >> From: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> On 15/06/2023
> >> 04:38, Sandor Yu wrote:
> >>> Allow HDMI PHYs to be configured through the generic functions
> >>> through a custom structure added to the generic union.
> >>>
> >>> The parameters added here are based on HDMI PHY implementation
> >>> practices. The current set of parameters should cover the potential
> >>> users.
> >>>
> >>> Signed-off-by: Sandor Yu <Sandor.yu@xxxxxxx>
> >>> ---
> >>> include/linux/phy/phy-hdmi.h | 38
> >> ++++++++++++++++++++++++++++++++++++
> >>> include/linux/phy/phy.h | 7 ++++++-
> >>> 2 files changed, 44 insertions(+), 1 deletion(-)
> >>> create mode 100644 include/linux/phy/phy-hdmi.h
> >>>
> >>> diff --git a/include/linux/phy/phy-hdmi.h
> >>> b/include/linux/phy/phy-hdmi.h new file mode 100644 index
> >>> 000000000000..5765aa5bc175
> >>> --- /dev/null
> >>> +++ b/include/linux/phy/phy-hdmi.h
> >>> @@ -0,0 +1,38 @@
> >>> +/* SPDX-License-Identifier: GPL-2.0 */
> >>> +/*
> >>> + * Copyright 2022 NXP
> >>> + */
> >>> +
> >>> +#ifndef __PHY_HDMI_H_
> >>> +#define __PHY_HDMI_H_
> >>> +
> >>> +/**
> >>> + * Pixel Encoding as HDMI Specification
> >>> + * RGB, YUV422, YUV444:HDMI Specification 1.4a Section 6.5
> >>> + * YUV420: HDMI Specification 2.a Section 7.1 */ enum
> >>> +hdmi_phy_colorspace {
> >>> + HDMI_PHY_COLORSPACE_RGB, /* RGB 4:4:4 */
> >>> + HDMI_PHY_COLORSPACE_YUV422, /* YCbCr 4:2:2 */
> >>> + HDMI_PHY_COLORSPACE_YUV444, /* YCbCr 4:4:4 */
> >>> + HDMI_PHY_COLORSPACE_YUV420, /* YCbCr 4:2:0 */
> >>> + HDMI_PHY_COLORSPACE_RESERVED4,
> >>> + HDMI_PHY_COLORSPACE_RESERVED5,
> >>> + HDMI_PHY_COLORSPACE_RESERVED6, };
> >>
> >> This enum duplicates enum hdmi_colorspace from <linux/hdmi.h> HDMI
> >> 2.0 defines '7' to be IDO-defined.
> >>
> >> Would it be better to use that enum instead?
> > Accept. I will create head file hdmi_colorspace.h to reuse enum
> hdmi_colorspace in <linux/hdmi.h>.
>
> Excuse me, it was supposed to be a question.
>
> Do you need another header file to reuse this enum?
I'm not sure community whether would accept the patch that simply include <linux/hdmi.h> in phy-hdmi.h
because there are lots of other definition in <linux/hdmi.h> that not need by phy-hdmi.h.
If the answer is yes, I happy to follow.

>
> >
> > B.R
> > Sandor
> >>
> >>> +
> >>> +/**
> >>> + * struct phy_configure_opts_hdmi - HDMI configuration set
> >>> + * @pixel_clk_rate: Pixel clock of video modes in KHz.
> >>> + * @bpc: Maximum bits per color channel.
> >>> + * @color_space: Colorspace in enum hdmi_phy_colorspace.
> >>> + *
> >>> + * This structure is used to represent the configuration state of a HDMI
> phy.
> >>> + */
> >>> +struct phy_configure_opts_hdmi {
> >>> + unsigned int pixel_clk_rate;
> >>> + unsigned int bpc;
> >>> + enum hdmi_phy_colorspace color_space; };
> >>> +
> >>> +#endif /* __PHY_HDMI_H_ */
> >>
> >> [skipped the rest]
> >>
> >> --
> >> With best wishes
> >> Dmitry
> >
>
> --
> With best wishes
> Dmitry

B.R
Sandor