From patchwork Fri Nov 16 12:54:37 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthias Brugger X-Patchwork-Id: 10686347 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 02B611709 for ; Fri, 16 Nov 2018 13:08:04 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id E34C92CD36 for ; Fri, 16 Nov 2018 13:08:03 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id D66BD2CE23; Fri, 16 Nov 2018 13:08:03 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.6 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_LOW autolearn=unavailable version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 69C442CD36 for ; Fri, 16 Nov 2018 13:08:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject: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=JOJcoKycE3Vd1z/c+oCuenr4G69PHg5ZGOYSVuUFRYo=; b=MhVXGHj7DR6vml OxDarzEvulttwixqEGtFInvUIuLXOTvAxDwYtASogHs+as9GYgbsKC9Dx1f6oIJDVuAAAOLll/Aji M1IFSK5UHKSsIQscH9r9sXG+cNKCY4GcaXmkxB2rnL8uoPWi5b95IK+uYB1nXphKgkLEXa8befpmu 2XxPYaltAB8ykxJCZc370DlwkkQhrCzBZ/Zk0cNL426P8Py1JkzASaTvpBVUN1zUcFefO/U0RD0Xj o4/lDzcUDlhZPeGPcSQbxsp2UnVwHwwFpnd4ikjj8LOIX/iSXdUTyYxs/DPbfek0+E4kPXHZe5RrD dpnIa8UjKorIv6NugYpg==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1gNdqq-0004qe-3s; Fri, 16 Nov 2018 13:08:00 +0000 Received: from casper.infradead.org ([2001:8b0:10b:1236::1]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1gNdpl-0003dX-Ob; Fri, 16 Nov 2018 13:06:53 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Content-Transfer-Encoding:MIME-Version: Message-Id:Date:Subject:Cc:To:From:Sender:Reply-To:Content-Type:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=wFgI0PjIVe4GEIe/SAQfX2XMf+4QSpidMWOLTETtcII=; b=hdNjXQIJtja9LW96CZWwteVF4U 0v3bP2k8jKoKBzEI3IlDI2RVSP3vNvTvvcc1d3AoIUkMCRXUXM00hwN7X4zSEZMioUVCy5VdVJX8w mCb5D9qKteCiJuzqFfVfyXuKCom32gKAoXbW5gNEukXTvyCitYqXx1gOILC/XdRB9K4RtYKh63h1p yigB0E8BNdcjygCHLnTbQ26SVLDRFZnYTe+Xcx3ZxIWwTXXaetLbLn39Y4OB/oqDasxYdJoRTWrH7 wD0rymPi9V4muhSxbpnrnSAnIrCMo1vqf083dHjSiqjoRxRo5zBvZ0VqqibcNpocCifa/bNYWOgdn vIM7oO/w==; Received: from mail.kernel.org ([198.145.29.99]) by casper.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1gNdeu-00022p-Qb; Fri, 16 Nov 2018 12:55:42 +0000 Received: from ziggy.de (unknown [93.176.133.217]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id CBCDF2087A; Fri, 16 Nov 2018 12:55:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1542372927; bh=MsX0D2nv4gCScRREhhc4JH4ktBsXjxNVzTehDsWc9p4=; h=From:To:Cc:Subject:Date:From; b=NiGYyAOlHZgoofKiCrzy8MkWtGtR6lfUFnyI2rc6tywHBzLUvnBkWcDl6YtiYxSYN J2QdIE7AjdvAw+ApR0PtmjnErIXSIOCFxggeKq7+1yRrYVpM19Kq/wj5lTmxh+Hl/j UYmIuKO5CB50sIhpy9gu4kof684kLUMV9dHcpeT8= From: matthias.bgg@kernel.org To: robh+dt@kernel.org, mark.rutland@arm.com, ck.hu@mediatek.com, p.zabel@pengutronix.de, airlied@linux.ie, mturquette@baylibre.com, sboyd@codeaurora.org, ulrich.hecht+renesas@gmail.com, laurent.pinchart@ideasonboard.com, matthias.bgg@gmail.com Subject: [PATCH v5 00/12] arm/arm64: mediatek: Fix mmsys device probing Date: Fri, 16 Nov 2018 13:54:37 +0100 Message-Id: <20181116125449.23581-1-matthias.bgg@kernel.org> X-Mailer: git-send-email 2.19.1 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20181116_125541_125636_DC03EBA5 X-CRM114-Status: GOOD ( 19.28 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, rdunlap@infradead.org, sean.wang@mediatek.com, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, sean.wang@kernel.org, wens@csie.org, Matthias Brugger , linux-mediatek@lists.infradead.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+patchwork-linux-mediatek=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP From: Matthias Brugger This is version four of the series. The biggest change are the last four patches which introduce how this should be handled in the future. Instead of creating the platform device in the DRM driver the device tree has in the mmsys memory range a child node to probe the clock part. That breaks backwards compatibility, so I only introduce that for SoCs which are not available to the general public (mt2712e) or only have the mmsys clock driver part implemented (mt6797). Changes since v4: - fix missing regmap accessors in drm diver (patch 1) - omit probe deffered warning on all drivers (patch 5) - update drm and clk bindings (patch 6 and 7) - put mmsys clock part in dts child node of mmsys. Only done for HW where no dts backport compatible breakage is expected (either DRM driver not yet implemented or no HW available to the public) (patch 9 to 12) Changes since v3: - use platform device to probe clock driver - add Acked-by CK Hu for the probe deferred patch Changes since v2: - fix kconfig typo (shame on me) - delete __initconst from mm_clocks as converted to a platform driver Changes since v1: - add binding documentation - ddp: use regmap_update_bits - ddp: ignore EPROBE_DEFER on clock probing - mfd: delete mmsys_private - add Reviewed-by and Acked-by tags MMSYS in Mediatek SoCs has some registers to control clock gates (which is used in the clk driver) and some registers to set the routing and enable the differnet blocks of the display subsystem. Up to now both drivers, clock and drm are probed with the same device tree compatible. But only the first driver get probed, which in effect breaks graphics on mt8173 and mt2701. This patch uses a platform device registration in the DRM driver, which will trigger the probe of the corresponding clock driver. It was tested on the bananapi-r2 and the Acer R13 Chromebook. Matthias Brugger (12): drm/mediatek: Use regmap for register access clk: mediatek: mt2701-mmsys: switch to platform device probing clk: mediatek: mt8173: switch mmsys to platform device probing drm/mediatek: Add support for mmsys through a pdev drm: mediatek: Omit warning on probe defers drm/mediatek: update dt-bindings dt-bindings: clock: mediatek: delete mmsys clocks dt-bindings: mediatek: Change the binding for mmsys clocks arm64: dts: mt2712e: Use the new mmsys clock compatible arm64: dts: mt6797: Use the new mmsys clock compatible clk: mediatek: mt2712e: Probe with new compatible clk: mediatek: mt6797: Probe with new compatible .../bindings/arm/mediatek/mediatek,mmsys.txt | 24 +++++---- .../display/mediatek/mediatek,disp.txt | 34 +++++++----- arch/arm64/boot/dts/mediatek/mt2712e.dtsi | 8 ++- arch/arm64/boot/dts/mediatek/mt6797.dtsi | 8 ++- drivers/clk/mediatek/clk-mt2701-mm.c | 42 ++++++++++----- drivers/clk/mediatek/clk-mt2712-mm.c | 9 ++-- drivers/clk/mediatek/clk-mt6797-mm.c | 9 ++-- drivers/clk/mediatek/clk-mt8173.c | 51 +++++++++++++++--- drivers/gpu/drm/mediatek/mtk_disp_color.c | 4 +- drivers/gpu/drm/mediatek/mtk_disp_ovl.c | 4 +- drivers/gpu/drm/mediatek/mtk_disp_rdma.c | 4 +- drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 4 +- drivers/gpu/drm/mediatek/mtk_drm_ddp.c | 53 ++++++++----------- drivers/gpu/drm/mediatek/mtk_drm_ddp.h | 4 +- drivers/gpu/drm/mediatek/mtk_drm_drv.c | 34 +++++++++--- drivers/gpu/drm/mediatek/mtk_drm_drv.h | 4 +- drivers/gpu/drm/mediatek/mtk_dsi.c | 6 ++- 17 files changed, 200 insertions(+), 102 deletions(-)