From patchwork Wed Nov 24 21:29:06 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "H. Nikolaus Schaller" X-Patchwork-Id: 12637871 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 4893AC433F5 for ; Wed, 24 Nov 2021 21:29:20 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 3B2746E94F; Wed, 24 Nov 2021 21:29:19 +0000 (UTC) Received: from mo4-p02-ob.smtp.rzone.de (mo4-p02-ob.smtp.rzone.de [81.169.146.170]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4E1436E94E for ; Wed, 24 Nov 2021 21:29:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1637789356; s=strato-dkim-0002; d=goldelico.com; h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender; bh=s+XP7XX8WOKnKS2FLd3b1+8eE6EUd/gtlWJWSrLiXto=; b=JBq2HZOfXfRir6hqsZEJVs2yp2nsSGVD3brwhykJcxwDVjW+ePOBCjSkqZ+JEXhf/K FykupFerF+tpcrrjheZdZBCUfRiSBG9ZB2H6h3Ns1BK7GXr41m4rXTWQBp68EWk4piAJ VMgftSZ9dsA/aeY6SkepggfbLF0aHSV1hgoaRJ/4KQEhsNWnjz/uD3G6si56AjF9avZP CW5j5zI0Gsotnjfrqm1lAHVIxRZqntyyvITrhkqCrMkTmKFfdXdw1XmUpAclMgEOhHbI R2GAPOmIMFMjDjEB7//R7C0GivFivcwyVEDvQYi1seLoshDWXyGB0/l4dknxQKDRkDI6 tPTg== Authentication-Results: strato.com; dkim=none X-RZG-AUTH: ":JGIXVUS7cutRB/49FwqZ7WcJeFKiMhflhwDubTJ9o1KHeBQyh+ITDDRsZQ==" X-RZG-CLASS-ID: mo00 Received: from iMac.fritz.box by smtp.strato.de (RZmta 47.34.10 DYNA|AUTH) with ESMTPSA id e05ed8xAOLTF5Ap (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Wed, 24 Nov 2021 22:29:15 +0100 (CET) From: "H. Nikolaus Schaller" To: Paul Cercueil , Rob Herring , Mark Rutland , Thomas Bogendoerfer , "H. Nikolaus Schaller" , Geert Uytterhoeven , Kees Cook , "Eric W. Biederman" , Miquel Raynal , David Airlie , Daniel Vetter , Neil Armstrong , Robert Foss , Laurent Pinchart , Jernej Skrabec , Ezequiel Garcia , Harry Wentland , Sam Ravnborg , Maxime Ripard , Hans Verkuil , Liam Girdwood , Mark Brown , Paul Boddie Subject: [PATCH v9 0/8] MIPS: JZ4780 and CI20 HDMI Date: Wed, 24 Nov 2021 22:29:06 +0100 Message-Id: X-Mailer: git-send-email 2.33.0 MIME-Version: 1.0 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, Jonas Karlman , linux-mips@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, letux-kernel@openphoenux.org Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" PATCH V9 2021-11-24 22:29:14: - patch 6/8: remove optional <0> for assigned-clocks and unintentionally included "unwedge" setup (found by paul@crapouillou.net) - patch 4/8: some cosmetics make regulator enable/disable only if not NULL (found by paul@crapouillou.net) simplify/fix error handling and driver cleanup on remove (proposed by paul@crapouillou.net) - patch 3/8: fix #include path in example (found by paul@crapouillou.net) fix missing "i" in unevaluatedProperties (found by robh@kernel.org) fix 4 spaces indentation for required: property (found by robh@kernel.org) PATCH V8 2021-11-23 19:14:00: - fix a bad editing result from patch 2/8 (found by paul@crapouillou.net) PATCH V7 2021-11-23 18:46:23: - changed gpio polarity of hdmi_power to 0 (suggested by paul@crapouillou.net) - fixed LCD1 irq number (bug found by paul@crapouillou.net) - removed "- 4" for calculating max_register (suggested by paul@crapouillou.net) - use unevaluatedPropertes instead of additionalProperties (suggested by robh@kernel.org) - moved and renamed ingenic,jz4780-hdmi.yaml (suggested by robh@kernel.org) - adjusted assigned-clocks changes to upstream which added some for SSI (by hns@goldelico.com) - rebased and tested with v5.16-rc2 + patch set drm/ingenic by paul@crapouillou.net (by hns@goldelico.com) PATCH V6 2021-11-10 20:43:33: - changed CONFIG_DRM_INGENIC_DW_HDMI to "m" (by hns@goldelico.com) - made ingenic-dw-hdmi an independent platform driver which can be compiled as module and removed error patch fixes for IPU (suggested by paul@crapouillou.net) - moved assigned-clocks from jz4780.dtsi to ci20.dts (suggested by paul@crapouillou.net) - fixed reg property in jz4780.dtsi to cover all registers incl. gamma and vee (by hns@goldelico.com) - added a base patch to calculate regmap size from DTS reg property (requested by paul@crapouillou.net) - restored resetting all bits except one in LCDOSDC (requested by paul@crapouillou.net) - clarified setting of cpos (suggested by paul@crapouillou.net) - moved bindings definition for ddc-i2c-bus (suggested by paul@crapouillou.net) - simplified mask definitions for JZ_LCD_DESSIZE (requested by paul@crapouillou.net) - removed setting alpha premultiplication (suggested by paul@crapouillou.net) - removed some comments (suggested by paul@crapouillou.net) PATCH V5 2021-10-05 14:28:44: - dropped mode_fixup and timings support in dw-hdmi as it is no longer needed in this V5 (by hns@goldelico.com) - dropped "drm/ingenic: add some jz4780 specific features" (stimulated by paul@crapouillou.net) - fixed typo in commit subject: "synopsis" -> "synopsys" (by hns@goldelico.com) - swapped clocks in jz4780.dtsi to match synopsys,dw-hdmi.yaml (by hns@goldelico.com) - improved, simplified, fixed, dtbschecked ingenic-jz4780-hdmi.yaml and made dependent of bridge/synopsys,dw-hdmi.yaml (based on suggestions by maxime@cerno.tech) - fixed binding vs. driver&DTS use of hdmi-5v regulator (suggested by maxime@cerno.tech) - dropped "drm/bridge: synopsis: Fix to properly handle HPD" - was a no longer needed workaround for a previous version (suggested by maxime@cerno.tech) PATCH V4 2021-09-27 18:44:38: - fix setting output_port = 1 (issue found by paul@crapouillou.net) - ci20.dts: convert to use hdmi-connector (by hns@goldelico.com) - add a hdmi-regulator to control +5V power (by hns@goldelico.com) - added a fix to dw-hdmi to call drm_kms_helper_hotplug_event on plugin event detection (by hns@goldelico.com) - always allocate extended descriptor but initialize only for jz4780 (by hns@goldelico.com) - updated to work on top of "[PATCH v3 0/6] drm/ingenic: Various improvements v3" (by paul@crapouillou.net) - rebased to v5.13-rc3 PATCH V3 2021-08-08 07:10:50: This series adds HDMI support for JZ4780 and CI20 board (and fixes one IPU related issue in registration error path) - [patch 1/8] switched from mode_fixup to atomic_check (suggested by robert.foss@linaro.org) - the call to the dw-hdmi specialization is still called mode_fixup - [patch 3/8] diverse fixes for ingenic-drm-drv (suggested by paul@crapouillou.net) - factor out some non-HDMI features of the jz4780 into a separate patch - multiple fixes around max height - do not change regmap config but a copy on stack - define some constants - factor out fixing of drm_init error path for IPU into separate patch - use FIELD_PREP() - [patch 8/8] conversion to component framework dropped (suggested by Laurent.pinchart@ideasonboard.com and paul@crapouillou.net) PATCH V2 2021-08-05 16:08:05: - code and commit messages revisited for checkpatch warnings - rebased on v5.14-rc4 - include (failed, hence RFC 8/8) attempt to convert to component framework (was suggested by Paul Cercueil a while ago) This series adds HDMI support for JZ4780 and CI20 board H. Nikolaus Schaller (3): drm/ingenic: prepare ingenic drm for later addition of JZ4780 MIPS: defconfig: CI20: configure for DRM_DW_HDMI_JZ4780 [RFC] MIPS: DTS: Ingenic: adjust register size to available registers Paul Boddie (4): drm/ingenic: Add support for JZ4780 and HDMI output drm/ingenic: Add dw-hdmi driver for jz4780 MIPS: DTS: jz4780: Account for Synopsys HDMI driver and LCD controllers MIPS: DTS: CI20: Add DT nodes for HDMI setup Sam Ravnborg (1): dt-bindings: display: Add ingenic,jz4780-dw-hdmi DT Schema .../display/bridge/ingenic,jz4780-hdmi.yaml | 76 ++++++++++ .../display/bridge/synopsys,dw-hdmi.yaml | 3 + arch/mips/boot/dts/ingenic/ci20.dts | 72 ++++++++- arch/mips/boot/dts/ingenic/jz4725b.dtsi | 2 +- arch/mips/boot/dts/ingenic/jz4740.dtsi | 2 +- arch/mips/boot/dts/ingenic/jz4770.dtsi | 2 +- arch/mips/boot/dts/ingenic/jz4780.dtsi | 40 +++++ arch/mips/configs/ci20_defconfig | 6 + drivers/gpu/drm/ingenic/Kconfig | 9 ++ drivers/gpu/drm/ingenic/Makefile | 1 + drivers/gpu/drm/ingenic/ingenic-drm-drv.c | 62 +++++++- drivers/gpu/drm/ingenic/ingenic-drm.h | 38 +++++ drivers/gpu/drm/ingenic/ingenic-dw-hdmi.c | 138 ++++++++++++++++++ 13 files changed, 443 insertions(+), 8 deletions(-) create mode 100644 Documentation/devicetree/bindings/display/bridge/ingenic,jz4780-hdmi.yaml create mode 100644 drivers/gpu/drm/ingenic/ingenic-dw-hdmi.c