Re: drm/bridge: adv7511: Attach next bridge without creating connector

2024-05-16 Thread Laurent Pinchart
Hi Sui, On Thu, May 16, 2024 at 12:13:03AM +0800, Sui Jingfeng wrote: > On 5/14/24 23:12, Laurent Pinchart wrote: > > On Tue, May 14, 2024 at 12:26:15AM +0800, Sui Jingfeng wrote: > >> On 5/13/24 16:02, Liu Ying wrote: > >>> The connector is created by eit

Re: Safety of opening up /dev/dma_heap/* to physically present users (udev uaccess tag) ?

2024-05-16 Thread Laurent Pinchart
Hi Nicolas, On Wed, May 15, 2024 at 01:43:58PM -0400, nicolas.dufre...@collabora.corp-partner.google.com wrote: > Le mardi 14 mai 2024 à 23:42 +0300, Laurent Pinchart a écrit : > > > You'll hit the same limitation as we hit in GStreamer, which is that KMS > > > dr

Re: Safety of opening up /dev/dma_heap/* to physically present users (udev uaccess tag) ?

2024-05-16 Thread Laurent Pinchart
On Thu, May 16, 2024 at 07:00:31AM +, Simon Ser wrote: > On Tuesday, May 14th, 2024 at 22:42, Laurent Pinchart wrote: > > > My experience on Arm platforms is that the KMS drivers offer allocation > > for scanout buffers, not render buffers, and mostly using the dumb

Re: [PATCH v2] dt-bindings: display: synopsys,dw-hdmi: Document ddc-i2c-bus in core

2024-05-15 Thread Laurent Pinchart
platforms where the DW HDMI DDC pins are not exposed, making the ddc-i2c-bus property mandatory, but that's something for platform-specific bindings to handle by simply adding a required: - ddc-i2c-bus That's a separate issue. This patch looks good to me. Reviewed-by: Laurent Pinchart >

Re: Safety of opening up /dev/dma_heap/* to physically present users (udev uaccess tag) ?

2024-05-14 Thread Laurent Pinchart
gt; On Wed, May 08, 2024 at 10:36:08AM +0200, Daniel Vetter wrote: > > > > > On Tue, May 07, 2024 at 04:07:39PM -0400, Nicolas Dufresne wrote: > > > > > > Le mardi 07 mai 2024 à 21:36 +0300, Laurent Pinchart a écrit : > > > > > > >

Re: Safety of opening up /dev/dma_heap/* to physically present users (udev uaccess tag) ?

2024-05-14 Thread Laurent Pinchart
On Mon, May 13, 2024 at 11:10:00AM -0400, Nicolas Dufresne wrote: > Le lundi 13 mai 2024 à 11:34 +0300, Laurent Pinchart a écrit : > > On Mon, May 13, 2024 at 10:29:22AM +0200, Maxime Ripard wrote: > > > On Wed, May 08, 2024 at 10:36:08AM +0200, Daniel Vetter wrote: > >

Re: drm/bridge: adv7511: Attach next bridge without creating connector

2024-05-14 Thread Laurent Pinchart
_NO_CONNECTOR unconditionally here. Reviewed-by: Laurent Pinchart > > > > Add that flag to drm_bridge_attach() function call in > > adv7511_bridge_attach() to fix the issue. > > > > This fixes the issue where the HDMI connector bridge fails to attach > &g

Re: Safety of opening up /dev/dma_heap/* to physically present users (udev uaccess tag) ?

2024-05-13 Thread Laurent Pinchart
On Mon, May 13, 2024 at 10:29:22AM +0200, Maxime Ripard wrote: > On Wed, May 08, 2024 at 10:36:08AM +0200, Daniel Vetter wrote: > > On Tue, May 07, 2024 at 04:07:39PM -0400, Nicolas Dufresne wrote: > > > Hi, > > > > > > Le mardi 07 mai 2024 à 2

Re: [PATCH] drm/bridge: cdns-mhdp8546: Remove a redundant check on existence of bridge->encoder

2024-05-12 Thread Laurent Pinchart
) { ... }". > > Signed-off-by: Sui Jingfeng Reviewed-by: Laurent Pinchart > --- > drivers/gpu/drm/bridge/cadence/cdns-mhdp8546-core.c | 5 - > 1 file changed, 5 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/cadence/cdns-mhdp8546-core.c > b/drivers/

Re: [PATCH] drm/bridge: megachips-stdpxxxx-ge-b850v3-fw: Remove a redundant check on existence of bridge->encoder

2024-05-12 Thread Laurent Pinchart
;encoder) { ... }". > > Signed-off-by: Sui Jingfeng Reviewed-by: Laurent Pinchart > --- > drivers/gpu/drm/bridge/megachips-stdp-ge-b850v3-fw.c | 5 - > 1 file changed, 5 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/megachips-stdp-ge-b850v3-fw.c

Re: [PATCH] drm/bridge: synopsys: dw-mipi-dsi: Remove a redundant check on existence of bridge->encoder

2024-05-12 Thread Laurent Pinchart
;encoder) { ... }". > > Signed-off-by: Sui Jingfeng Reviewed-by: Laurent Pinchart > --- > drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c | 5 - > 1 file changed, 5 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c > b/drivers/gpu/drm/

Re: [PATCH] drm/bridge: lt9611uxc: Remove a redundant check on existence of bridge->encoder

2024-05-12 Thread Laurent Pinchart
;encoder) { ... }". > > Signed-off-by: Sui Jingfeng Reviewed-by: Laurent Pinchart > --- > drivers/gpu/drm/bridge/lontium-lt9611uxc.c | 5 - > 1 file changed, 5 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/lontium-lt9611uxc.c > b/drivers/gpu/drm/brid

Re: [PATCH] drm/bridge: adv7511: Remove a redundant check on existence of bridge->encoder

2024-05-12 Thread Laurent Pinchart
) { ... }". > > Signed-off-by: Sui Jingfeng Reviewed-by: Laurent Pinchart > --- > drivers/gpu/drm/bridge/adv7511/adv7511_drv.c | 5 - > 1 file changed, 5 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c > b/drivers/gpu/drm/bridge

Re: [PATCH] drm/bridge: imx: Remove redundant checks on existence of bridge->encoder

2024-05-12 Thread Laurent Pinchart
s guaranteed that the .encoder member > of the drm_bridge instance is not NULL when various imx_xxx_bridge_attach() > function gets called. > > Remove the redundant checking codes "if (!bridge->encoder) { ... }". > > Signed-off-by: Sui Jingfeng Reviewed-by: Laurent

Re: [PATCH] drm/bridge: analogix: Remove redundant checks on existence of bridge->encoder

2024-05-12 Thread Laurent Pinchart
codes "if (!bridge->encoder) { ... }". > > Signed-off-by: Sui Jingfeng Reviewed-by: Laurent Pinchart > --- > drivers/gpu/drm/bridge/analogix/analogix-anx6345.c | 5 - > drivers/gpu/drm/bridge/analogix/analogix-anx78xx.c | 5 - > drivers/gpu/drm/bridge

Re: [PATCH] drm/bridge: it6505: Remove a redundant check on existence of bridge->encoder

2024-05-12 Thread Laurent Pinchart
checking codes "if (!bridge->encoder) { ... }". > > Signed-off-by: Sui Jingfeng Reviewed-by: Laurent Pinchart > --- > drivers/gpu/drm/bridge/ite-it6505.c | 5 - > 1 file changed, 5 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/ite-it6505.c > b/driv

Re: [PATCH] drm/bridge: panel: Remove a redundant check on existence of bridge->encoder

2024-05-12 Thread Laurent Pinchart
remove the redundant checking codes > "if (!bridge->encoder) { ... }". > > Signed-off-by: Sui Jingfeng Reviewed-by: Laurent Pinchart > --- > drivers/gpu/drm/bridge/panel.c | 5 - > 1 file changed, 5 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/pa

Re: [PATCH] drm/bridge: nxp-ptn3460: Remove a small useless code snippet

2024-05-12 Thread Laurent Pinchart
gt; - if (!bridge->encoder) { > - DRM_ERROR("Parent encoder object not found"); > - return -ENODEV; > - } > - > ptn_bridge->connector.polled = DRM_CONNECTOR_POLL_HPD; > ret = drm_connector_init(bridge->dev, _bridge->connector, > _connector_funcs, DRM_MODE_CONNECTOR_LVDS); -- Regards, Laurent Pinchart

Re: [PATCH] drm/bridge: tfp410: Remove a small useless code snippet

2024-05-12 Thread Laurent Pinchart
dge->encoder is NULL and the driver will > quit even if drm_bridge_attach() fails for some reasons. > > Therefore there is no need to check another time at the later, remove the > redundant checking codes "if (!bridge->encoder) { ... }". > > Signed-off-by

Re: [PATCH] drm/bridge: Remove a small useless code snippet

2024-05-12 Thread Laurent Pinchart
the later. > > Signed-off-by: Sui Jingfeng Reviewed-by: Laurent Pinchart If you end up sending a second version of this patch, please include all similar patches you have sent at the same time in a patch series, instead of sending them separately. > --- > drivers/gpu/drm/bridge/simple-

Re: [PATCH 2/4] dt-bindings: display: ti: Add schema for AM625 OLDI Transmitter

2024-05-12 Thread Laurent Pinchart
0 { > +reg = <0>; > +oldi1_in: endpoint { > +remote-endpoint = <_out1>; > +}; > +}; > +}; > +}; > +}; > + > +... > diff --git a/MAINTAINERS b/MAINTAINERS > index c675fc296b19..4426c4d41a7f 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -7480,6 +7480,7 @@ M: Tomi Valkeinen > L: dri-devel@lists.freedesktop.org > S: Maintained > T: git https://gitlab.freedesktop.org/drm/misc/kernel.git > +F: Documentation/devicetree/bindings/display/ti/ti,am625-oldi.yaml > F: Documentation/devicetree/bindings/display/ti/ti,am65x-dss.yaml > F: Documentation/devicetree/bindings/display/ti/ti,j721e-dss.yaml > F: Documentation/devicetree/bindings/display/ti/ti,k2g-dss.yaml -- Regards, Laurent Pinchart

Re: [PATCH 1/4] dt-bindings: display: ti,am65x-dss: Minor Cleanup

2024-05-12 Thread Laurent Pinchart
Hi Aradhya, Thank you for the patch. On Sun, May 12, 2024 at 01:00:52AM +0530, Aradhya Bhatia wrote: > Reduce tab size from 8 spaces to 4 spaces to make the bindings > consistent, and easy to expand. > > Signed-off-by: Aradhya Bhatia Reviewed-by: Laurent Pinchart > ---

Re: [PATCH v7 8/8] gpu: ipu-v3: Use generic macro for rounding to nearest multiple

2024-05-10 Thread Laurent Pinchart
n_pos_rounded = in_pos_aligned / 8192U; > > Oh, these seems to be better to use either ALIGN*(), or PFN_*() / PAGE_*() > families of macros. What the semantic of 8192 is? The comment mentions 19.13 fixed point, so I assume that's the fractional part of the integer. It doesn't seem related to pages. -- Regards, Laurent Pinchart

Re: Safety of opening up /dev/dma_heap/* to physically present users (udev uaccess tag) ?

2024-05-08 Thread Laurent Pinchart
On Wed, May 08, 2024 at 10:39:58AM +0200, Daniel Vetter wrote: > On Tue, May 07, 2024 at 10:59:42PM +0300, Dmitry Baryshkov wrote: > > On Tue, 7 May 2024 at 21:40, Laurent Pinchart wrote: > > > On Tue, May 07, 2024 at 06:19:18PM +0300, Dmitry Baryshkov wrote: > > > &g

Re: Safety of opening up /dev/dma_heap/* to physically present users (udev uaccess tag) ?

2024-05-08 Thread Laurent Pinchart
On Thu, May 09, 2024 at 12:51:08AM +0300, Laurent Pinchart wrote: > On Wed, May 08, 2024 at 10:36:08AM +0200, Daniel Vetter wrote: > > On Tue, May 07, 2024 at 04:07:39PM -0400, Nicolas Dufresne wrote: > > > Le mardi 07 mai 2024 à 21:36 +0300, Laurent Pinchart a écrit : > &

Re: Safety of opening up /dev/dma_heap/* to physically present users (udev uaccess tag) ?

2024-05-08 Thread Laurent Pinchart
On Wed, May 08, 2024 at 10:36:08AM +0200, Daniel Vetter wrote: > On Tue, May 07, 2024 at 04:07:39PM -0400, Nicolas Dufresne wrote: > > Le mardi 07 mai 2024 à 21:36 +0300, Laurent Pinchart a écrit : > > > Shorter term, we have a problem to solve, and the best option we have

Re: [PATCH] drm/drm-bridge.c: Drop conditionals around of_node pointers

2024-05-07 Thread Laurent Pinchart
m/bridge: Drop conditionals around of_node pointers"). Reviewed-by: Laurent Pinchart > --- > drivers/gpu/drm/drm_bridge.c | 5 - > 1 file changed, 5 deletions(-) > > diff --git a/drivers/gpu/drm/drm_bridge.c b/drivers/gpu/drm/drm_bridge.c > index 30d66bee0ec6..a6dbe1751e8

Re: Safety of opening up /dev/dma_heap/* to physically present users (udev uaccess tag) ?

2024-05-07 Thread Laurent Pinchart
On Tue, May 07, 2024 at 10:59:42PM +0300, Dmitry Baryshkov wrote: > On Tue, 7 May 2024 at 21:40, Laurent Pinchart wrote: > > On Tue, May 07, 2024 at 06:19:18PM +0300, Dmitry Baryshkov wrote: > > > On Tue, 7 May 2024 at 18:15, Bryan O'Donoghue wrote: > > > > On 07/0

Re: Safety of opening up /dev/dma_heap/* to physically present users (udev uaccess tag) ?

2024-05-07 Thread Laurent Pinchart
e way to nuke applications that refuse to release buffers > when they're no longer the right application. cgroups is a lot more > convenient for that. > > > > But devices tagged for uaccess are only opened up to users who are > > > physcially present behind the machine and those can just hit > > > the powerbutton, so I don't believe that any *on purpose* DOS is part of > > > the thread model. > > > > How would that work for headless devices? -- Regards, Laurent Pinchart

Re: Safety of opening up /dev/dma_heap/* to physically present users (udev uaccess tag) ?

2024-05-07 Thread Laurent Pinchart
. For that we need a centralized device memory allocator in userspace. An effort was started by James Jones in 2016, see [1]. It has unfortunately stalled. If I didn't have a camera framework to develop, I would try to tackle that issue :-) [1] https://www.x.org/wiki/Events/XDC2016/Program/Unix_Device_Memory_Allocation.pdf -- Regards, Laurent Pinchart

Re: Safety of opening up /dev/dma_heap/* to physically present users (udev uaccess tag) ?

2024-05-07 Thread Laurent Pinchart
be VPU, could be Zoom/Hangouts via pipewire, could for argument sake > > be GPU or DSP. > > > > Also if we introduce a dependency on another device to allocate the output > > buffers - say always taking the output buffer from the GPU, then we've added > > another dependency which is more difficult to guarantee across different > > arches. -- Regards, Laurent Pinchart

Re: [BUG] drm: zynqmp_dp: Lockup in zynqmp_dp_bridge_detect when device is unbound

2024-05-06 Thread Laurent Pinchart
On Mon, May 06, 2024 at 10:57:17AM -0400, Sean Anderson wrote: > On 5/6/24 03:35, Laurent Pinchart wrote: > > On Mon, May 06, 2024 at 09:29:36AM +0200, Maxime Ripard wrote: > >> Hi Laurent, Sean, > >> > >> On Sat, May 04, 2024 at 03:21:18PM GMT, Laurent Pinchar

Re: [BUG] drm: zynqmp_dp: Lockup in zynqmp_dp_bridge_detect when device is unbound

2024-05-06 Thread Laurent Pinchart
On Mon, May 06, 2024 at 09:29:36AM +0200, Maxime Ripard wrote: > Hi Laurent, Sean, > > On Sat, May 04, 2024 at 03:21:18PM GMT, Laurent Pinchart wrote: > > On Fri, May 03, 2024 at 05:54:32PM -0400, Sean Anderson wrote: > > > I have discovered a bug in the displayport

Re: [BUG] drm: zynqmp_dp: Lockup in zynqmp_dp_bridge_detect when device is unbound

2024-05-04 Thread Laurent Pinchart
= connector_status_disconnected; > @@ -1839,4 +1843,5 @@ void zynqmp_dp_remove(struct zynqmp_dpsub *dpsub) > > zynqmp_dp_phy_exit(dp); > zynqmp_dp_reset(dp, true); > + dp->magic = 0xdeadbeefdeadbeefULL; > } -- Regards, Laurent Pinchart

Re: [PATCH] drm/fourcc: Add RGB161616 and BGR161616 formats

2024-05-02 Thread Laurent Pinchart
'G', '4', '8') /* [47:0] > > R:G:B 16:16:16 little endian */ > > +#define DRM_FORMAT_BGR161616 fourcc_code('B', 'G', '4', '8') /* [47:0] > > B:G:R 16:16:16 little endian */ > > + > > /* 64 bpp RGB */ > > #define DRM_FORMAT_XRGB16161616fourcc_code('X', 'R', '4', '8') /* > > [63:0] x:R:G:B 16:16:16:16 little endian */ > > #define DRM_FORMAT_XBGR16161616fourcc_code('X', 'B', '4', '8') /* > > [63:0] x:B:G:R 16:16:16:16 little endian */ -- Regards, Laurent Pinchart

