Received: by 2002:ac0:a594:0:0:0:0:0 with SMTP id m20-v6csp5877868imm; Sat, 19 May 2018 11:33:11 -0700 (PDT) X-Google-Smtp-Source: AB8JxZqBIOwUm51yS11cdpCkmWEUPQHFkY9aj6yNfwqj9kIrJFWgidoSUJnU9JNXmthAm2HRJW0C X-Received: by 2002:a17:902:683:: with SMTP id 3-v6mr14474162plh.291.1526754791627; Sat, 19 May 2018 11:33:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1526754791; cv=none; d=google.com; s=arc-20160816; b=EGnNBPLVwsQqMtHiim7rq86pHOyhhEakP5E+PBA2JZk6yhkNxYVEGRQq6SXJAYbVMz CmZ6wbWoAcj7/HSC56iKj8CyVAoOQG35yR11vy0CAdczf7qDQCqFs/nzmg6lLb9vCl5b gVlIlLI7yAQbcW0ZQu2ozkVM9IhDKkMAVq3opq8BoDJXsjUGct4lE4GLugds/trzmq1C /P3j8nJ8C9vChoCZA4H7jAWd9C61yam15PEbxsmyWFdw6QTaM/hQSIMnWoa8478S70RH oMPaN6n6GLrcv/o2/jrEGaxMQhT7MJQYDC4ZMSkB0moCIFzioQ8cSRmHxhMiVCyw2iBJ oJ2A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :arc-authentication-results; bh=NVFdCH2/a13Sit3qnq+DW+Thmk9FlM0AUWFeOFeb820=; b=qDsQa/ImgzAvtrv8wNPRBlQVvO+QjebztayxrGG2+oQer6qPbaDPXioPglIWjuv7lM 29kveqFGDc4m5hmX6jfNJ+J54SQ8Mt+uTwGjkHQJPGaH2e1ehRle48ptVVTeqZe549dJ JohkEwdJmS8Az0BG18AcZuZ54KzN3OrYpJkOMy53O1FE8e+DE5VG6x//eE+JW/SWqS3e 9COu/uWAwFsl+OIjkiDmYnPZgpwdQ69Xg0oJ+5d+0IlYrGE0aCpNvUT5AaYTOZA5GmSE cVb56g68LN7p05I6cokmItlBUZkupeI+yqgLr3rik6kilWpmwj7+y9fo0wY7XCH2MF6D ZDDA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id s66-v6si1703682pgc.622.2018.05.19.11.32.57; Sat, 19 May 2018 11:33:11 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752570AbeESSca (ORCPT + 99 others); Sat, 19 May 2018 14:32:30 -0400 Received: from mailout6.siol.net ([213.250.19.133]:34612 "EHLO mail.siol.net" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752451AbeESSc1 (ORCPT ); Sat, 19 May 2018 14:32:27 -0400 Received: from localhost (localhost [127.0.0.1]) by mail.siol.net (Postfix) with ESMTP id 69D965207E3; Sat, 19 May 2018 20:32:24 +0200 (CEST) X-Virus-Scanned: amavisd-new at psrvmta10.zcs-production.pri Received: from mail.siol.net ([127.0.0.1]) by localhost (psrvmta10.zcs-production.pri [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id a-alh-D8xg1t; Sat, 19 May 2018 20:32:23 +0200 (CEST) Received: from mail.siol.net (localhost [127.0.0.1]) by mail.siol.net (Postfix) with ESMTPS id C87B35207DF; Sat, 19 May 2018 20:32:23 +0200 (CEST) Received: from localhost.localdomain (unknown [194.152.15.144]) (Authenticated sender: 031275009) by mail.siol.net (Postfix) with ESMTPSA id C9457520640; Sat, 19 May 2018 20:32:18 +0200 (CEST) From: Jernej Skrabec To: maxime.ripard@bootlin.com, wens@csie.org, robh+dt@kernel.org Cc: mark.rutland@arm.com, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-clk@vger.kernel.org, linux-sunxi@googlegroups.com Subject: [PATCH 00/15] Add support for R40 HDMI pipeline Date: Sat, 19 May 2018 20:31:12 +0200 Message-Id: <20180519183127.2718-1-jernej.skrabec@siol.net> X-Mailer: git-send-email 2.17.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This series adds support for R40 HDMI pipeline. It is a bit special than other already supported pipelines because it has additional unit called TCON TOP responsible for relationship configuration between mixers, TCONs and HDMI. Additionally, it has additional gates for DSI and TV TCONs, TV encoder clock settings and pin muxing between LCD and TV encoders. However, it seems that TCON TOP will become a norm, since newer Allwinner SoCs like H6 also have this unit. I tested different possible configurations: - mixer0 <> TCON-TV0 <> HDMI - mixer0 <> TCON-TV1 <> HDMI - mixer1 <> TCON-TV0 <> HDMI - mixer1 <> TCON-TV1 <> HDMI Please review. Best regards, Jernej Jernej Skrabec (15): clk: sunxi-ng: r40: Add minimal rate for video PLLs clk: sunxi-ng: r40: Allow setting parent rate to display related clocks clk: sunxi-ng: r40: Export video PLLs dt-bindings: display: sunxi-drm: Add TCON TOP description drm/sun4i: Add TCON TOP driver drm/sun4i: tcon: Add support for tcon-top dt-bindings: display: sun4i-drm: Add R40 HDMI pipeline drm/sun4i: DE2 mixer: Add index quirk drm/sun4i: Add support for R40 mixers drm/sun4i: Add support for R40 TV TCONs drm/sun4i: DW HDMI PHY: Add support for second PLL drm/sun4i: Add support for second clock parent to DW HDMI PHY clk driver drm/sun4i: Add support for A64 HDMI PHY ARM: dts: sun8i: r40: Add HDMI pipeline ARM: dts: sun8i: r40: Enable HDMI output on BananaPi M2 Ultra .../bindings/display/sunxi/sun4i-drm.txt | 36 ++- .../boot/dts/sun8i-r40-bananapi-m2-ultra.dts | 50 ++++ arch/arm/boot/dts/sun8i-r40.dtsi | 166 ++++++++++++ drivers/clk/sunxi-ng/ccu-sun8i-r40.c | 58 ++-- drivers/clk/sunxi-ng/ccu-sun8i-r40.h | 8 +- drivers/gpu/drm/sun4i/Makefile | 3 +- drivers/gpu/drm/sun4i/sun4i_tcon.c | 67 +++++ drivers/gpu/drm/sun4i/sun4i_tcon.h | 8 + drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h | 8 +- drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c | 61 ++++- drivers/gpu/drm/sun4i/sun8i_hdmi_phy_clk.c | 90 ++++-- drivers/gpu/drm/sun4i/sun8i_mixer.c | 30 +- drivers/gpu/drm/sun4i/sun8i_mixer.h | 2 + drivers/gpu/drm/sun4i/sun8i_tcon_top.c | 256 ++++++++++++++++++ drivers/gpu/drm/sun4i/sun8i_tcon_top.h | 20 ++ include/dt-bindings/clock/sun8i-r40-ccu.h | 4 + include/dt-bindings/clock/sun8i-tcon-top.h | 11 + 17 files changed, 813 insertions(+), 65 deletions(-) create mode 100644 drivers/gpu/drm/sun4i/sun8i_tcon_top.c create mode 100644 drivers/gpu/drm/sun4i/sun8i_tcon_top.h create mode 100644 include/dt-bindings/clock/sun8i-tcon-top.h -- 2.17.0