From patchwork Wed Jul 20 15:51:57 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 12924254 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 89F9ACCA480 for ; Wed, 20 Jul 2022 15:53:59 +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=gg3mTpIVzxfE4hPowIR60ojIehqXQ7bEd/1sSJNnP9Q=; b=heO4LmWCmw6/KZ sCJp/+Ut+8FpBVDo66DsOg4B5zksTipZVyr3+hFgDY/7A7cXfkPl5+TCwIvOCPebCOyJT6tix6aNH DNaPQJI9sh22C87qQXAW7CSZx1Ysnbh5gsF+Te7VodO6Bd+zLK+JoDLVok628XUMmXrxZmiJq39QZ SGzsdrEg00kY9AeoM9ixbHWrGQHaKmDru2DVjfpc+V1ecW6uRPZVCncsRVZqgGT7EcJNct32hHXQW LiBNk6xjVEaV6JGDkIGTG7VwkObZAMMpNNIFmcIfyhvW/Uhil5/payzEreQU/270Se8TtSZhEes4W nN5khIbLjsNjj0dGAS4w==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1oEC04-007o3m-HH; Wed, 20 Jul 2022 15:52:36 +0000 Received: from mail-pl1-x62d.google.com ([2607:f8b0:4864:20::62d]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1oEC01-007o0j-AD for linux-arm-kernel@lists.infradead.org; Wed, 20 Jul 2022 15:52:34 +0000 Received: by mail-pl1-x62d.google.com with SMTP id w7so15333382ply.12 for ; Wed, 20 Jul 2022 08:52:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=KYWZwhb1ZSYMdId0x3rlbXi6AM1i5QxI3S7xvaz7eF8=; b=oJwEosghuEyW84bAjoYVaYX4vS8LQabWRNbFU/6Q9EmovdXw/CKLRqjMqEn/crpQAO cWcVXjz3iR98DiJV7aNuoka9yeY1GS9XD4rZEUEomDcWFqYDUdQjYFuP1WHark2/KjJc iZZfWdmpQfZmNl2fc8ujSCdtVbnLIp2QPT958= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=KYWZwhb1ZSYMdId0x3rlbXi6AM1i5QxI3S7xvaz7eF8=; b=z3Hw3doaZ0n8FDKN/HIwnWA1IjswdrQXXf0bgV2B0oeki/+Y2qCaXljW3jFCSbboIc CA/K0dsZ9VOrVDQwUnQQ5zRyv8Gp7iWy3iiGHHkWf9IqMgxxPqvA3YI/EKD/knW6lHqS SYcfZv05FEZLu43co8kUkcFmBU3SaQ6ZwI7jexVK4PcllgaSrv3W9LCxQ0Wj13qeGNAb kKKlIzd+GfYJc/wOeQAHthtLA+n0t5V3G4Ca/OA3YDTeR7IECsIi52aHV2TbqVJCQejG 1uKNXQMQ+SZUFP4h+MHHiOML1SFdQTr1TsyIoSSJSwdZ/gtYfJs1n4wN84Yv65OhYCJ3 Qp6w== X-Gm-Message-State: AJIora/LjpboqxwvLfl9qOyXMB1HEzJQRx7rn6gShRpc+leoEMjEhSg6 6ST03jLAD9GKiU462Tf/f0H6Fg== X-Google-Smtp-Source: AGRyM1vIlPt6mZ1DC9Q8SplUz9lA4D9c/ORKQb71HYgrzZMeOpaX7fVkWmaxn+AuVF+Vhv4zcJTvSg== X-Received: by 2002:a17:90b:3890:b0:1f0:2abb:e7d1 with SMTP id mu16-20020a17090b389000b001f02abbe7d1mr6270480pjb.158.1658332349528; Wed, 20 Jul 2022 08:52:29 -0700 (PDT) Received: from localhost.localdomain ([2405:201:c00a:a073:d177:d5:aee:4f03]) by smtp.gmail.com with ESMTPSA id a8-20020a170902710800b0015e8d4eb1d7sm13919198pll.33.2022.07.20.08.52.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 20 Jul 2022 08:52:29 -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 v3 00/13] drm: bridge: Add Samsung MIPI DSIM bridge Date: Wed, 20 Jul 2022 21:21:57 +0530 Message-Id: <20220720155210.365977-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-20220720_085233_358961_60380D98 X-CRM114-Status: GOOD ( 11.67 ) 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. Previous v2 can be available here [1]. The final bridge supports both the Exynos and i.MX8MM DSI devices. On, summary this patch-set break the entire DSIM driver into - platform specific glue code for platform ops, component_ops. - common bridge driver which handle platform glue init and invoke. Patch 0001: Restore proper bridge chain in exynos_dsi Patch 0002: Samsung DSIM bridge Patch 0003: Common lookup code for OF-graph or child Patch 0004: plat_data quirk flag via driver_data Patch 0005/11: bridge fixes, atomic API's Patch 0012: document fsl,imx8mm-mipi-dsim Patch 0013: add i.MX8MM DSIM support Tested in Engicam i.Core MX8M Mini SoM. Anyone interested, please have a look on this repo [2] [2] https://github.com/openedev/kernel/tree/imx8mm-dsi-v2 [1] https://patchwork.kernel.org/project/dri-devel/cover/20220504114021.33265-1-jagan@amarulasolutions.com/ Any inputs? Jagan. Jagan Teki (12): drm: bridge: Add Samsung DSIM bridge driver drm: bridge: samsung-dsim: Lookup OF-graph or Child node devices drm: bridge: samsung-dsim: Handle platform init via driver_data drm: bridge: samsung-dsim: Mark PHY as optional drm: bridge: samsung-dsim: Add DSI init in bridge pre_enable() drm: bridge: samsung-dsim: Fix PLL_P (PMS_P) offset drm: bridge: samsung-dsim: Add module init, exit drm: bridge: samsung-dsim: Add atomic_check 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 Marek Szyprowski (1): drm: exynos: dsi: Restore proper bridge chain order .../bindings/display/exynos/exynos_dsim.txt | 1 + MAINTAINERS | 8 + drivers/gpu/drm/bridge/Kconfig | 12 + drivers/gpu/drm/bridge/Makefile | 1 + drivers/gpu/drm/bridge/samsung-dsim.c | 1850 +++++++++++++++++ drivers/gpu/drm/exynos/Kconfig | 1 + drivers/gpu/drm/exynos/exynos_drm_dsi.c | 1717 +-------------- include/drm/bridge/samsung-dsim.h | 106 + 8 files changed, 2042 insertions(+), 1654 deletions(-) create mode 100644 drivers/gpu/drm/bridge/samsung-dsim.c create mode 100644 include/drm/bridge/samsung-dsim.h Tested-by: Alexander Stein