Re: [PATCH] drm: zynqmp_dpsub: Always register bridge

2024-04-26 Thread Laurent Pinchart
; > zynqmp_dp_remove(dpsub); > > > > I sent a similar patch: > > https://lore.kernel.org/all/20240312-xilinx-dp-lock-fix-v1-1-1698f9f03...@ideasonboard.com/ > > I have the drm_bridge_add() call in zynqmp_dp_probe(), as that's where > the bridge is set up, so i

Re: [PATCH] drm: xlnx: zynqmp_dpsub: Fix missing drm_bridge_add() call

2024-04-26 Thread Laurent Pinchart
> - else > - drm_bridge_remove(dpsub->bridge); > > zynqmp_disp_remove(dpsub); > zynqmp_dp_remove(dpsub); > > --- > base-commit: e8f897f4afef0031fe618a8e94127a0934896aba > change-id: 20240312-xilinx-dp-lock-fix-cf68f43a7bab -- Regards, Laurent Pinchart

Re: [PATCH V2] drm/bridge: imx: Fix unmet depenency for PHY_FSL_SAMSUNG_HDMI_PHY

2024-04-25 Thread Laurent Pinchart
") > Reported-by: kernel test robot > Closes: > https://lore.kernel.org/oe-kbuild-all/202404190103.llm8ltup-...@intel.com/ > Signed-off-by: Adam Ford This looks sensible to me. Reviewed-by: Laurent Pinchart > --- > V2: Change DRM_IMX8MP_HDMI_PVI at the same time since it

Re: [PATCH] drm/bridge: imx: Fix unmet depenency for PHY_FSL_SAMSUNG_HDMI_PHY

2024-04-21 Thread Laurent Pinchart
ill, it would be good to fix it. > - select PHY_FSL_SAMSUNG_HDMI_PHY > + imply PHY_FSL_SAMSUNG_HDMI_PHY > help > Choose this to enable support for the internal HDMI encoder found > on the i.MX8MP SoC. -- Regards, Laurent Pinchart

Re: [PATCH] i2c: mux: Remove class argument from i2c_mux_add_adapter()

2024-04-19 Thread Laurent Pinchart
Therefore the class argument can be removed. > > Note: Class-based device instantiation is a legacy mechanism which > shouldn't be used in new code, so we can rule out that this argument > may be needed again in the future. > > Signed-off-by: Heiner Kallweit Reviewed-by: Lauren

Re: [PATCH v2 28/43] drm/renesas/rcar-du: Use fbdev-dma

2024-04-12 Thread Laurent Pinchart
On Fri, Apr 12, 2024 at 09:57:27PM +0300, Laurent Pinchart wrote: > Hi Thomas, > > Thank you for the patch. > > On Wed, Apr 10, 2024 at 03:02:24PM +0200, Thomas Zimmermann wrote: > > Implement fbdev emulation with fbdev-dma. Fbdev-dma now supports > > damage handling

Re: [PATCH v2 30/43] drm/renesas/shmobile: Use fbdev-dma

2024-04-12 Thread Laurent Pinchart
buffering. No functional changes. > > Signed-off-by: Thomas Zimmermann > Cc: Laurent Pinchart > Cc: Geert Uytterhoeven Reviewed-by: Laurent Pinchart > --- > drivers/gpu/drm/renesas/shmobile/shmob_drm_drv.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > >

Re: [PATCH v2 28/43] drm/renesas/rcar-du: Use fbdev-dma

2024-04-12 Thread Laurent Pinchart
buffering. No functional changes. > > Signed-off-by: Thomas Zimmermann > Cc: Laurent Pinchart > Cc: Kieran Bingham Reviewed-by: Laurent Pinchart On a side note, I noticed that drm_fbdev_generic_client_funcs and drm_fbdev_dma_client_funcs point to functions that are identical. Would th

Re: [PATCH 20/21] drm/rcar-du: Allow build with COMPILE_TEST=y

2024-04-10 Thread Laurent Pinchart
Hi Ville, Thank you for the patch. On Mon, Apr 08, 2024 at 08:04:25PM +0300, Ville Syrjala wrote: > From: Ville Syrjälä > > Allow rcar-du to be built with COMPILE_TEST=y for greater > coverage. Builds fine on x86/x86_64 at least. > > Cc: Laurent Pinchart > Cc: Kieran

Re: 2024 X.Org Foundation Membership deadline for voting in the election

2024-04-02 Thread Laurent Pinchart
r sure of one other person falling > for the same. Make that two. Thanks for the notice. > Now, the members page for this year says "Application for the period: > 02/2024-02/2025". Thanks to the people adding the month to reduce > confusion. -- Regards, Laurent Pinchart

Re: [PATCH] MAINTAINERS: Add myself as maintainer for Xilinx DRM drivers

2024-03-27 Thread Laurent Pinchart
Hi Tomi, Thank you for the patch. On Wed, Mar 27, 2024 at 03:03:33PM +0200, Tomi Valkeinen wrote: > Add myself as a co-maintainer for Xilinx DRM drivers to help Laurent. > > Signed-off-by: Tomi Valkeinen Much appreciated :-) Reviewed-by: Laurent Pinchart > --- > MAINTAI

