From patchwork Sun Jul 4 09:02:13 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 470075 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=-18.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH, MAILING_LIST_MULTI, MENTIONS_GIT_HOSTING, SPF_HELO_NONE, SPF_PASS, USER_AGENT_GIT autolearn=unavailable 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 5499FC07E96 for ; Sun, 4 Jul 2021 09:04:12 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 3177261474 for ; Sun, 4 Jul 2021 09:04:12 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229510AbhGDJGq (ORCPT ); Sun, 4 Jul 2021 05:06:46 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59808 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229492AbhGDJGp (ORCPT ); Sun, 4 Jul 2021 05:06:45 -0400 Received: from mail-pl1-x62b.google.com (mail-pl1-x62b.google.com [IPv6:2607:f8b0:4864:20::62b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4D077C061764 for ; Sun, 4 Jul 2021 02:04:09 -0700 (PDT) Received: by mail-pl1-x62b.google.com with SMTP id z13so1044257plg.8 for ; Sun, 04 Jul 2021 02:04:09 -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=LTKmWZ3CVp6OOAYCiyLaCDGps1R2HQjeuLrAdsNm2oA=; b=UDC9ZLWAnBD/te5tkNc4neJrdsL39umnb6TeP5DVxcgX6VP1wc9JP051M8hMz8GF9C 3PMZSFE7eMEduQqdDhaE6yZAMNT1kdQyQ7Xoidg6iu1lW8ZOQT3t9Rnqqo6q2foTQLii l/wW9qGcpF8BxYeozkF5e+ysR2VEEtjDL/K4A= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=LTKmWZ3CVp6OOAYCiyLaCDGps1R2HQjeuLrAdsNm2oA=; b=o6qAMVjKOJ4yhV7V9eNqHqkXhVq0zB8fd/r6i7GvytcC9M0nAx6Ky7Bevx8UV7FHxT sedGhpBMRf/vxJk4fOk86KDZBtwjQvFAbqt3UgURWMFGA5nDvN6uG/Zy8lw3NGWuuDzQ WHnYYjhxEzIO+BgSjCL4YRAc9Huqz2pWYpjRBJxyLfTvs3zzJgcCo642GxGkfYCWuCc2 +SkBMjLA8h75g8QKP9Qvz0HTc3AcwfB9Z4jbs+Yqw146g4hZjkQCeccb0jjcGMBTos/p HyxIOYxV8gbZbwP6yP/12ViVUE2orSTYgUPDOfPUvH/dzhr6GsxXXjSgm2XsJMTzk96d uzXg== X-Gm-Message-State: AOAM531xehYt+Rmz950O1PQDQi3siT69cAIkIESlCBvmdsRtgvZLYyC+ TdEI5CHsn9Zm3h4Vpw4GK55hrA== X-Google-Smtp-Source: ABdhPJx7D44IjbUDdiCn9uNITwKa1N6d+4SXQCDPMDnwm/1x3fHOq9ypbbk1oXFGD/T4d0lggaK8jA== X-Received: by 2002:a17:90a:b316:: with SMTP id d22mr8682362pjr.233.1625389448833; Sun, 04 Jul 2021 02:04:08 -0700 (PDT) Received: from localhost.localdomain ([2405:201:c00a:a884:1ae9:772f:6f0f:3e24]) by smtp.gmail.com with ESMTPSA id m24sm3360793pgd.60.2021.07.04.02.04.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 04 Jul 2021 02:04:08 -0700 (PDT) From: Jagan Teki To: Inki Dae , Joonyoung Shim , Seung-Woo Kim , Kyungmin Park , Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Frieder Schrempf , Daniel Vetter , Marek Vasut , Krzysztof Kozlowski , Fabio Estevam Cc: dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, NXP Linux Team , linux-amarula , Jagan Teki Subject: [RFC PATCH 00/17] drm: bridge: Samsung MIPI DSIM bridge Date: Sun, 4 Jul 2021 14:32:13 +0530 Message-Id: <20210704090230.26489-1-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.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. Right now bridge offers two sets of implementations. A. With component_ops and exynos specific code exclusively for    exynos dsi drivers and it's legacy bindings. B. Without componenet_ops for newly implemented bridges and its    users like i.MX8MM. The future plan is to fix the implementation A) by dropping component_ops and fixing exynos specific code in order to make the bridge more mature to use and the same is mentioned in drivers TODO. Patch 0001 - 0006: Bridge conversion Patch 0007 - 0017: Samsung MIPI DSIM bridge fixes, additions Tested in Engicam i.Core MX8M Mini SoM. Anyone interest, please have a look on this repo https://github.com/openedev/linux/tree/070421-imx8mm-dsim Would appreciate anyone from the exynos team to test it on the exynos platform? Any inputs? Jagan. Jagan Teki (17): drm/exynos: dsi: Convert to bridge driver drm/exynos: dsi: Handle drm_device for bridge drm/exynos: dsi: Use the drm_panel_bridge API drm/exynos: dsi: Create bridge connector for encoder drm/exynos: dsi: Get the mode from bridge drm/exynos: dsi: Handle exynos specifics via driver_data drm: bridge: Move exynos_drm_dsi into bridges dt-bindings: display: bridge: Add Samsung MIPI DSIM bridge drm: bridge: samsung-dsim: Add module init, exit drm: bridge: samsung-dsim: Update the of_node for port(s) drm: bridge: samsung-dsim: Find the possible DSI devices dt-bindings: display: bridge: samsung,mipi-dsim: Add i.MX8MM support drm: bridge: samsung-dsim: Add i.MX8MM support drm: bridge: samsung-dsim: Add input_bus_flags drm: bridge: samsung-dsim: Move DSI init in bridge enable drm: bridge: samsung-dsim: Fix PLL_P offset drm: bridge: samsung-dsim: Add bridge mode_fixup .../display/bridge/samsung,mipi-dsim.yaml | 360 +++++++++ .../bindings/display/exynos/exynos_dsim.txt | 90 --- MAINTAINERS | 12 + drivers/gpu/drm/bridge/Kconfig | 15 + drivers/gpu/drm/bridge/Makefile | 1 + .../samsung-dsim.c} | 758 ++++++++++-------- drivers/gpu/drm/exynos/Kconfig | 9 - drivers/gpu/drm/exynos/Makefile | 1 - 8 files changed, 795 insertions(+), 451 deletions(-) create mode 100644 Documentation/devicetree/bindings/display/bridge/samsung,mipi-dsim.yaml delete mode 100644 Documentation/devicetree/bindings/display/exynos/exynos_dsim.txt rename drivers/gpu/drm/{exynos/exynos_drm_dsi.c => bridge/samsung-dsim.c} (69%)