From patchwork Fri Feb 15 05:09:46 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vasily Khoruzhick X-Patchwork-Id: 1042587 Return-Path: X-Original-To: incoming-dt@patchwork.ozlabs.org Delivered-To: patchwork-incoming-dt@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=devicetree-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="PKTgwk5k"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 4411YG5Bf4z9s5c for ; Fri, 15 Feb 2019 16:10:26 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726620AbfBOFKX (ORCPT ); Fri, 15 Feb 2019 00:10:23 -0500 Received: from mail-pf1-f195.google.com ([209.85.210.195]:40881 "EHLO mail-pf1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726120AbfBOFKX (ORCPT ); Fri, 15 Feb 2019 00:10:23 -0500 Received: by mail-pf1-f195.google.com with SMTP id h1so4255528pfo.7 for ; Thu, 14 Feb 2019 21:10:22 -0800 (PST) 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=8s+H7lj60BiLptDN+KBUxWv5PfCaR6r6g6JP6RGFK5Q=; b=PKTgwk5k1GG+tI8EdXEEpv7ycf2Dx25kmfLtcZKl+8Q/B/ERCrHcW1EEDc9T9te1DH fSy4mgBcTCdsdmCtdpa97Mur6zAN0rde3FTl4/CrwhCoMzW6aDAoLZsEEV5gOczRj0gk h8GpWkL4nq+8k1TWuLPE4gmy8YWYKudACoBDGw1QQCO19LUqaDTcuK9GDdoWOM7z6yXj MuAsp6OGuAznASAngk5GY0/IZo5R86TTp7EEVWIqu5xzhdME3KGNDFQsSWFrhBhawrQI sTiGsg37YnW+LehPsxHTCXtFkxoRUNYfNwhy6U1VUDvTbDLWsf92PoPkS7EUoUpys6Zh +whA== 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=8s+H7lj60BiLptDN+KBUxWv5PfCaR6r6g6JP6RGFK5Q=; b=Qm1cdVlMXgCz3Idm98SzhtB7Pv/X6W9orDTLZ/3HBm35Jq8Lv/MDYvmr4NoZ3uHaEr AeGqb7DG0Stw8mPjlz0BqsPDqf8i3GlpyA8AqIQHjFarcBWoCRToUQAJI8If9+E5Szq4 MddT+a7AbCw9CmE/o+h3IVCiSaPbCk3DRzuhg/wBlT0ZhKbdbE5gHtmVgEzxQOIOe73R Me78w11Fqx40KN+N4S/3kKPzCKQ82L5CZfR1VD0GuqVm6uAgK7xdlhiCKcIgoEfpQZ2o YjY8bfR1HKnTV3BWRzjiKEfhkSFjcmEKGJqAfYQPTczzR2DKYWUqg7h3YWjfJX7OSke7 +81g== X-Gm-Message-State: AHQUAuZdWLNOqp25Ewj6xr/nhjC9FuXhkphbKMuOQc9yf9bKftMa3waB 1IOHhS2WcIo5s93PBifbDxA= X-Google-Smtp-Source: AHgI3IaT3jYNlXrg3NqN9vZzmdZlQNEDmsFK3Rp3RpMgGmpsd9JuVSRht7MsnDBZo1Ie5KIZcIeSdg== X-Received: by 2002:a63:4e1a:: with SMTP id c26mr3594383pgb.175.1550207422325; Thu, 14 Feb 2019 21:10:22 -0800 (PST) Received: from anarsoul-thinkpad.lan (216-71-213-236.dyn.novuscom.net. [216.71.213.236]) by smtp.gmail.com with ESMTPSA id m9sm4900442pgr.7.2019.02.14.21.10.21 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 14 Feb 2019 21:10:21 -0800 (PST) From: Vasily Khoruzhick To: David Airlie , Daniel Vetter , Rob Herring , Mark Rutland , Thierry Reding , Maxime Ripard , Chen-Yu Tsai , Archit Taneja , Andrzej Hajda , Laurent Pinchart , Icenowy Zheng , Sean Paul , dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@googlegroups.com Cc: Vasily Khoruzhick Subject: [PATCH v3 00/11] Analogix ANX6345 RGB-(e)DP bridge support Date: Thu, 14 Feb 2019 21:09:46 -0800 Message-Id: <20190215050957.20755-1-anarsoul@gmail.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org This patchset brings support for Analogix ANX6345 RGB-(e)DP bridge, which is used by some Allwinner A64 laptops, such as Pinebook and Olimex TERES-I. It reuses some definitions from ANX78xx driver that already exists in the kernel tree, but the driver code itself is rewritten due to significant difference between ANX6345 and ANX78xx. This patchset also adds support for LCD panels used in Pinebook, dt property to disable strict dot clock check in sun4i drm driver and adds nodes necessary for LCD support into Pinebook dts. v2: - sort Kconfig and Makefile entries alphabetically - remove panel supply from anx6345 - add support for panels into anx6345 driver - add compatible and binding for generic eDP panel - replace patch that adds 5% tolerance for dotclock check in sun4i driver for panel and bridges with patch that adds 1% tolerance in case if bridge is connected. v3: - replace 1% tolerance patch with patch that adds dt property to disable strict dot clock check - add support for LCD panels used in Pinebook - drop generic eDP panel driver - drop Teres-I changes, I don't have hardware to test them anyway. Icenowy Zheng (7): drm/bridge: move ANA78xx driver to analogix subdirectory drm/bridge: split some definitions of ANX78xx to dedicated headers drm/bridge: extract some Analogix I2C DP common code dt-bindings: Add ANX6345 DP/eDP transmitter binding drm/bridge: Add Analogix anx6345 support arm64: allwinner: a64: add pinmux for RGB666 LCD arm64: allwinner: a64: enable LCD-related hardware for Pinebook Vasily Khoruzhick (4): drm/sun4i: rgb: Add DT property to disable strict clock rate check drm/panel: simple: Add BOE HB140WX1-501 panel support dt-bindings: Add Guangdong Neweast Optoelectronics CO. LTD vendor prefix drm/panel: simple: Add NewEast Optoelectronics CO., LTD WJFH116008A panel support .../bindings/display/bridge/anx6345.txt | 56 ++ .../display/panel/boe,hb140wx1-501.txt | 7 + .../display/panel/neweast,wjfh116008a.txt | 7 + .../bindings/display/sunxi/sun4i-drm.txt | 2 + .../devicetree/bindings/vendor-prefixes.txt | 1 + .../dts/allwinner/sun50i-a64-pinebook.dts | 76 ++ arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 9 + drivers/gpu/drm/bridge/Kconfig | 10 - drivers/gpu/drm/bridge/Makefile | 4 +- drivers/gpu/drm/bridge/analogix-anx78xx.h | 719 --------------- drivers/gpu/drm/bridge/analogix/Kconfig | 25 + drivers/gpu/drm/bridge/analogix/Makefile | 4 + .../drm/bridge/analogix/analogix-anx6345.c | 845 ++++++++++++++++++ .../bridge/{ => analogix}/analogix-anx78xx.c | 146 +-- .../drm/bridge/analogix/analogix-anx78xx.h | 265 ++++++ .../drm/bridge/analogix/analogix-i2c-dptx.c | 169 ++++ .../drm/bridge/analogix/analogix-i2c-dptx.h | 258 ++++++ .../bridge/analogix/analogix-i2c-txcommon.h | 240 +++++ drivers/gpu/drm/panel/panel-simple.c | 65 ++ drivers/gpu/drm/sun4i/sun4i_rgb.c | 5 + drivers/gpu/drm/sun4i/sun4i_tcon.c | 3 + drivers/gpu/drm/sun4i/sun4i_tcon.h | 1 + 22 files changed, 2041 insertions(+), 876 deletions(-) create mode 100644 Documentation/devicetree/bindings/display/bridge/anx6345.txt create mode 100644 Documentation/devicetree/bindings/display/panel/boe,hb140wx1-501.txt create mode 100644 Documentation/devicetree/bindings/display/panel/neweast,wjfh116008a.txt delete mode 100644 drivers/gpu/drm/bridge/analogix-anx78xx.h create mode 100644 drivers/gpu/drm/bridge/analogix/analogix-anx6345.c rename drivers/gpu/drm/bridge/{ => analogix}/analogix-anx78xx.c (90%) create mode 100644 drivers/gpu/drm/bridge/analogix/analogix-anx78xx.h create mode 100644 drivers/gpu/drm/bridge/analogix/analogix-i2c-dptx.c create mode 100644 drivers/gpu/drm/bridge/analogix/analogix-i2c-dptx.h create mode 100644 drivers/gpu/drm/bridge/analogix/analogix-i2c-txcommon.h