Re: [PATCH 1/9] fbdev: shmobile: fix snprintf truncation

2024-03-26 Thread Laurent Pinchart
> be truncated; specified size is 16, but format string expands to at least 25 > > Make it short enough by changing the string. > > Fixes: c5deac3c9b22 ("fbdev: sh_mobile_lcdc: Implement overlays support") > Signed-off-by: Arnd Bergmann Reviewed-by: Laurent Pinchart >

Re: [PATCH V8 00/12] soc: imx8mp: Add support for HDMI

2024-03-25 Thread Laurent Pinchart
create mode 100644 > > Documentation/devicetree/bindings/display/imx/fsl,imx8mp-hdmi-pvi.yaml > > create mode 100644 > > Documentation/devicetree/bindings/phy/fsl,imx8mp-hdmi-phy.yaml > > create mode 100644 drivers/gpu/drm/bridge/imx/imx8mp-hdmi-pvi.c > > create mode 100644 drivers/gpu/drm/bridge/imx/imx8mp-hdmi-tx.c > > create mode 100644 drivers/phy/freescale/phy-fsl-samsung-hdmi.c -- Regards, Laurent Pinchart

Re: [PATCH v2 5/8] drm: xlnx: zynqmp_dpsub: Set input live format

2024-03-18 Thread Laurent Pinchart
drm_format_info(DRM_FORMAT_YUV422); > - zynqmp_disp_layer_set_format(layer, info); > zynqmp_disp_layer_enable(layer); > > if (layer_id == ZYNQMP_DPSUB_LAYER_GFX) > diff --git a/drivers/gpu/drm/xlnx/zynqmp_kms.c > b/drivers/gpu/drm/xlnx/zynqmp_kms.c > index bf9fba01df0e..d96b3f3f2e3a 100644 > --- a/drivers/gpu/drm/xlnx/zynqmp_kms.c > +++ b/drivers/gpu/drm/xlnx/zynqmp_kms.c > @@ -111,7 +111,7 @@ static void zynqmp_dpsub_plane_atomic_update(struct > drm_plane *plane, > if (old_state->fb) > zynqmp_disp_layer_disable(layer); > > - zynqmp_disp_layer_set_format(layer, new_state->fb->format); > + zynqmp_disp_layer_set_format(layer, > new_state->fb->format->format); > } > > zynqmp_disp_layer_update(layer, new_state); > -- Regards, Laurent Pinchart

Re: [PATCH v2 4/8] drm: xlnx: zynqmp_dpsub: Minimize usage of global flag

2024-03-18 Thread Laurent Pinchart
32,9 +1132,6 @@ static int zynqmp_disp_layer_request_dma(struct > zynqmp_disp *disp, > unsigned int i; > int ret; > > - if (!disp->dpsub->dma_enabled) > - return 0; > - > for (i = 0; i < layer->info->num_channels; i++) { > struct zynqmp_disp_layer_dma *dma = >dmas[i]; > char dma_channel_name[16]; > -- Regards, Laurent Pinchart

Re: [PATCH v2 3/8] drm: xlnx: zynqmp_dpsub: Anounce supported input formats

2024-03-18 Thread Laurent Pinchart
>dpsub->connected_ports & BIT(ZYNQMP_DPSUB_PORT_LIVE_VIDEO)) > + layer_id = ZYNQMP_DPSUB_LAYER_VID; > + else if (dp->dpsub->connected_ports & BIT(ZYNQMP_DPSUB_PORT_LIVE_GFX)) > + layer_id = ZYNQMP_DPSUB_LAYER_GFX; > + else { > +

Re: [PATCH v2 2/8] drm: xlnx: zynqmp_dpsub: Update live format defines

2024-03-18 Thread Laurent Pinchart
Hi Anatoliy, Thank you for the patch. On Tue, Mar 12, 2024 at 05:54:59PM -0700, Anatoliy Klymenko wrote: > Update live format defines to match DPSUB AV_BUF_LIVE_VID_CONFIG register > layout. > > Signed-off-by: Anatoliy Klymenko Reviewed-by: Laurent Pinchart > --- > dr

Re: [PATCH] drm: bridge: thc63lvd1024: Print error message when DT parsing fails

2024-03-18 Thread Laurent Pinchart
Hi Sui, On Tue, Mar 19, 2024 at 12:42:41AM +0800, Sui Jingfeng wrote: > On 2024/3/19 00:06, Laurent Pinchart wrote: > > Commit 00084f0c01bf ("drm: bridge: thc63lvd1024: Switch to use > > of_graph_get_remote_node()") simplified the thc63lvd1024 driver by >

Re: [PATCH 3/6] drm: zynqmp_dp: Add locking

2024-03-18 Thread Laurent Pinchart
Hi Sean, On Mon, Mar 18, 2024 at 01:29:12PM -0400, Sean Anderson wrote: > On 3/18/24 13:16, Laurent Pinchart wrote: > > On Fri, Mar 15, 2024 at 07:09:13PM -0400, Sean Anderson wrote: > >> Add some locking, since none is provided by the drm subsystem. This will > > &g

Re: [PATCH 6/6] drm: zynqmp_dp: Add debugfs interface for compliance testing

2024-03-18 Thread Laurent Pinchart
return 0; > > +} > > + > > +static int zynqmp_dp_rate_set(void *data, u64 val) > > +{ > > + struct zynqmp_dp *dp = data; > > + u8 bw_code = drm_dp_link_rate_to_bw_code(val / 1); > > + int link_rate = drm_dp_bw_code_to_link_rate(bw_code); > > + int ret = 0; > > + > > + if (val / 1 != link_rate) > > + return -EINVAL; > > + > > + if (bw_code != DP_LINK_BW_1_62 && bw_code != DP_LINK_BW_2_7 && > > + bw_code != DP_LINK_BW_5_4) > > + return -EINVAL; > > + > > + mutex_lock(>lock); > > + dp->test.bw_code = bw_code; > > + if (dp->test.active) > > + ret = zynqmp_dp_test_setup(dp); > > + mutex_unlock(>lock); > > + > > + return ret; > > +} > > + > > +DEFINE_DEBUGFS_ATTRIBUTE(fops_zynqmp_dp_rate, zynqmp_dp_rate_get, > > +zynqmp_dp_rate_set, "%llu\n"); > > + > > +static void zynqmp_dp_bridge_debugfs_init(struct drm_bridge *bridge, > > + struct dentry *root) > > +{ > > + struct zynqmp_dp *dp = bridge_to_dp(bridge); > > + struct dentry *test; > > + int i; > > + > > + dp->test.bw_code = DP_LINK_BW_5_4; > > + dp->test.link_cnt = dp->num_lanes; > > + > > + test = debugfs_create_dir("test", root); > > +#define CREATE_FILE(name) \ > > + debugfs_create_file(#name, 0600, test, dp, _zynqmp_dp_##name) > > + CREATE_FILE(pattern); > > + CREATE_FILE(enhanced); > > + CREATE_FILE(downspread); > > + CREATE_FILE(active); > > + CREATE_FILE(custom); > > + CREATE_FILE(rate); > > + CREATE_FILE(lanes); > > + > > + for (i = 0; i < dp->num_lanes; i++) { > > + static const char fmt[] = "lane%d_preemphasis"; > > + char name[sizeof(fmt)]; > > + > > + dp->debugfs_train_set[i].dp = dp; > > + dp->debugfs_train_set[i].lane = i; > > + > > + sprintf(name, fmt, i); > > + debugfs_create_file(name, 0600, test, > > + >debugfs_train_set[i], > > + _zynqmp_dp_preemphasis); > > + > > + sprintf(name, "lane%d_swing", i); > > + debugfs_create_file(name, 0600, test, > > + >debugfs_train_set[i], > > + _zynqmp_dp_swing); > > + } > > +} > > + > > static const struct drm_bridge_funcs zynqmp_dp_bridge_funcs = { > > .attach = zynqmp_dp_bridge_attach, > > .detach = zynqmp_dp_bridge_detach, > > @@ -1611,6 +2189,7 @@ static const struct drm_bridge_funcs > > zynqmp_dp_bridge_funcs = { > > .atomic_check = zynqmp_dp_bridge_atomic_check, > > .detect = zynqmp_dp_bridge_detect, > > .get_edid = zynqmp_dp_bridge_get_edid, > > + .debugfs_init = zynqmp_dp_bridge_debugfs_init, > > }; > > > > /* > > - > > @@ -1645,6 +2224,9 @@ static void zynqmp_dp_hpd_work_func(struct > > work_struct *work) > > hpd_work.work); > > enum drm_connector_status status; > > > > + if (dp->test.active) > > + return; > > + > > status = zynqmp_dp_bridge_detect(>bridge); > > drm_bridge_hpd_notify(>bridge, status); > > } > > @@ -1666,7 +2248,14 @@ static void zynqmp_dp_hpd_irq_work_func(struct > > work_struct *work) > > if (status[4] & DP_LINK_STATUS_UPDATED || > > !drm_dp_clock_recovery_ok([2], > > dp->mode.lane_cnt) || > > !drm_dp_channel_eq_ok([2], dp->mode.lane_cnt)) { > > - zynqmp_dp_train_loop(dp); > > + if (dp->test.active) { > > + dev_dbg(dp->dev, "Ignoring HPD IRQ in test > > mode\n"); > > + } else { > > + dev_dbg(dp->dev, > > + "Retraining due to HPD IRQ (status > > is [%*ph])\n", > > + (int)sizeof(status), status); > > + zynqmp_dp_train_loop(dp); > > + } > > } > > } > > mutex_unlock(>lock); -- Regards, Laurent Pinchart

Re: [PATCH 6/6] drm: zynqmp_dp: Add debugfs interface for compliance testing

2024-03-18 Thread Laurent Pinchart
sprintf(name, fmt, i); > > 2169 debugfs_create_file(name, 0600, test, > > 2170 >debugfs_train_set[i], > > 2171 > > _zynqmp_dp_preemphasis); > > 2172 > > 2173 sprintf(name, "lane%d_swing", i); > > 2174 debugfs_create_file(name, 0600, test, > > 2175 >debugfs_train_set[i], > > 2176 _zynqmp_dp_swing); > > 2177 } > > 2178 } > > 2179 -- Regards, Laurent Pinchart

