From patchwork Sun Aug 13 15:11:32 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Linus Walleij X-Patchwork-Id: 109956 Delivered-To: patch@linaro.org Received: by 10.140.95.78 with SMTP id h72csp3298832qge; Sun, 13 Aug 2017 08:12:08 -0700 (PDT) X-Received: by 10.84.167.2 with SMTP id c2mr24133933plb.367.1502637128442; Sun, 13 Aug 2017 08:12:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1502637128; cv=none; d=google.com; s=arc-20160816; b=xX/bdQKG9/EwlLj5ZRm7U76C/2VWxIx9HLpToUhClwIwJ3BqBg35VGdmoWvMzFFSyZ ebQ/KyOABA3MHhtchK13wD+C777xDu9UVeIKVtb08pjK0RSIhJDLcz7ooCoyfbDGXk/2 +iNX11IPFzj3FXrRUF2dP4xNUL34fikGPAwz7Jg9oqL6TCtrLegEW/Pn8uJuXWFkhAHp zy19/0SjQTjE+JkoJVewKFU/xFfjwCnb5eXry0mXGBC9FZktp+357vW15GGJdeu9ur7Y bZK9BQWzhiSJ0pYp0FhF4fjsnWfX5x1h7HcvTiYezjy0mFrHtAvcRnSRCE+g4Kp7+hsZ r2Ng== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:cc:references:in-reply-to:message-id:date :subject:to:from:dkim-signature:delivered-to :arc-authentication-results; bh=tVb1WQcVSe4CtoAU3LSCe//N+nRqt+z66efYGNystH8=; b=EypdI1NjN52q3/il9Ffuf6OwNxf9xr6GZ1jmvD/vPkg9ep8oFm49FRWvXGAeWFZHMS Y1sf0aizxE45i5RUFwS+L4nuKR/X7+bn7b+QVxjrBEt5ykPfcu8Xuqz+GW92zEpD9Z+I d9WMEr4PoOwvOxkjHM9wtfzLFyDXsXv39/rBA9K0GSkGQBn6Q6/hO08VTGirB5/rHS50 Ai5dysq+urqiCpUVqSEr9ty9HS1ny3lvLu9s9RB2ha+oZ3VkNKPLEtLfsVTpL5fM8rxJ fDWUtIA7LDqUDtkS0WmoC9en+SZfKw/0sTKs1ZMVIHzMxs2N34+9J03ye0+65HZZbXOO AUDg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@linaro.org header.s=google header.b=hOkEtGnp; spf=pass (google.com: best guess record for domain of dri-devel-bounces@lists.freedesktop.org designates 131.252.210.177 as permitted sender) smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from gabe.freedesktop.org (gabe.freedesktop.org. [131.252.210.177]) by mx.google.com with ESMTPS id d28si3062364pfl.100.2017.08.13.08.12.08 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 13 Aug 2017 08:12:08 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of dri-devel-bounces@lists.freedesktop.org designates 131.252.210.177 as permitted sender) client-ip=131.252.210.177; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@linaro.org header.s=google header.b=hOkEtGnp; spf=pass (google.com: best guess record for domain of dri-devel-bounces@lists.freedesktop.org designates 131.252.210.177 as permitted sender) smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 94A076E0B6; Sun, 13 Aug 2017 15:12:07 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-lf0-x233.google.com (mail-lf0-x233.google.com [IPv6:2a00:1450:4010:c07::233]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0A0836E0B6 for ; Sun, 13 Aug 2017 15:12:05 +0000 (UTC) Received: by mail-lf0-x233.google.com with SMTP id d17so31499310lfe.0 for ; Sun, 13 Aug 2017 08:12:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=SxoS1Wsfp4LT8MZGnmIG0JOiRc/paGICw+KWwwFAGaY=; b=hOkEtGnp9N84scuFhJVizFn0txMUNTCz7jACCjetfjbqXkHUUZ1p6xx1c+NC1dPNrd ktpG3o6w0HeVkhMnWVWRcFfHSFZrYQkL0tHj0H0ZmNuKbnu+CJmLb9M4hZ2xoK7CaqEC cPDAqkRtxZDvEn/pwozLTDdb9MwVdKOeh5t6c= 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:in-reply-to :references; bh=SxoS1Wsfp4LT8MZGnmIG0JOiRc/paGICw+KWwwFAGaY=; b=pmqxMRxFCS2+75tmwXsjFnF91Z8w6SF/ks3vuRoIbo0ExKj2+j7LoBXExKUKRv07ay yHp256vQzZKIIun4REgWZpbB1sgOT0sXPBON8smgyJTBrrlMQNsEOh9lyYci9odHDqV2 RxSJysvQDBR50b+aRxNgWGjsFSWRO0IvU+IvIRUu7Hn5BCDKvma3SZaWfqwHctKlBAoh xAzbfZSQktiS/ha/bbjzUxOdDYQm4maprKb0sIY9HunygyKYtEQdeOtkj0E2tXtS/neG pbdysMcltJJvf0l072QP5eN2QtRWxDmW+Ct0XyTsP2qfWb+LoF7UfC+QH6oF8cZB6Xhh dxfw== X-Gm-Message-State: AHYfb5jaS9DQzf2cChWzoluLUPrEgb0BhELUU4nsCdtuUne7BNsRM+hU j/hi1n0YoDCTI2IApoDGMg== X-Received: by 10.46.88.68 with SMTP id x4mr7029404ljd.153.1502637123911; Sun, 13 Aug 2017 08:12:03 -0700 (PDT) Received: from fabina.bredbandsbolaget.se (c-277e71d5.014-348-6c756e10.cust.bredbandsbolaget.se. [213.113.126.39]) by smtp.gmail.com with ESMTPSA id e195sm1064062lfg.17.2017.08.13.08.12.02 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sun, 13 Aug 2017 08:12:02 -0700 (PDT) From: Linus Walleij To: dri-devel@lists.freedesktop.org, Eric Anholt , Daniel Vetter , Jani Nikula , Sean Paul Subject: [PATCH 4/4] ARM: dts: Add TVE/TVC and ILI9322 panel to DIR-685 Date: Sun, 13 Aug 2017 17:11:32 +0200 Message-Id: <20170813151132.24736-5-linus.walleij@linaro.org> X-Mailer: git-send-email 2.13.4 In-Reply-To: <20170813151132.24736-1-linus.walleij@linaro.org> References: <20170813151132.24736-1-linus.walleij@linaro.org> Cc: linux-arm-kernel@lists.infradead.org X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" This adds the TVE200/TVC TV-encoder and the Ilitek ILI9322 panel to the DIR-685 device tree. This brings graphics to this funky router and it is possible to even run a console on its tiny screen. Incidentally this requires us to disable the access to the parallel (NOR) flash, as the communication pins to the panel are shared with the flash memory. To access the flash, a separate kernel with the panel disabled and the flash enabled should be booted. The pin control selecting whether to use the lines cannot be altered at runtime due to hardware constraints. Signed-off-by: Linus Walleij --- DRM developers: I will merge this patch through the ARM SoC tree. It is only included in this series for completion. --- arch/arm/boot/dts/gemini-dlink-dir-685.dts | 77 +++++++++++++++++++++++++++++- 1 file changed, 76 insertions(+), 1 deletion(-) diff --git a/arch/arm/boot/dts/gemini-dlink-dir-685.dts b/arch/arm/boot/dts/gemini-dlink-dir-685.dts index 094a29624b8d..6c8d3d839ae6 100644 --- a/arch/arm/boot/dts/gemini-dlink-dir-685.dts +++ b/arch/arm/boot/dts/gemini-dlink-dir-685.dts @@ -46,6 +46,59 @@ }; }; + vdisp: regulator { + compatible = "regulator-fixed"; + regulator-name = "display-power"; + regulator-min-microvolt = <3600000>; + regulator-max-microvolt = <3600000>; + /* Collides with LCD E */ + gpio = <&gpio0 16 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + spi { + compatible = "spi-gpio"; + #address-cells = <1>; + #size-cells = <0>; + + /* Collides with IDE pins, that's cool (we do not use them) */ + gpio-sck = <&gpio1 5 GPIO_ACTIVE_HIGH>; + gpio-miso = <&gpio1 8 GPIO_ACTIVE_HIGH>; + gpio-mosi = <&gpio1 7 GPIO_ACTIVE_HIGH>; + /* Collides with pflash CE1, not so cool */ + cs-gpios = <&gpio0 20 GPIO_ACTIVE_HIGH>; + num-chipselects = <1>; + + panel: display@0 { + compatible = "ilitek,ili9322"; + reg = <0>; + /* 50 ns min period = 20 MHz */ + spi-max-frequency = <20000000>; + spi-cpol; /* Clock active low */ + + /* Panel LM918A01-1A SY-B4-091116-E0199 */ + width-mm = <65>; + height-mm = <50>; + ilitek,entry-mode = <11>; + ilitek,vreg1out-microvolt = <4600>; + ilitek,vcom-high-percent = <91>; + ilitek,vcom-amplitude-percent = <114>; + ilitek,gamma-correction-neg = <0xa>, <0x5>, <0x7>, + <0x7>, <0x7>, <0x5>, <0x1>, <0x6>; + ilitek,gamma-correction-pos = <0x7>, <0x7>, <0x3>, + <0x2>, <0x3>, <0x5>, <0x7>, <0x2>; + vcc-supply = <&vdisp>; + iovcc-supply = <&vdisp>; + vci-supply = <&vdisp>; + + port { + panel_in: endpoint { + remote-endpoint = <&display_out>; + }; + }; + }; + }; + leds { compatible = "gpio-leds"; led@7 { @@ -114,7 +167,16 @@ soc { flash@30000000 { - status = "okay"; + /* + * Flash access is by default disabled, because it + * collides with the Chip Enable signal for the display + * panel, that reuse the parallel flash Chip Select 1 + * (CS1). Enabling flash makes graphics stop working. + * + * We might be able to hack around this by letting + * GPIO poke around in the flash controller registers. + */ + /* status = "okay"; */ /* 32MB of flash */ reg = <0x30000000 0x02000000>; @@ -241,5 +303,18 @@ ata@63000000 { status = "okay"; }; + + tvc@6a000000 { + status = "okay"; + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + display_out: endpoint { + remote-endpoint = <&panel_in>; + }; + }; + }; }; };