From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from perceval.ideasonboard.com ([213.167.242.64]:60974 "EHLO perceval.ideasonboard.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727320AbeIDQfg (ORCPT ); Tue, 4 Sep 2018 12:35:36 -0400 From: Laurent Pinchart To: dri-devel@lists.freedesktop.org Cc: linux-renesas-soc@vger.kernel.org Subject: [PATCH 15/16] arm64: dts: renesas: r8a77990: ebisu: Enable VGA and HDMI outputs Date: Tue, 4 Sep 2018 15:10:26 +0300 Message-Id: <20180904121027.24031-16-laurent.pinchart+renesas@ideasonboard.com> In-Reply-To: <20180904121027.24031-1-laurent.pinchart+renesas@ideasonboard.com> References: <20180904121027.24031-1-laurent.pinchart+renesas@ideasonboard.com> Sender: linux-renesas-soc-owner@vger.kernel.org List-ID: Add the LVDS decoder, HDMI encoder, VGA encoder and HDMI and VGA connectors, and wire up the display-related nodes with clocks, pinmux and regulators. The LVDS0 and LVDS1 encoders can use the DU_DOTCLKIN0, DU_DOTCLKIN1 and EXTAL externals clocks. Two of them are provided to the SoC on the Ebisu board, hook them up in DT. Signed-off-by: Laurent Pinchart --- arch/arm64/boot/dts/renesas/r8a77990-ebisu.dts | 166 +++++++++++++++++++++++++ 1 file changed, 166 insertions(+) diff --git a/arch/arm64/boot/dts/renesas/r8a77990-ebisu.dts b/arch/arm64/boot/dts/renesas/r8a77990-ebisu.dts index 2bc3a4884b00..772ea8843d84 100644 --- a/arch/arm64/boot/dts/renesas/r8a77990-ebisu.dts +++ b/arch/arm64/boot/dts/renesas/r8a77990-ebisu.dts @@ -28,6 +28,88 @@ /* first 128MB is reserved for secure area. */ reg = <0x0 0x48000000 0x0 0x38000000>; }; + + hdmi-out { + compatible = "hdmi-connector"; + type = "a"; + + port { + hdmi_con_out: endpoint { + remote-endpoint = <&adv7511_out>; + }; + }; + }; + + lvds-decoder { + compatible = "thine,thc63lvd1024"; + vcc-supply = <®_3p3v>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + thc63lvd1024_in: endpoint { + remote-endpoint = <&lvds0_out>; + }; + }; + + port@2 { + reg = <2>; + thc63lvd1024_out: endpoint { + remote-endpoint = <&adv7511_in>; + }; + }; + }; + }; + + vga { + compatible = "vga-connector"; + + port { + vga_in: endpoint { + remote-endpoint = <&adv7123_out>; + }; + }; + }; + + vga-encoder { + compatible = "adi,adv7123"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + adv7123_in: endpoint { + remote-endpoint = <&du_out_rgb>; + }; + }; + port@1 { + reg = <1>; + adv7123_out: endpoint { + remote-endpoint = <&vga_in>; + }; + }; + }; + }; + + reg_3p3v: regulator1 { + compatible = "regulator-fixed"; + regulator-name = "fixed-3.3V"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-boot-on; + regulator-always-on; + }; + + x13_clk: x13 { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <74250000>; + }; }; &avb { @@ -47,6 +129,25 @@ }; }; +&du { + pinctrl-0 = <&du_pins>; + pinctrl-names = "default"; + status = "okay"; + + clocks = <&cpg CPG_MOD 724>, + <&cpg CPG_MOD 723>, + <&x13_clk>; + clock-names = "du.0", "du.1", "dclkin.0"; + + ports { + port@0 { + endpoint { + remote-endpoint = <&adv7123_in>; + }; + }; + }; +}; + &ehci0 { status = "okay"; }; @@ -55,6 +156,66 @@ clock-frequency = <48000000>; }; +&i2c0 { + status = "okay"; + + hdmi-encoder@39 { + compatible = "adi,adv7511w"; + reg = <0x39>; + interrupt-parent = <&gpio1>; + interrupts = <1 IRQ_TYPE_LEVEL_LOW>; + + adi,input-depth = <8>; + adi,input-colorspace = "rgb"; + adi,input-clock = "1x"; + adi,input-style = <1>; + adi,input-justification = "evenly"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + adv7511_in: endpoint { + remote-endpoint = <&thc63lvd1024_out>; + }; + }; + + port@1 { + reg = <1>; + adv7511_out: endpoint { + remote-endpoint = <&hdmi_con_out>; + }; + }; + }; + }; +}; + +&lvds0 { + status = "okay"; + + clocks = <&cpg CPG_MOD 727>, + <&x13_clk>, + <&extal_clk>; + clock-names = "fck", "dclkin.0", "extal"; + + ports { + port@1 { + lvds0_out: endpoint { + remote-endpoint = <&thc63lvd1024_in>; + }; + }; + }; +}; + +&lvds1 { + clocks = <&cpg CPG_MOD 727>, + <&x13_clk>, + <&extal_clk>; + clock-names = "fck", "dclkin.0", "extal"; +}; + &ohci0 { status = "okay"; }; @@ -67,6 +228,11 @@ }; }; + du_pins: du { + groups = "du_rgb888", "du_sync", "du_disp", "du_clk_out_0"; + function = "du"; + }; + usb0_pins: usb { groups = "usb0_b"; function = "usb0"; -- Regards, Laurent Pinchart From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: [PATCH 15/16] arm64: dts: renesas: r8a77990: ebisu: Enable VGA and HDMI outputs Date: Tue, 4 Sep 2018 15:10:26 +0300 Message-ID: <20180904121027.24031-16-laurent.pinchart+renesas@ideasonboard.com> References: <20180904121027.24031-1-laurent.pinchart+renesas@ideasonboard.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by gabe.freedesktop.org (Postfix) with ESMTPS id E18E56E3B4 for ; Tue, 4 Sep 2018 12:10:45 +0000 (UTC) In-Reply-To: <20180904121027.24031-1-laurent.pinchart+renesas@ideasonboard.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: linux-renesas-soc@vger.kernel.org List-Id: dri-devel@lists.freedesktop.org QWRkIHRoZSBMVkRTIGRlY29kZXIsIEhETUkgZW5jb2RlciwgVkdBIGVuY29kZXIgYW5kIEhETUkg YW5kIFZHQQpjb25uZWN0b3JzLCBhbmQgd2lyZSB1cCB0aGUgZGlzcGxheS1yZWxhdGVkIG5vZGVz IHdpdGggY2xvY2tzLCBwaW5tdXgKYW5kIHJlZ3VsYXRvcnMuCgpUaGUgTFZEUzAgYW5kIExWRFMx IGVuY29kZXJzIGNhbiB1c2UgdGhlIERVX0RPVENMS0lOMCwgRFVfRE9UQ0xLSU4xIGFuZApFWFRB TCBleHRlcm5hbHMgY2xvY2tzLiBUd28gb2YgdGhlbSBhcmUgcHJvdmlkZWQgdG8gdGhlIFNvQyBv biB0aGUgRWJpc3UKYm9hcmQsIGhvb2sgdGhlbSB1cCBpbiBEVC4KClNpZ25lZC1vZmYtYnk6IExh dXJlbnQgUGluY2hhcnQgPGxhdXJlbnQucGluY2hhcnQrcmVuZXNhc0BpZGVhc29uYm9hcmQuY29t PgotLS0KIGFyY2gvYXJtNjQvYm9vdC9kdHMvcmVuZXNhcy9yOGE3Nzk5MC1lYmlzdS5kdHMgfCAx NjYgKysrKysrKysrKysrKysrKysrKysrKysrKwogMSBmaWxlIGNoYW5nZWQsIDE2NiBpbnNlcnRp b25zKCspCgpkaWZmIC0tZ2l0IGEvYXJjaC9hcm02NC9ib290L2R0cy9yZW5lc2FzL3I4YTc3OTkw LWViaXN1LmR0cyBiL2FyY2gvYXJtNjQvYm9vdC9kdHMvcmVuZXNhcy9yOGE3Nzk5MC1lYmlzdS5k dHMKaW5kZXggMmJjM2E0ODg0YjAwLi43NzJlYTg4NDNkODQgMTAwNjQ0Ci0tLSBhL2FyY2gvYXJt NjQvYm9vdC9kdHMvcmVuZXNhcy9yOGE3Nzk5MC1lYmlzdS5kdHMKKysrIGIvYXJjaC9hcm02NC9i b290L2R0cy9yZW5lc2FzL3I4YTc3OTkwLWViaXN1LmR0cwpAQCAtMjgsNiArMjgsODggQEAKIAkJ LyogZmlyc3QgMTI4TUIgaXMgcmVzZXJ2ZWQgZm9yIHNlY3VyZSBhcmVhLiAqLwogCQlyZWcgPSA8 MHgwIDB4NDgwMDAwMDAgMHgwIDB4MzgwMDAwMDA+OwogCX07CisKKwloZG1pLW91dCB7CisJCWNv bXBhdGlibGUgPSAiaGRtaS1jb25uZWN0b3IiOworCQl0eXBlID0gImEiOworCisJCXBvcnQgewor CQkJaGRtaV9jb25fb3V0OiBlbmRwb2ludCB7CisJCQkJcmVtb3RlLWVuZHBvaW50ID0gPCZhZHY3 NTExX291dD47CisJCQl9OworCQl9OworCX07CisKKwlsdmRzLWRlY29kZXIgeworCQljb21wYXRp YmxlID0gInRoaW5lLHRoYzYzbHZkMTAyNCI7CisJCXZjYy1zdXBwbHkgPSA8JnJlZ18zcDN2PjsK KworCQlwb3J0cyB7CisJCQkjYWRkcmVzcy1jZWxscyA9IDwxPjsKKwkJCSNzaXplLWNlbGxzID0g PDA+OworCisJCQlwb3J0QDAgeworCQkJCXJlZyA9IDwwPjsKKwkJCQl0aGM2M2x2ZDEwMjRfaW46 IGVuZHBvaW50IHsKKwkJCQkJcmVtb3RlLWVuZHBvaW50ID0gPCZsdmRzMF9vdXQ+OworCQkJCX07 CisJCQl9OworCisJCQlwb3J0QDIgeworCQkJCXJlZyA9IDwyPjsKKwkJCQl0aGM2M2x2ZDEwMjRf b3V0OiBlbmRwb2ludCB7CisJCQkJCXJlbW90ZS1lbmRwb2ludCA9IDwmYWR2NzUxMV9pbj47CisJ CQkJfTsKKwkJCX07CisJCX07CisJfTsKKworCXZnYSB7CisJCWNvbXBhdGlibGUgPSAidmdhLWNv bm5lY3RvciI7CisKKwkJcG9ydCB7CisJCQl2Z2FfaW46IGVuZHBvaW50IHsKKwkJCQlyZW1vdGUt ZW5kcG9pbnQgPSA8JmFkdjcxMjNfb3V0PjsKKwkJCX07CisJCX07CisJfTsKKworCXZnYS1lbmNv ZGVyIHsKKwkJY29tcGF0aWJsZSA9ICJhZGksYWR2NzEyMyI7CisKKwkJcG9ydHMgeworCQkJI2Fk ZHJlc3MtY2VsbHMgPSA8MT47CisJCQkjc2l6ZS1jZWxscyA9IDwwPjsKKworCQkJcG9ydEAwIHsK KwkJCQlyZWcgPSA8MD47CisJCQkJYWR2NzEyM19pbjogZW5kcG9pbnQgeworCQkJCQlyZW1vdGUt ZW5kcG9pbnQgPSA8JmR1X291dF9yZ2I+OworCQkJCX07CisJCQl9OworCQkJcG9ydEAxIHsKKwkJ CQlyZWcgPSA8MT47CisJCQkJYWR2NzEyM19vdXQ6IGVuZHBvaW50IHsKKwkJCQkJcmVtb3RlLWVu ZHBvaW50ID0gPCZ2Z2FfaW4+OworCQkJCX07CisJCQl9OworCQl9OworCX07CisKKwlyZWdfM3Az djogcmVndWxhdG9yMSB7CisJCWNvbXBhdGlibGUgPSAicmVndWxhdG9yLWZpeGVkIjsKKwkJcmVn dWxhdG9yLW5hbWUgPSAiZml4ZWQtMy4zViI7CisJCXJlZ3VsYXRvci1taW4tbWljcm92b2x0ID0g PDMzMDAwMDA+OworCQlyZWd1bGF0b3ItbWF4LW1pY3Jvdm9sdCA9IDwzMzAwMDAwPjsKKwkJcmVn dWxhdG9yLWJvb3Qtb247CisJCXJlZ3VsYXRvci1hbHdheXMtb247CisJfTsKKworCXgxM19jbGs6 IHgxMyB7CisJCWNvbXBhdGlibGUgPSAiZml4ZWQtY2xvY2siOworCQkjY2xvY2stY2VsbHMgPSA8 MD47CisJCWNsb2NrLWZyZXF1ZW5jeSA9IDw3NDI1MDAwMD47CisJfTsKIH07CiAKICZhdmIgewpA QCAtNDcsNiArMTI5LDI1IEBACiAJfTsKIH07CiAKKyZkdSB7CisJcGluY3RybC0wID0gPCZkdV9w aW5zPjsKKwlwaW5jdHJsLW5hbWVzID0gImRlZmF1bHQiOworCXN0YXR1cyA9ICJva2F5IjsKKwor CWNsb2NrcyA9IDwmY3BnIENQR19NT0QgNzI0PiwKKwkJIDwmY3BnIENQR19NT0QgNzIzPiwKKwkJ IDwmeDEzX2Nsaz47CisJY2xvY2stbmFtZXMgPSAiZHUuMCIsICJkdS4xIiwgImRjbGtpbi4wIjsK KworCXBvcnRzIHsKKwkJcG9ydEAwIHsKKwkJCWVuZHBvaW50IHsKKwkJCQlyZW1vdGUtZW5kcG9p bnQgPSA8JmFkdjcxMjNfaW4+OworCQkJfTsKKwkJfTsKKwl9OworfTsKKwogJmVoY2kwIHsKIAlz dGF0dXMgPSAib2theSI7CiB9OwpAQCAtNTUsNiArMTU2LDY2IEBACiAJY2xvY2stZnJlcXVlbmN5 ID0gPDQ4MDAwMDAwPjsKIH07CiAKKyZpMmMwIHsKKwlzdGF0dXMgPSAib2theSI7CisKKwloZG1p LWVuY29kZXJAMzkgeworCQljb21wYXRpYmxlID0gImFkaSxhZHY3NTExdyI7CisJCXJlZyA9IDww eDM5PjsKKwkJaW50ZXJydXB0LXBhcmVudCA9IDwmZ3BpbzE+OworCQlpbnRlcnJ1cHRzID0gPDEg SVJRX1RZUEVfTEVWRUxfTE9XPjsKKworCQlhZGksaW5wdXQtZGVwdGggPSA8OD47CisJCWFkaSxp bnB1dC1jb2xvcnNwYWNlID0gInJnYiI7CisJCWFkaSxpbnB1dC1jbG9jayA9ICIxeCI7CisJCWFk aSxpbnB1dC1zdHlsZSA9IDwxPjsKKwkJYWRpLGlucHV0LWp1c3RpZmljYXRpb24gPSAiZXZlbmx5 IjsKKworCQlwb3J0cyB7CisJCQkjYWRkcmVzcy1jZWxscyA9IDwxPjsKKwkJCSNzaXplLWNlbGxz ID0gPDA+OworCisJCQlwb3J0QDAgeworCQkJCXJlZyA9IDwwPjsKKwkJCQlhZHY3NTExX2luOiBl bmRwb2ludCB7CisJCQkJCXJlbW90ZS1lbmRwb2ludCA9IDwmdGhjNjNsdmQxMDI0X291dD47CisJ CQkJfTsKKwkJCX07CisKKwkJCXBvcnRAMSB7CisJCQkJcmVnID0gPDE+OworCQkJCWFkdjc1MTFf b3V0OiBlbmRwb2ludCB7CisJCQkJCXJlbW90ZS1lbmRwb2ludCA9IDwmaGRtaV9jb25fb3V0PjsK KwkJCQl9OworCQkJfTsKKwkJfTsKKwl9OworfTsKKworJmx2ZHMwIHsKKwlzdGF0dXMgPSAib2th eSI7CisKKwljbG9ja3MgPSA8JmNwZyBDUEdfTU9EIDcyNz4sCisJCSA8JngxM19jbGs+LAorCQkg PCZleHRhbF9jbGs+OworCWNsb2NrLW5hbWVzID0gImZjayIsICJkY2xraW4uMCIsICJleHRhbCI7 CisKKwlwb3J0cyB7CisJCXBvcnRAMSB7CisJCQlsdmRzMF9vdXQ6IGVuZHBvaW50IHsKKwkJCQly ZW1vdGUtZW5kcG9pbnQgPSA8JnRoYzYzbHZkMTAyNF9pbj47CisJCQl9OworCQl9OworCX07Cit9 OworCismbHZkczEgeworCWNsb2NrcyA9IDwmY3BnIENQR19NT0QgNzI3PiwKKwkJIDwmeDEzX2Ns az4sCisJCSA8JmV4dGFsX2Nsaz47CisJY2xvY2stbmFtZXMgPSAiZmNrIiwgImRjbGtpbi4wIiwg ImV4dGFsIjsKK307CisKICZvaGNpMCB7CiAJc3RhdHVzID0gIm9rYXkiOwogfTsKQEAgLTY3LDYg KzIyOCwxMSBAQAogCQl9OwogCX07CiAKKwlkdV9waW5zOiBkdSB7CisJCWdyb3VwcyA9ICJkdV9y Z2I4ODgiLCAiZHVfc3luYyIsICJkdV9kaXNwIiwgImR1X2Nsa19vdXRfMCI7CisJCWZ1bmN0aW9u ID0gImR1IjsKKwl9OworCiAJdXNiMF9waW5zOiB1c2IgewogCQlncm91cHMgPSAidXNiMF9iIjsK IAkJZnVuY3Rpb24gPSAidXNiMCI7Ci0tIApSZWdhcmRzLAoKTGF1cmVudCBQaW5jaGFydAoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1h aWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==