Re: [PATCH 5/6] drm: zynqmp_dp: Optionally ignore DPCD errors

2024-03-18 Thread Laurent Pinchart
drm_dp_enhanced_frame_cap(dp->dpcd), > - dp->dpcd[3] & 0x1); > + dp->dpcd[3] & 0x1, false); > if (ret) > return ret; > > @@ -877,7 +886,7 @@ static int zynqmp_dp_train(struct zynqmp_dp *dp) > ret = drm_dp_dpcd_writeb(>aux, DP_TRAINING_PATTERN_SET, >DP_TRAINING_PATTERN_DISABLE); > if (ret < 0) { > - dev_err(dp->dev, "failed to disable training pattern\n"); > + dev_warn(dp->dev, "failed to disable training pattern\n"); > return ret; > } > zynqmp_dp_write(dp, ZYNQMP_DP_TRAINING_PATTERN_SET, -- Regards, Laurent Pinchart

Re: [PATCH 4/6] drm: zynqmp_dp: Split off several helper functions

2024-03-18 Thread Laurent Pinchart
* @dp: DisplayPort IP core structure > + * > + * Return: 0 if all trains are done successfully, or corresponding error > code. > + */ > +static int zynqmp_dp_train(struct zynqmp_dp *dp) > +{ > + int ret; > + > + ret = zynqmp_dp_setup(dp, dp->mode.bw_code

Re: [PATCH 3/6] drm: zynqmp_dp: Add locking

2024-03-18 Thread Laurent Pinchart
dp->dpsub = dpsub; > dp->status = connector_status_disconnected; > + mutex_init(>lock); > > INIT_DELAYED_WORK(>hpd_work, zynqmp_dp_hpd_work_func); > + INIT_DELAYED_WORK(>hpd_irq_work, zynqmp_dp_hpd_irq_work_func); > > /* Acquire all resources (IOMEM, IRQ and PHYs). */ > res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "dp"); > @@ -1775,6 +1798,7 @@ void zynqmp_dp_remove(struct zynqmp_dpsub *dpsub) > zynqmp_dp_write(dp, ZYNQMP_DP_INT_DS, ZYNQMP_DP_INT_ALL); > disable_irq(dp->irq); > > + cancel_delayed_work_sync(>hpd_irq_work); > cancel_delayed_work_sync(>hpd_work); > > zynqmp_dp_write(dp, ZYNQMP_DP_TRANSMITTER_ENABLE, 0); > @@ -1782,4 +1806,5 @@ void zynqmp_dp_remove(struct zynqmp_dpsub *dpsub) > > zynqmp_dp_phy_exit(dp); > zynqmp_dp_reset(dp, true); > + mutex_destroy(>lock); > } -- Regards, Laurent Pinchart

Re: [PATCH 2/6] drm: zynqmp_dp: Adjust training values per-lane

2024-03-18 Thread Laurent Pinchart
2) > - preemphasis |= DP_TRAIN_MAX_PRE_EMPHASIS_REACHED; > - > - for (i = 0; i < dp->mode.lane_cnt; i++) > train_set[i] = voltage | preemphasis; > + } I don't have enough DP knowledge to review this :-( > } > > /** -- Regards, Laurent Pinchart

Re: [PATCH 1/6] drm: zynqmp_dp: Downgrade log level for aux retries message

