From patchwork Sat Oct 1 08:06:40 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 12996434 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 85010C433F5 for ; Sat, 1 Oct 2022 08:08:32 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:Cc :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=lFOtndIUTdbVp2s+wO6foewaHezAjMLV25igIh1dUpE=; b=C80PE2bvU9C8/n d5pRB8SdSFDifCRHqh3SEcRtyFcUXhKditDg9MEnhU24fgUw0SylPLYohWrB6GPTJfdxPbvW2TPxu e1FmHoRIK0YpghEYG1en8u6e63eQeLXYyPgMl+hAoQjj/XqEkrJ4WS9wzB/1ZzA+Nk++aSk3P2JF7 Mqhztsvd2eIUaKUEQZzINxxjOMjrCVxQ07G0iRHaunCCbFgaOmeInErsBIyqrOHG1dL53wEoUlLaP Pjs5ry1Tt1FHdFX96DaNV2ew7YdFINqk7WURLCk91rAkiEmK2PwBQcJckK5kwwjf5c4u+OQbr02L4 tfpj1zxzvwUBdh7uV2rw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1oeXWs-00Depy-1U; Sat, 01 Oct 2022 08:07:22 +0000 Received: from mail-pg1-x52f.google.com ([2607:f8b0:4864:20::52f]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1oeXWp-00DepC-MI for linux-arm-kernel@lists.infradead.org; Sat, 01 Oct 2022 08:07:21 +0000 Received: by mail-pg1-x52f.google.com with SMTP id s206so5942372pgs.3 for ; Sat, 01 Oct 2022 01:07:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date; bh=f2/sunB1LnJ5LmZFp20lgms1Dr4ed7SwWpkE0LxREhs=; b=eYE9fxG/g4fN3hv1Xsn4GWm0owQ1/xJHmjy2kVEJaeCobw9OD4Zb1hAcXfBG1uHR0f RWzUnNhi1jMP6L3FxYy0bzfeW/hHBrW+jDbVsuWpmRElnAm3QJIk6sonaTDLOTIMPqbi KVJWAHGiGg5gfY4npA4G+8jIuwM5n3t/o2vmc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date; bh=f2/sunB1LnJ5LmZFp20lgms1Dr4ed7SwWpkE0LxREhs=; b=AHrA86eZnW9yjuCcnPYsbVjuLsfmyjMxLpxy+CT/xVkolR51beoyIyE4iL7q6dkADg oyJ9qjxcAUYr+2EZpicvxPglOKqMx/73k65Z0v3mNQD9OP/F25ruuXuAe1KhIF5cB7rD AyG3QjiK5VvwtQa7pkQvnndi7wVGvxPwMJ0Zx624dcZhx2kvOmzqEJTfEVHhNA+juYhc wEc30v8Xlg9DeG0q4KnuKKBYEKIGbBisU0Mk4nWKTeWWArd/ib0FmIbDW5T9K752w+hW P7TOMOoMc/sJ4stiVtMV0QFnEX2OcDAdj9vsW8jzuNAQWmbPC5MpQIc2hbjW1FKDIlxN Lgnw== X-Gm-Message-State: ACrzQf1mMkg/0OVcq2VImsyzLbiy282bi11y/l5X38zNEz3X42/9rtrR 0b6AtzHt1zY6INpv9TrtUvzhKw== X-Google-Smtp-Source: AMsMyM7JKh6uflQudzYdb0q2EMBIAzFGt0PglXp9ph2b8jjHveHvi3EIGRF0AvVL+Y2Tz6t/KcFuVA== X-Received: by 2002:a65:4bc1:0:b0:439:e6a5:122a with SMTP id p1-20020a654bc1000000b00439e6a5122amr10666688pgr.443.1664611634883; Sat, 01 Oct 2022 01:07:14 -0700 (PDT) Received: from localhost.localdomain ([2405:201:c00a:a073:7254:4392:bc7c:c69]) by smtp.gmail.com with ESMTPSA id c194-20020a624ecb000000b005409c9d2d41sm3167041pfb.62.2022.10.01.01.07.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 01 Oct 2022 01:07:14 -0700 (PDT) From: Jagan Teki To: Andrzej Hajda , Inki Dae , Marek Szyprowski , Joonyoung Shim , Seung-Woo Kim , Kyungmin Park , Frieder Schrempf , Fancy Fang , Tim Harvey , Michael Nazzareno Trimarchi , Adam Ford , Neil Armstrong , Robert Foss , Laurent Pinchart , Tommaso Merciai , Marek Vasut Cc: Matteo Lisi , dri-devel@lists.freedesktop.org, linux-samsung-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, NXP Linux Team , linux-amarula , Jagan Teki Subject: [PATCH v6 00/10] drm: bridge: Add Samsung MIPI DSIM bridge Date: Sat, 1 Oct 2022 13:36:40 +0530 Message-Id: <20221001080650.1007043-1-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20221001_010719_783768_47C20F99 X-CRM114-Status: GOOD ( 12.21 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org This series supports common bridge support for Samsung MIPI DSIM which is used in Exynos and i.MX8MM SoC's. The final bridge supports both the Exynos and i.MX8MM DSI devices. Changes for v6: * handle previous bridge for exynos dsi while attaching bridge Changes for v5: * bridge changes to support multi-arch * updated and clear commit messages * add hw_type via plat data * removed unneeded quirk * rebased on linux-next Changes for v4: * include Inki Dae in MAINTAINERS * remove dsi_driver probe in exynos_drm_drv to support multi-arch build * update init handling to ensure host init done on first cmd transfer Changes for v3: * fix the mult-arch build * fix dsi host init * updated commit messages Changes for v2: * fix bridge handling * fix dsi host init * correct the commit messages Patch 0001: Samsung DSIM bridge Patch 0002: PHY optional Patch 0003: OF-graph or Child node lookup Patch 0004: DSI host initialization Patch 0005: atomic check Patch 0006: PMS_P offset via plat data Patch 0007: atomic_get_input_bus_fmts Patch 0008: input_bus_flags Patch 0009: document fsl,imx8mm-mipi-dsim Patch 0010: add i.MX8MM DSIM support Tested in Engicam i.Core MX8M Mini SoM. Repo: https://gitlab.com/openedev/kernel/-/commits/imx8mm-dsi-v6 Any inputs? Jagan. Jagan Teki (10): drm: bridge: Add Samsung DSIM bridge driver drm: bridge: samsung-dsim: Lookup OF-graph or Child node devices drm: bridge: samsung-dsim: Mark PHY as optional drm: bridge: samsung-dsim: Handle proper DSI host initialization drm: bridge: samsung-dsim: Add atomic_check drm: bridge: samsung-dsim: Add platform PLL_P (PMS_P) offset drm: bridge: samsung-dsim: Add atomic_get_input_bus_fmts drm: bridge: samsung-dsim: Add input_bus_flags dt-bindings: display: exynos: dsim: Add NXP i.MX8MM support drm: bridge: samsung-dsim: Add i.MX8MM support .../bindings/display/exynos/exynos_dsim.txt | 1 + MAINTAINERS | 9 + drivers/gpu/drm/bridge/Kconfig | 12 + drivers/gpu/drm/bridge/Makefile | 1 + drivers/gpu/drm/bridge/samsung-dsim.c | 1856 +++++++++++++++++ drivers/gpu/drm/exynos/Kconfig | 1 + drivers/gpu/drm/exynos/exynos_drm_dsi.c | 1769 ++-------------- include/drm/bridge/samsung-dsim.h | 115 + 8 files changed, 2111 insertions(+), 1653 deletions(-) create mode 100644 drivers/gpu/drm/bridge/samsung-dsim.c create mode 100644 include/drm/bridge/samsung-dsim.h