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

From: Sandor Yu
Date: Mon Jul 10 2023 - 04:11:27 EST



>
>
> On Mon, 10 Jul 2023 at 11:01, Sandor Yu <sandor.yu@xxxxxxx> wrote:
> >
> >
> >
> > > -----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.
>
> In my opinion it's a better alternative to creating yet another header.
OK, I will try include <linux/hdmi.h> in phy-hdmi.h in the next version.
Thanks for your comments.
B,R
Sandor
>
> >
> > >
> > > >
> > > > 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
> >
>
>
> --
> With best wishes
> Dmitry