2024-03-18 Thread Laurent Pinchart
!ret) { > - dev_dbg(dp->dev, "aux %d retries\n", i); > + dev_vdbg(dp->dev, "aux %d retries\n", i); I didn't know about dev_vdbg(). I suppose this makes sense, Reviewed-by: Laurent Pinchart > return msg->size; > } > -- Regards, Laurent Pinchart

[PATCH] drm: bridge: thc63lvd1024: Print error message when DT parsing fails

2024-03-18 Thread Laurent Pinchart
sing probe issues that get annoying to debug. Fix it by adding an error message. Fixes: 00084f0c01bf ("drm: bridge: thc63lvd1024: Switch to use of_graph_get_remote_node()") Signed-off-by: Laurent Pinchart --- drivers/gpu/drm/bridge/thc63lvd1024.c | 5 - 1 file changed, 4 insertions(+),

Re: [PATCH] drm: bridge: thc63lvd1024: Switch to use of_graph_get_remote_node()

2024-03-18 Thread Laurent Pinchart
On Mon, Mar 18, 2024 at 11:53:11PM +0800, Sui Jingfeng wrote: > On 2024/3/18 23:33, Laurent Pinchart wrote: > > On Sun, Mar 17, 2024 at 01:28:00AM +0800, Sui Jingfeng wrote: > >> To reduce boilerplate, use of_graph_get_remote_node() helper instead of > >> the hand-rol

Re: [PATCH] drm: bridge: thc63lvd1024: Switch to use of_graph_get_remote_node()

2024-03-18 Thread Laurent Pinchart
; - if (!of_device_is_available(remote)) { > - dev_err(thc63->dev, "port@%u remote endpoint is disabled\n", > - THC63_RGB_OUT0); > - of_node_put(remote); > - return -ENODEV; > - } > > thc63->next = of_drm_find_bridge(remote); > of_node_put(remote); -- Regards, Laurent Pinchart

Re: [PATCH] drm/panel: ilitek-ili9881c: Fix warning with GPIO controllers that sleep

2024-03-18 Thread Laurent Pinchart
Hi Neil, On Mon, Mar 18, 2024 at 10:03:21AM +0100, Neil Armstrong wrote: > On 17/03/2024 16:48, Laurent Pinchart wrote: > > The ilitek-ili9881c controls the reset GPIO using the non-sleeping > > gpiod_set_value() function. This complains loudly when the GPIO > > cont

[PATCH 1/2] dt-bindings: ili9881c: Add Startek KD050HDFIA020-C020A support

2024-03-17 Thread Laurent Pinchart
Document the compatible value for Startek KD050HDFIA020-C020A panels. Signed-off-by: Laurent Pinchart --- .../devicetree/bindings/display/panel/ilitek,ili9881c.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/display/panel/ilitek,ili9881c.yaml b

[PATCH 2/2] drm/panel: ilitek-ili9881c: Add Startek KD050HDFIA020-C020A support

2024-03-17 Thread Laurent Pinchart
-by: Laurent Pinchart --- drivers/gpu/drm/panel/panel-ilitek-ili9881c.c | 222 ++ 1 file changed, 222 insertions(+) diff --git a/drivers/gpu/drm/panel/panel-ilitek-ili9881c.c b/drivers/gpu/drm/panel/panel-ilitek-ili9881c.c index 2ffe5f68a890..80b386f91320 100644 --- a/drivers/gpu/drm/panel

[PATCH 0/2] drm/panel: Add Startek KD050HDFIA020-C020A support

2024-03-17 Thread Laurent Pinchart
-iMX8MPLUS carrier board. Laurent Pinchart (2): dt-bindings: ili9881c: Add Startek KD050HDFIA020-C020A support drm/panel: ilitek-ili9881c: Add Startek KD050HDFIA020-C020A support .../display/panel/ilitek,ili9881c.yaml| 1 + drivers/gpu/drm/panel/panel-ilitek-ili9881c.c | 222

[PATCH] drm/panel: ilitek-ili9881c: Fix warning with GPIO controllers that sleep

2024-03-17 Thread Laurent Pinchart
The ilitek-ili9881c controls the reset GPIO using the non-sleeping gpiod_set_value() function. This complains loudly when the GPIO controller needs to sleep. As the caller can sleep, use gpiod_set_value_cansleep() to fix the issue. Signed-off-by: Laurent Pinchart --- drivers/gpu/drm/panel/panel

Re: [PATCH v3 2/2] drm/bridge: adv7511: get edid in hpd_work to update CEC phys address

2024-03-05 Thread Laurent Pinchart
if (!adv7511->powered) > - __adv7511_power_off(adv7511); > - > - adv7511_set_config_csc(adv7511, connector, adv7511->rgb, > -drm_detect_hdmi_monitor(edid)); > - > - cec_s_phys_addr_from_edid(adv7511->cec_adap, edid); > - > - return edid; > + return __adv7511_get_edid(adv7511, connector); > } > > static int adv7511_get_modes(struct adv7511 *adv7511, > -- Regards, Laurent Pinchart

Re: [PATCH v3 1/2] drm/bridge: adv7511: rearrange hotplug work code

2024-03-05 Thread Laurent Pinchart
ed-by: Robert Foss > Signed-off-by: Alvin Šipraga Reviewed-by: Laurent Pinchart > --- > drivers/gpu/drm/bridge/adv7511/adv7511_drv.c | 120 > ++- > 1 file changed, 62 insertions(+), 58 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/adv7511/ad

Re: [PATCH V2 1/2] drm/bridge: adv7511: Allow IRQ to share GPIO pins

2024-03-05 Thread Laurent Pinchart
o handle the IRQ and return > IRQ_NONE if there is nothing to handle. With the check added > and the return code properly indicating whether or not it there > was an IRQ, the IRQF_SHARED can be set to share a GPIO IRQ. > > Signed-off-by: Adam Ford Reviewed-by: Laurent Pinchart >

Re: [PATCH 1/2] drm/bridge: adv7511: Allow IRQ to share GPIO pins

2024-03-03 Thread Laurent Pinchart
On Sun, Mar 03, 2024 at 09:44:03AM -0600, Adam Ford wrote: > On Wed, Feb 28, 2024 at 10:31 AM Laurent Pinchart wrote: > > On Wed, Feb 28, 2024 at 05:37:35AM -0600, Adam Ford wrote: > > > The IRQ registration currently assumes that the GPIO is > > > dedicated to it, b

Re: [PATCH v2 0/9] drm: Switch from dev_err to dev_err_probe for missing DSI host error path

2024-03-01 Thread Laurent Pinchart
On Fri, Mar 01, 2024 at 11:19:27AM -0500, Nícolas F. R. A. Prado wrote: > On Fri, Mar 01, 2024 at 08:34:31AM +0200, Laurent Pinchart wrote: > > Hi Nícolas, > > > > On Thu, Feb 29, 2024 at 07:12:06PM -0500, Nícolas F. R. A. Prado wrote: > > > This series changes ev

Re: [PATCH v2 9/9] drm/panel: truly-nt35597: Don't log an error when DSI host can't be found

2024-03-01 Thread Laurent Pinchart
On Fri, Mar 01, 2024 at 09:44:36AM +0100, AngeloGioacchino Del Regno wrote: > Il 01/03/24 07:30, Laurent Pinchart ha scritto: > > On Thu, Feb 29, 2024 at 07:12:15PM -0500, Nícolas F. R. A. Prado wrote: > >> Given that failing to find a DSI host causes the driver to defer pr

Re: [PATCH v2 0/9] drm: Switch from dev_err to dev_err_probe for missing DSI host error path

2024-02-29 Thread Laurent Pinchart
++ > drivers/gpu/drm/panel/panel-novatek-nt35950.c | 6 ++ > drivers/gpu/drm/panel/panel-truly-nt35597.c | 6 ++ > 9 files changed, 25 insertions(+), 40 deletions(-) > --- > base-commit: 2ae0a045e6814c8c1d676d6153c605a65746aa29 > change-id: 20240226-anx7625-defer-log-no-dsi-host-c3f9ccbcb287 -- Regards, Laurent Pinchart

Re: [PATCH v2 9/9] drm/panel: truly-nt35597: Don't log an error when DSI host can't be found

2024-02-29 Thread Laurent Pinchart
OBE_DEFER; > - } > + if (!dsi1_host) > + return dev_err_probe(dev, -EPROBE_DEFER, "failed to find dsi > host\n"); return dev_err_probe(dev, -EPROBE_DEFER, "failed to find dsi host\n"); With

Re: [PATCH v2 8/9] drm/panel: novatek-nt35950: Don't log an error when DSI host can't be found

