From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.0 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6AA6CC433E2 for ; Sat, 5 Sep 2020 11:51:21 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 9C72620738 for ; Sat, 5 Sep 2020 11:51:20 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="FzmHSmdo" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9C72620738 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=sigxcpu.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References:Message-ID: Subject:To:From:Date:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=LIWnMaAEdoQEpdhgpUUf8LqIsindjh5urkAhAVOFKrw=; b=FzmHSmdonE2JX2W+Frv6TryOs ImfDvj1fKShS8igFt6i13/xSM5rGdxC8afBYnF/oTR2l5un3CeK3Ol43NIvkhsIwbOy3s853Yxm1l mbPynySpVUgKIVD0Crd7rlKdnR7MAUOLfTIVC6Vi0pcJl1MJmnxeF5m7yZFQz1HN4NAIRAFDsKQVJ xl0a6ZF97MBIAuLdIw07/ARrVt///hkssL5INAfid8xgnN5wtJTJ7ewxxUxJygaeNENVnrrwr0/42 M4kABLrmNLesowFZ0Nw6VrMhxc9SwtXrNAss0cmT86ZOKGDdqs4lCSW4eIhpEegGUt2FK+a1t9pBt ncVRgo+UQ==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kEWhl-0007T5-Um; Sat, 05 Sep 2020 11:50:01 +0000 Received: from honk.sigxcpu.org ([24.134.29.49]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kEWhh-0007Sb-KO for linux-arm-kernel@lists.infradead.org; Sat, 05 Sep 2020 11:49:59 +0000 Received: from localhost (localhost [127.0.0.1]) by honk.sigxcpu.org (Postfix) with ESMTP id 6D8F6FB03; Sat, 5 Sep 2020 13:49:52 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at honk.sigxcpu.org Received: from honk.sigxcpu.org ([127.0.0.1]) by localhost (honk.sigxcpu.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id h1Oeo-a0KcPD; Sat, 5 Sep 2020 13:49:49 +0200 (CEST) Received: by bogon.sigxcpu.org (Postfix, from userid 1000) id 2433B45B81; Sat, 5 Sep 2020 13:49:49 +0200 (CEST) Date: Sat, 5 Sep 2020 13:49:49 +0200 From: Guido =?iso-8859-1?Q?G=FCnther?= To: Laurentiu Palcu Subject: Re: [PATCH v9 0/5] Add support for iMX8MQ Display Controller Subsystem Message-ID: <20200905114949.GA111526@bogon.m.sigxcpu.org> References: <20200731081836.3048-1-laurentiu.palcu@oss.nxp.com> <20200731085429.GD12560@bogon.m.sigxcpu.org> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20200731085429.GD12560@bogon.m.sigxcpu.org> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200905_074957_980223_EA22A66F X-CRM114-Status: GOOD ( 45.81 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, Fabio Estevam , lukas@mntmn.com, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, NXP Linux Team , Pengutronix Kernel Team , Laurentiu Palcu , linux-arm-kernel@lists.infradead.org, Lucas Stach Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Hi Laurentiu, On Fri, Jul 31, 2020 at 10:54:29AM +0200, Guido G=FCnther wrote: > Hi, > On Fri, Jul 31, 2020 at 11:18:28AM +0300, Laurentiu Palcu wrote: > > From: Laurentiu Palcu > > = > > Hi, > > = > > This patchset adds initial DCSS support for iMX8MQ chip. Initial support > > includes only graphics plane support (no video planes), no HDR10 capabi= lities, > > no graphics decompression (only linear, tiled and super-tiled buffers a= llowed). > > = > > Support for the rest of the features will be added incrementally, in su= bsequent > > patches. > > = > > The patchset was tested with both HDP driver (in the downstream tree) a= nd the upstream > > MIPI-DSI driver (with a couple of patches on top, to make it work corre= ctly with DCSS). > > = > > Thanks, > > Laurentiu > > = > > Changes in v9: > > * Fixed a compilation issue found by Guido in his setup: 'select > > VIDEOMODE_HELPERS' was missing from Kconfig; > > * Use imx8mq-clock.h in the bindings file so one can understand what > > those clock values mean; > > * no other changes done. Couldn't address the hang Guido reported as > > it's not happening in my setup. However, in my tree, there are some > > extra NWL and ADV patches applied on top of upstream ones... Also, > > removing them and testing only with upstream, even if there's no > > image out, does not produce a hang... :/ > = > I don't think this should hold up merging. And i retested your v9 series on next-20200903 on a librem5 devkit and it works. Looking back I spotted an error in my clock configuration, so Tested-by: Guido G=FCnther Cheers, -- Guido > Cheers, > -- Guido > = > > = > > Changes in v8: > > * Removed 'select RESET_CONTROLLER" from Kconfig as Philipp pointed > > out. SRC is not used in DCSS driver; > > * Nothing else changed; > > = > > Changes in v7: > > * Added a patch to initialize the connector using the drm_bridge_conne= ctor > > API as Sam suggested. Tested it using NWL_DSI and ADV7535 with > > Guido's patch [1] applied and one fix for ADV [2]. Also, some extra > > patches for ADV and NWL were needed, from our downstream tree, which > > will be upstreamed soon by their author; > > * Rest of the patches are untouched; > > = > > [1] https://lists.freedesktop.org/archives/dri-devel/2020-July/273025.h= tml > > [2] https://lists.freedesktop.org/archives/dri-devel/2020-July/273132.h= tml > > = > > Changes in v6: > > * Addressed Rob's comment and added "additionalProperties: false" at > > the end of the bindings' properties. However, this change surfaced > > an issue with the assigned-clock* properties not being documented in > > the properties section. Added the descriptions and the bindings patch > > will need another review; > > * Added an entry for DCSS driver in the MAINTAINERS file; > > * Removed the component framework patch altogether; > > = > > Changes in v5: > > * Rebased to latest; > > * Took out component framework support and made it a separate patch so > > that people can still test with HDP driver, which makes use of it. > > But the idea is to get rid of it once HDP driver's next versions > > will remove component framework as well; > > * Slight improvement to modesetting: avoid cutting off the pixel clock > > if the new mode and the old one are equal. Also, in this case, is > > not necessary to wait for DTG to shut off. This would allow to switch > > from 8b RGB to 12b YUV422, for example, with no interruptions (at le= ast > > from DCSS point of view); > > * Do not fire off CTXLD when going to suspend, unless it still has > > entries that need to be committed to DCSS; > > * Addressed Rob's comments on bindings; > > = > > Changes in v4: > > * Addressed Lucas and Philipp's comments: > > * Added DRM_KMS_CMA_HELPER dependency in Kconfig; > > * Removed usage of devm_ functions since I'm already doing all the > > clean-up in the submodules_deinit(); > > * Moved the drm_crtc_arm_vblank_event() in dcss_crtc_atomic_flush(); > > * Removed en_completion variable from dcss_crtc since this was > > introduced mainly to avoid vblank timeout warnings which were fixed > > by arming the vblank event in flush() instead of begin(); > > * Removed clks_on and irq_enabled flags since all the calls to > > enabling/disabling clocks and interrupts were balanced; > > * Removed the custom atomic_commit callback and used the DRM core > > helper and, in the process, got rid of a workqueue that wasn't > > necessary anymore; > > * Fixed some minor DT binding issues flagged by Philipp; > > * Some other minor changes suggested by Lucas; > > * Removed YUV formats from the supported formats as these cannot work > > without the HDR10 module CSCs and LUTs. Will add them back when I > > will add support for video planes; > > = > > Changes in v3: > > * rebased to latest linux-next and made it compile as drmP.h was > > removed; > > * removed the patch adding the VIDEO2_PLL clock. It's already applied; > > * removed an unnecessary 50ms sleep in the dcss_dtg_sync_set(); > > * fixed a a spurious hang reported by Lukas Hartmann and encountered > > by me several times; > > * mask DPR and DTG interrupts by default, as they may come enabled from > > U-boot; > > = > > Changes in v2: > > * Removed '0x' in node's unit-address both in DT and yaml; > > * Made the address region size lowercase, to be consistent; > > * Removed some left-over references to P010; > > * Added a Kconfig dependency of DRM && ARCH_MXC. This will also silenc= e compilation > > issues reported by kbuild for other architectures; > > = > > = > > Laurentiu Palcu (5): > > drm/imx: compile imx directory by default > > drm/imx: Add initial support for DCSS on iMX8MQ > > drm/imx/dcss: use drm_bridge_connector API > > MAINTAINERS: Add entry for i.MX 8MQ DCSS driver > > dt-bindings: display: imx: add bindings for DCSS > > = > > .../bindings/display/imx/nxp,imx8mq-dcss.yaml | 108 +++ > > MAINTAINERS | 8 + > > drivers/gpu/drm/Makefile | 2 +- > > drivers/gpu/drm/imx/Kconfig | 2 + > > drivers/gpu/drm/imx/Makefile | 1 + > > drivers/gpu/drm/imx/dcss/Kconfig | 9 + > > drivers/gpu/drm/imx/dcss/Makefile | 6 + > > drivers/gpu/drm/imx/dcss/dcss-blkctl.c | 70 ++ > > drivers/gpu/drm/imx/dcss/dcss-crtc.c | 219 +++++ > > drivers/gpu/drm/imx/dcss/dcss-ctxld.c | 424 +++++++++ > > drivers/gpu/drm/imx/dcss/dcss-dev.c | 325 +++++++ > > drivers/gpu/drm/imx/dcss/dcss-dev.h | 177 ++++ > > drivers/gpu/drm/imx/dcss/dcss-dpr.c | 562 ++++++++++++ > > drivers/gpu/drm/imx/dcss/dcss-drv.c | 138 +++ > > drivers/gpu/drm/imx/dcss/dcss-dtg.c | 409 +++++++++ > > drivers/gpu/drm/imx/dcss/dcss-kms.c | 198 +++++ > > drivers/gpu/drm/imx/dcss/dcss-kms.h | 44 + > > drivers/gpu/drm/imx/dcss/dcss-plane.c | 405 +++++++++ > > drivers/gpu/drm/imx/dcss/dcss-scaler.c | 826 ++++++++++++++++++ > > drivers/gpu/drm/imx/dcss/dcss-ss.c | 180 ++++ > > 20 files changed, 4112 insertions(+), 1 deletion(-) > > create mode 100644 Documentation/devicetree/bindings/display/imx/nxp,i= mx8mq-dcss.yaml > > create mode 100644 drivers/gpu/drm/imx/dcss/Kconfig > > create mode 100644 drivers/gpu/drm/imx/dcss/Makefile > > create mode 100644 drivers/gpu/drm/imx/dcss/dcss-blkctl.c > > create mode 100644 drivers/gpu/drm/imx/dcss/dcss-crtc.c > > create mode 100644 drivers/gpu/drm/imx/dcss/dcss-ctxld.c > > create mode 100644 drivers/gpu/drm/imx/dcss/dcss-dev.c > > create mode 100644 drivers/gpu/drm/imx/dcss/dcss-dev.h > > create mode 100644 drivers/gpu/drm/imx/dcss/dcss-dpr.c > > create mode 100644 drivers/gpu/drm/imx/dcss/dcss-drv.c > > create mode 100644 drivers/gpu/drm/imx/dcss/dcss-dtg.c > > create mode 100644 drivers/gpu/drm/imx/dcss/dcss-kms.c > > create mode 100644 drivers/gpu/drm/imx/dcss/dcss-kms.h > > create mode 100644 drivers/gpu/drm/imx/dcss/dcss-plane.c > > create mode 100644 drivers/gpu/drm/imx/dcss/dcss-scaler.c > > create mode 100644 drivers/gpu/drm/imx/dcss/dcss-ss.c > > = > > -- = > > 2.23.0 > > = _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel