From patchwork Fri Mar 26 12:19:53 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adrien Grassein X-Patchwork-Id: 12166479 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=-8.5 required=3.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham 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 23BD3C433DB for ; Fri, 26 Mar 2021 12:20:10 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id AEFE46191F for ; Fri, 26 Mar 2021 12:20:09 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org AEFE46191F Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id F2A7F6E1CD; Fri, 26 Mar 2021 12:20:03 +0000 (UTC) Received: from mail-wr1-x429.google.com (mail-wr1-x429.google.com [IPv6:2a00:1450:4864:20::429]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0C3E16E1B8 for ; Fri, 26 Mar 2021 12:20:01 +0000 (UTC) Received: by mail-wr1-x429.google.com with SMTP id o16so5500739wrn.0 for ; Fri, 26 Mar 2021 05:20:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=Kg1U2pASZJh61Qap78Y/WB4kOKba5GuYu7Xequ9TovM=; b=ApDLceLYrjN3KcZ8KGrUq7h5LqtlXdms3kCHUwf5LKOWChju9s8UbzZdFT00sHBWji fxDtaruRNz7u5jRqT0p9wT15uDg9gQRDTa640vTdCrogo15MYfUNjXfIgkwMys9VuTTc qBJvSQ2PB3HNIZ085nzvowSGsCTH8Lsg6+0CNfYVsaggIuJHUXWdwr6/2DMuS4vFZuHB k9KV7vx31lQD89yiMQFDLRw32tMhe/uiDA1ZU8hnm/+BKv3D8CzX3hW0bRGfl/g9q6Df Exw0MELumNmpzMIfwIuiwO9rArhA54V6WDXNkHdcL5bwP9LN4rAePu7MoTGenANMX7dQ N0GQ== 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=Kg1U2pASZJh61Qap78Y/WB4kOKba5GuYu7Xequ9TovM=; b=o2QsQEI6gGp6pcp8YOx8n+9kFJSjmWlKDHZ3t+nchUEX6BcB2ebpmWgJ3bWtoN4+7A 8b1bPC3mFfMiTWRYvaHPKkj816XanjN9JhLX+c+odvaKE8twivpoO3VJbaaXpPmGgYBW 1+2kRo+bzvbIQf5FTRWmEK10ulWi9SjVCLKP26TNvZE+yY4EeBtLjk4mnMMXQL7GWEm0 PUU9gegshUAgvMXWyt/Eb5nPsardVravKzvuP2anMVN9fDwytU0MomCH59/SsUsYOmq7 XmubW82bx2QUnF2FXmnvYOB552KtwhrD/IAF9DFglMosFVTInmxhSxALOD64q/H4fnNU sGPA== X-Gm-Message-State: AOAM531Br+oRTBK7cO9ru1g6kWEiLQGehvG2bdIMKD9oPVOBtM22cjF9 aWv/mwqslPxnvvEskpPXaE4= X-Google-Smtp-Source: ABdhPJyVXeITO6E5oyD1KdyzgwwiHT1pwD6OdpuDL3xMdY9Gk8FkQbcfYiCdNpBHrQP2N4FX8ZhDvQ== X-Received: by 2002:a5d:6412:: with SMTP id z18mr14247608wru.214.1616761200589; Fri, 26 Mar 2021 05:20:00 -0700 (PDT) Received: from localhost.localdomain (2a01cb0008bd2700f1419764c24345e5.ipv6.abo.wanadoo.fr. [2a01:cb00:8bd:2700:f141:9764:c243:45e5]) by smtp.gmail.com with ESMTPSA id l6sm11150102wrt.56.2021.03.26.05.19.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 26 Mar 2021 05:20:00 -0700 (PDT) From: Adrien Grassein To: Subject: [PATCH v9 0/2] Add support of Lontium lt8912 MIPI to HDMI bridge Date: Fri, 26 Mar 2021 13:19:53 +0100 Message-Id: <20210326121955.1266230-1-adrien.grassein@gmail.com> X-Mailer: git-send-email 2.25.1 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, jernej.skrabec@siol.net, narmstrong@baylibre.com, airlied@linux.ie, dri-devel@lists.freedesktop.org, jonas@kwiboo.se, linux-kernel@vger.kernel.org, robert.foss@linaro.org, a.hajda@samsung.com, robh+dt@kernel.org, Laurent.pinchart@ideasonboard.com, Adrien Grassein Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Hi, this patch set adds the support of the Lontium lt8912 MIPI to HDMI bridge in the kernel. It's only support the video part, not the audio part yet since I don't have the datasheet of this component. I get the current i2c configuration from Digi and Boundary drivers. Developed using the DB_DSIHD board from BoundaryDevices. Update in v2 - Use standard data-lanes instead of a custom prop; - Use hdmi-connector node. Update in v3 - Fix indentation; - Implement missing bridge functions; - Add some comments. Update in v4 - Fix bridge ops; - Fix i2c error detection. Update in v5 - Fix lt8912 name (lt8912b instead of lt8912); - Implement HPD via a workaround. In fact I don't have the datasheet of this component yet so I can't say if the configuration of the registers is correct or if I have an HW issue on my board. So, I choose to implement a fake version of HPD using a workqueue and polling the status regularly. Update in v6 - Fix a warning found by "kernel test robot" Update in v7 - Fix HPD logic (via an HW emulation); - HPD from chip is still not working. Update in v8 - Remove HPD logic (will be added later when HW bug qill be fixed). Update in v9 - Fix errors found in scripts/checkpatch.pl --strict Thanks, Adrien Grassein (2): dt-bindings: display: bridge: Add documentation for LT8912B drm/bridge: Introduce LT8912B DSI to HDMI bridge .../display/bridge/lontium,lt8912b.yaml | 102 +++ MAINTAINERS | 6 + drivers/gpu/drm/bridge/Kconfig | 14 + drivers/gpu/drm/bridge/Makefile | 1 + drivers/gpu/drm/bridge/lontium-lt8912b.c | 765 ++++++++++++++++++ 5 files changed, 888 insertions(+) create mode 100644 Documentation/devicetree/bindings/display/bridge/lontium,lt8912b.yaml create mode 100644 drivers/gpu/drm/bridge/lontium-lt8912b.c