2024-02-29 Thread Laurent Pinchart
ER, "Cannot get > secondary DSI host\n"); return dev_err_probe(dev, -EPROBE_DEFER, "Cannot get secondary DSI host\n"); With this, Reviewed-by: Laurent Pinchart > > nt->dsi[1] = mipi_dsi_device_register_full(dsi_r_host, info); > if (!nt->dsi[1]) { > -- Regards, Laurent Pinchart

Re: [PATCH 0/3] kci-gitlab: Introducing GitLab-CI Pipeline for Kernel Testing

2024-02-29 Thread Laurent Pinchart
On Thu, Feb 29, 2024 at 02:20:41PM +0200, Laurent Pinchart wrote: > On Thu, Feb 29, 2024 at 12:53:38PM +0100, Guillaume Tucker wrote: > > On 29/02/2024 12:41, Mark Brown wrote: > > > On Thu, Feb 29, 2024 at 01:19:19PM +0200, Laurent Pinchart wrote: > > >> On Thu, Fe

Re: [PATCH 0/3] kci-gitlab: Introducing GitLab-CI Pipeline for Kernel Testing

2024-02-29 Thread Laurent Pinchart
On Thu, Feb 29, 2024 at 12:53:38PM +0100, Guillaume Tucker wrote: > On 29/02/2024 12:41, Mark Brown wrote: > > On Thu, Feb 29, 2024 at 01:19:19PM +0200, Laurent Pinchart wrote: > >> On Thu, Feb 29, 2024 at 01:10:16PM +0200, Nikolai Kondrashov wrote: > > > >>

Re: [PATCH 0/3] kci-gitlab: Introducing GitLab-CI Pipeline for Kernel Testing

2024-02-29 Thread Laurent Pinchart
On Thu, Feb 29, 2024 at 01:10:16PM +0200, Nikolai Kondrashov wrote: > On 2/29/24 11:34 AM, Laurent Pinchart wrote: > > On Thu, Feb 29, 2024 at 11:26:51AM +0200, Nikolai Kondrashov wrote: > >> On 2/29/24 01:07, Laurent Pinchart wrote: > >>> On Wed, Feb 28, 2024 at

Re: [RFC] drm/fourcc: Add RPI modifiers

2024-02-29 Thread Laurent Pinchart
On Thu, Feb 29, 2024 at 11:39:24AM +0100, Daniel Vetter wrote: > On Wed, Feb 28, 2024 at 01:13:45PM +0200, Laurent Pinchart wrote: > > On Wed, Feb 28, 2024 at 11:41:57AM +0100, Jacopo Mondi wrote: > > > On Tue, Feb 27, 2024 at 03:08:27PM +0200, Laurent Pinchart wrote: > >

Re: [PATCH 1/3] kci-gitlab: Introducing GitLab-CI Pipeline for Kernel Testing

2024-02-29 Thread Laurent Pinchart
, *inside* the repo (somewhere > > under "ci" directory) instead. > > > > This way all the different subtrees can have completely different setup, but > > some could still use Helen's work and employ the "scenarios" she > > implemented. > > I'm worried that this kind of setup will just create duplicated YAML > that will be developped in complete silos and will become difficult to > maintain. But that's definitely an opinion :) -- Regards, Laurent Pinchart

Re: [PATCH 0/3] kci-gitlab: Introducing GitLab-CI Pipeline for Kernel Testing

2024-02-29 Thread Laurent Pinchart
On Thu, Feb 29, 2024 at 11:26:51AM +0200, Nikolai Kondrashov wrote: > On 2/29/24 01:07, Laurent Pinchart wrote: > > On Wed, Feb 28, 2024 at 07:55:24PM -0300, Helen Koike wrote: > >> **Join Our Slack Channel:** > >> We have a Slack channel, #gitlab-ci, on the KernelCI

Re: [PATCH] drm: xlnx: dp: Reset DisplayPort IP

2024-02-29 Thread Laurent Pinchart
Tomi, could you push this through drm-misc ? On Wed, Feb 28, 2024 at 06:22:25PM +0200, Laurent Pinchart wrote: > Hello Rohit, > > Thank you for the patch. > > On Fri, Feb 16, 2024 at 04:40:43AM -0800, Rohit Visavalia wrote: > > Assert DisplayPort reset sign

Re: [PATCH 0/3] kci-gitlab: Introducing GitLab-CI Pipeline for Kernel Testing

2024-02-28 Thread Laurent Pinchart
-scripts/run-smatch.sh > create mode 100644 ci/gitlab-ci/docker-compose.yaml > create mode 100644 ci/gitlab-ci/linux.code-workspace > create mode 100644 ci/gitlab-ci/yml/build.yml > create mode 100644 ci/gitlab-ci/yml/cache.yml > create mode 100644 ci/gitlab-ci/yml/container.yml > create mode 100644 ci/gitlab-ci/yml/gitlab-ci.yml > create mode 100644 ci/gitlab-ci/yml/kernel-combinations.yml > create mode 100644 ci/gitlab-ci/yml/scenarios.yml > create mode 100644 ci/gitlab-ci/yml/scenarios/file-systems.yml > create mode 100644 ci/gitlab-ci/yml/scenarios/media.yml > create mode 100644 ci/gitlab-ci/yml/scenarios/network.yml > create mode 100644 ci/gitlab-ci/yml/static-checks.yml -- Regards, Laurent Pinchart

Re: [PATCH 2/2] arm64: dts: imx8mp-beacon-kit: Enable HDMI bridge HPD

2024-02-28 Thread Laurent Pinchart
an reflow the commit message to 72 columns. > Signed-off-by: Adam Ford Reviewed-by: Laurent Pinchart > diff --git a/arch/arm64/boot/dts/freescale/imx8mp-beacon-kit.dts > b/arch/arm64/boot/dts/freescale/imx8mp-beacon-kit.dts > index 8de4dd268908..d854c94ec997 100644 > --- a/arch/

Re: [PATCH 1/2] drm/bridge: adv7511: Allow IRQ to share GPIO pins

2024-02-28 Thread Laurent Pinchart
return ret < 0 ? IRQ_NONE : IRQ_HANDLED; } The function will return IRQ_HANDLED as long as the registers can be read, even if they don't report any interrupt. > adv7511); > if (ret) > goto err_unregister_audio; -- Regards, Laurent Pinchart

Re: [PATCH] drm: xlnx: dp: Reset DisplayPort IP

2024-02-28 Thread Laurent Pinchart
ynqmp_dp.c > @@ -1714,6 +1714,10 @@ int zynqmp_dp_probe(struct zynqmp_dpsub *dpsub) > goto err_free; > } > > + ret = zynqmp_dp_reset(dp, true); > + if (ret < 0) > + return ret; > + This looks fine to me, so Reviewed-by: Laurent Pin

Re: [PATCH 4/4] drm/atomic-helper: Add select_output_bus_format callback

2024-02-28 Thread Laurent Pinchart
t_output_bus_format > > +* > > +* Called by the first connected DRM bridge to negotiate input media > > +* bus format. CRTC is expected to pick preferable media formats from > > +* the list supported by the DRM bridge chain. > > There's nothing restricting it to bridges here. Please rephrase this to > remove the bridge mention. The user is typically going to be the > encoder, and bridges are just an automagic implementation of an encoder. > > And generally speaking, I'd really like to have an implementation > available before merging this. There's a downstream implementation in the Xilinx kernel, which would indeed be nice to upstream. This shouldn't block patches 1/4 to 3/4 though, those can be merged once review comments are taken into account. -- Regards, Laurent Pinchart

Re: [PATCH 3/4] drm: xlnx: zynqmp_dpsub: Set input live format

2024-02-28 Thread Laurent Pinchart
if (!bridge_state) return; bus_fmt = bridge_state->input_bus_cfg.format; zynqmp_disp_layer_set_live_format(layer, bus_fmt); But more importantly, why would this fail ? If it does something is seriously wrong and the display won't be working. I'd expect at least a warning, but you should instead ensure it never fails. > > - /* TODO: Make the format configurable. */ > - info = drm_format_info(DRM_FORMAT_YUV422); > - zynqmp_disp_layer_set_format(layer, info); > zynqmp_disp_layer_enable(layer); > > if (layer_id == ZYNQMP_DPSUB_LAYER_GFX) > -- Regards, Laurent Pinchart

Re: [PATCH 2/4] drm: xlnx: zynqmp_dpsub: Anounce supported input formats

2024-02-28 Thread Laurent Pinchart
100644 > --- a/drivers/gpu/drm/xlnx/zynqmp_dp.c > +++ b/drivers/gpu/drm/xlnx/zynqmp_dp.c > @@ -1580,6 +1580,7 @@ static const struct drm_bridge_funcs > zynqmp_dp_bridge_funcs = { > .atomic_check = zynqmp_dp_bridge_atomic_check, > .detect = zynqmp_dp_bridge_detect, > .edid_read = zynqmp_dp_bridge_edid_read, > + .atomic_get_input_bus_fmts = zynqmp_disp_get_input_bus_fmts, > }; > > /* > - -- Regards, Laurent Pinchart

Re: [PATCH 1/4] drm: xlnx: zynqmp_dpsub: Set layer mode during creation

2024-02-28 Thread Laurent Pinchart
e dpsub works in either live or non-live mode > for both layers. > + * Hybrid mode is not supported yet. > + */ /* * For now assume dpsub works in either live or non-live mode * for both layers. Hybrid

Re: [RFC] drm/fourcc: Add RPI modifiers

2024-02-28 Thread Laurent Pinchart
On Wed, Feb 28, 2024 at 11:41:57AM +0100, Jacopo Mondi wrote: > On Tue, Feb 27, 2024 at 03:08:27PM +0200, Laurent Pinchart wrote: > > On Mon, Feb 26, 2024 at 04:46:24PM +0100, Daniel Vetter wrote: > > > On Mon, 26 Feb 2024 at 16:39, Jacopo Mondi wrote: > > &

Re: [RFC] drm/fourcc: Add RPI modifiers

2024-02-27 Thread Laurent Pinchart
y. > > Would you be ok with me replicating the above description (or maybe > just reference the V4L2 documentation ?) > > > > --- > > > include/uapi/drm/drm_fourcc.h | 5 + > > > 1 file changed, 5 insertions(+) > > > > > > diff --git a/include/uapi/drm/drm_fourcc.h b/include/uapi/drm/drm_fourcc.h > > > index 00db00083175..09b182a959ad 100644 > > > --- a/include/uapi/drm/drm_fourcc.h > > > +++ b/include/uapi/drm/drm_fourcc.h > > > @@ -425,6 +425,7 @@ extern "C" { > > > #define DRM_FORMAT_MOD_VENDOR_ARM 0x08 > > > #define DRM_FORMAT_MOD_VENDOR_ALLWINNER 0x09 > > > #define DRM_FORMAT_MOD_VENDOR_AMLOGIC 0x0a > > > +#define DRM_FORMAT_MOD_VENDOR_RPI 0x0b > > > > > > /* add more to the end as needed */ > > > > > > @@ -1568,6 +1569,10 @@ drm_fourcc_canonicalize_nvidia_format_mod(__u64 > > > modifier) > > > #define AMD_FMT_MOD_CLEAR(field) \ > > > (~((__u64)AMD_FMT_MOD_##field##_MASK << > > > AMD_FMT_MOD_##field##_SHIFT)) > > > > > > +/* RPI (Raspberry Pi) modifiers */ > > > +#define PISP_FORMAT_MOD_COMPRESS_MODE1 fourcc_mod_code(RPI, 1) > > > +#define PISP_FORMAT_MOD_COMPRESS_MODE2 fourcc_mod_code(RPI, 2) > > > + > > > #if defined(__cplusplus) > > > } > > > #endif -- Regards, Laurent Pinchart

Re: [RFC] drm/fourcc: Add RPI modifiers

2024-02-27 Thread Laurent Pinchart
0db00083175..09b182a959ad 100644 > > --- a/include/uapi/drm/drm_fourcc.h > > +++ b/include/uapi/drm/drm_fourcc.h > > @@ -425,6 +425,7 @@ extern "C" { > > #define DRM_FORMAT_MOD_VENDOR_ARM 0x08 > > #define DRM_FORMAT_MOD_VENDOR_ALLWINNER 0x09 > > #define DRM_FORMAT_MOD_VENDOR_AMLOGIC 0x0a > > +#define DRM_FORMAT_MOD_VENDOR_RPI 0x0b > > > > /* add more to the end as needed */ > > > > @@ -1568,6 +1569,10 @@ drm_fourcc_canonicalize_nvidia_format_mod(__u64 > > modifier) > > #define AMD_FMT_MOD_CLEAR(field) \ > > (~((__u64)AMD_FMT_MOD_##field##_MASK << > > AMD_FMT_MOD_##field##_SHIFT)) > > > > +/* RPI (Raspberry Pi) modifiers */ > > +#define PISP_FORMAT_MOD_COMPRESS_MODE1 fourcc_mod_code(RPI, 1) > > +#define PISP_FORMAT_MOD_COMPRESS_MODE2 fourcc_mod_code(RPI, 2) > > + > > #if defined(__cplusplus) > > } > > #endif -- Regards, Laurent Pinchart

Re: [PATCH V8 09/12] dt-bindings: display: imx: add binding for i.MX8MP HDMI TX

2024-02-16 Thread Laurent Pinchart
< IMX8MP_CLK_HDMI_REF_266M>, > > + < IMX8MP_CLK_32K>, > > + <_tx_phy>; > > +clock-names = "iahb", "isfr", "cec", "pix"; > > +power-domains = <_blk_ctrl IMX8MP_HDMIBLK_PD_HDMI_TX>; > > +reg-io-width = <1>; > > +ports { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + port@0 { > > + reg = <0>; > > + > > + hdmi_tx_from_pvi: endpoint { > > + remote-endpoint = <_to_hdmi_tx>; > > + }; > > + }; > > + > > + port@1 { > > +reg = <1>; > > + hdmi_tx_out: endpoint { > > +remote-endpoint = <_con>; > > + }; > > + }; > > +}; > > +}; -- Regards, Laurent Pinchart

Re: [PATCH 3/4] media: platform: replace of_graph_get_next_endpoint()

2024-02-07 Thread Laurent Pinchart
t, see > > Documentation/devicetree/bindings/media/samsung,exynos4210-csis.yaml. > > Hmm... Then, It can be like this ? > > + node = of_graph_get_endpoint_by_regs(node, -1, -1); I suppose that would work, even if we should really try not to pass -1 for the port. Rob, any opinion ? -- Regards, Laurent Pinchart

Re: [PATCH 2/4] media: i2c: replace of_graph_get_next_endpoint()

2024-02-07 Thread Laurent Pinchart
On Wed, Feb 07, 2024 at 02:13:05PM +0100, Krzysztof Hałasa wrote: > Laurent, > > Laurent Pinchart writes: > > >> +++ b/drivers/media/i2c/adv7604.c > >> @@ -3205,7 +3205,7 @@ static int adv76xx_parse_dt(struct adv76xx_state > >> *state) > >&g

Re: [PATCH 2/4] media: i2c: replace of_graph_get_next_endpoint()

2024-02-07 Thread Laurent Pinchart
gt; u-boot update :-( > > May be reversible, though. Maybe Morimoto-san could help ? :-) What board did you use Hans ? -- Regards, Laurent Pinchart

  1   2   3   4   5   6   7   8   9   10   >