From patchwork Tue Nov 26 08:15:59 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andre Heider X-Patchwork-Id: 1200805 X-Patchwork-Delegate: jagannadh.teki@gmail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="lCIJYSTR"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 47McM76PHyz9sP3 for ; Tue, 26 Nov 2019 19:21:55 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 8204CC21F0F; Tue, 26 Nov 2019 08:21:01 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=FREEMAIL_FROM, RCVD_IN_MSPIKE_H2, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 6BE62C21F58; Tue, 26 Nov 2019 08:16:27 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 623A1C21F6A; Tue, 26 Nov 2019 08:16:20 +0000 (UTC) Received: from mail-wm1-f65.google.com (mail-wm1-f65.google.com [209.85.128.65]) by lists.denx.de (Postfix) with ESMTPS id D94E5C21F49 for ; Tue, 26 Nov 2019 08:16:05 +0000 (UTC) Received: by mail-wm1-f65.google.com with SMTP id b11so2101215wmj.4 for ; Tue, 26 Nov 2019 00:16:05 -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:in-reply-to:references :mime-version:content-transfer-encoding; bh=TJGsITgaA8uq9tXCxn2snVsvevdKdOCQL+a17s24hHo=; b=lCIJYSTRztYJkZ/Zl1yqZ3YhJvYObBjY0lQnRU+R/M8sIm4vUcWMNz+n/DjCgnRkfb b2/5OqxqJVcKkYjtj6EzbQDKUoiJ6h/pQOB9moyrQS+QZFxHghU0JlLdXtxCAZx+sBZN T8BuN6sYQvVF4QCQ6hsxIRE2b/0onjaUFgt79ha48MmYun6bw8hls4fWZzYuv3km6duC o3jCisx5ZijcxCz3wA/zZXS0ZBX3vi76lSFidqammjyeAVhSp/FVY+EKZ8Nrc81zvk6s OO1wVgbGnCB9DaX5kSSx1N5q5twKZto1G8qic8J2qWw/mkwdzjGAiFjKCaIznlemdnKE 6BtQ== 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:mime-version:content-transfer-encoding; bh=TJGsITgaA8uq9tXCxn2snVsvevdKdOCQL+a17s24hHo=; b=XzBzhut+mC/bm2hOo9s4XxAGvo4ZXfX625Az6KaSxsDUhemco76dGEYQM+NL4Ar8vt 3AT9S65+T5H0PqRiGQ7yF1K15FTjLfElBj5ay3Q5nJXJlc3mRBt9C0uhTbSySX3popFS 7dKaDjHITyIx5xlSgd6IcuqOrqgaWQfJAHJMYHy5FMgFayOT6ppi3wnvBKuTNkuDr62h 4JZH5/KBgRxlsnxW3890JBtMMYhdoYuT3ZgSJ2n8WEIOJcGzydxtc7u2B8uF9aazX5AD 4k4j3kNsltcNwbniR47ZaQqvZxh1FN+7VgFojMlaO8HfU6G6AsTU2PzrN3K25XGSSLeb 8wag== X-Gm-Message-State: APjAAAUj1lMiH/VuEidGnRzFcERWahoGtOb9zG5d56d701j3fF9qJjLZ fGDN0oA0vUGAGEOrzIpBEWE= X-Google-Smtp-Source: APXvYqwM1ldGhiU9d0yuUbRWssLYWLIkpVVt5nMsYGXq+xAkseQHjrfnJcq2f2R1oaW92vH7Qo2WaQ== X-Received: by 2002:a1c:2b82:: with SMTP id r124mr2954913wmr.112.1574756165566; Tue, 26 Nov 2019 00:16:05 -0800 (PST) Received: from mamamia.internal (a89-183-34-158.net-htp.de. [89.183.34.158]) by smtp.gmail.com with ESMTPSA id c1sm13436855wrs.24.2019.11.26.00.16.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Nov 2019 00:16:05 -0800 (PST) From: Andre Heider To: Jagan Teki , Maxime Ripard Date: Tue, 26 Nov 2019 09:15:59 +0100 Message-Id: <20191126081602.2264519-2-a.heider@gmail.com> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191126081602.2264519-1-a.heider@gmail.com> References: <20191126081602.2264519-1-a.heider@gmail.com> MIME-Version: 1.0 Cc: Ondrej Jirman , u-boot@lists.denx.de, Jernej Skrabec Subject: [U-Boot] [PATCH v2 1/4] sunxi: board: Use eth_env_set_enetaddr_by_index() X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" That helper takes care of assembling the correct name and doesn't allow overwriting existing env vars, so drop the checks here. Signed-off-by: Andre Heider --- board/sunxi/board.c | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/board/sunxi/board.c b/board/sunxi/board.c index e3b2d13892..bb35d6b66e 100644 --- a/board/sunxi/board.c +++ b/board/sunxi/board.c @@ -807,14 +807,6 @@ static void setup_environment(const void *fdt) if (!fdt_get_alias(fdt, ethaddr)) continue; - if (i == 0) - strcpy(ethaddr, "ethaddr"); - else - sprintf(ethaddr, "eth%daddr", i); - - if (env_get(ethaddr)) - continue; - /* Non OUI / registered MAC address */ mac_addr[0] = (i << 4) | 0x02; mac_addr[1] = (sid[0] >> 0) & 0xff; @@ -823,7 +815,7 @@ static void setup_environment(const void *fdt) mac_addr[4] = (sid[3] >> 8) & 0xff; mac_addr[5] = (sid[3] >> 0) & 0xff; - eth_env_set_enetaddr(ethaddr, mac_addr); + eth_env_set_enetaddr_by_index("eth", i, mac_addr); } if (!env_get("serial#")) { From patchwork Tue Nov 26 08:16:00 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andre Heider X-Patchwork-Id: 1200801 X-Patchwork-Delegate: jagannadh.teki@gmail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="VHihpcxE"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 47McKb4M9Vz9sP3 for ; Tue, 26 Nov 2019 19:20:35 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 3274BC21F01; Tue, 26 Nov 2019 08:20:26 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=FREEMAIL_FROM, RCVD_IN_MSPIKE_H2, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 168BCC21F76; Tue, 26 Nov 2019 08:16:23 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 7F3B5C21F49; Tue, 26 Nov 2019 08:16:20 +0000 (UTC) Received: from mail-wr1-f66.google.com (mail-wr1-f66.google.com [209.85.221.66]) by lists.denx.de (Postfix) with ESMTPS id DC9A9C21E3A for ; Tue, 26 Nov 2019 08:16:06 +0000 (UTC) Received: by mail-wr1-f66.google.com with SMTP id 4so17985292wro.7 for ; Tue, 26 Nov 2019 00:16:06 -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:in-reply-to:references :mime-version:content-transfer-encoding; bh=STXqCAh1W9tZ50XVv4RGisNMQUpE5G3Vw0qCpJnTkE0=; b=VHihpcxEPU0TCrvuwvOKwxV/eUbBEX+VpAkksGnlHctsNHxgfNcRYUNhI9GFi0CZNr LhoTvBjXYcLH7rAEXjY0EC2TvKnaBMzYYXkpMiZ1pBLrvCHv5YDtfyTru/rBJPGWCbUr ct2+ni3P7YsPYV7q2oyR0xHx4pOHh2o0al9Mk6OLouCnSfO826kCMsh+EoB3ptfJbsRm dCJws/QkexhmSHXWWQ7aeTJ0GpHPr32+cfkDglmZclG3huPin7uPt6rg91y72in7Fi3F 0rq7UCwrKzS/hVBV6gnpG3cbxiiDbH5TsDN5w7ld/pJySMfgIMTRpTDuB1qWJavVGkuR DxnA== 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:mime-version:content-transfer-encoding; bh=STXqCAh1W9tZ50XVv4RGisNMQUpE5G3Vw0qCpJnTkE0=; b=hNC3uIkDhcpv0RYY+C1n7NXIdSS/Ti+EY7mo3LyVWJ/7cTNn1bljHvOf46CajE0/lR DMBLFtfUMVEUOjMQp81zW978Rk2rif4kLhZYhXTtKM6WF+x3a7maHFDkn897eAwornp0 PaA6QDUTt7XuzpEUSk271kWoF12/ZB8XHlPZdnWxi0u8aS7ySPaDdkQkKRJO0m0tIkdH 3Fr33uF6ACOIugLA2uIfHA4zrmVbTMygHD2NOAdld61dPuTdqZ/0t3rb3XxVDnxIDl2j 3QobY/puu9uAcNQzwTV3RW1J6kvQARgptJaeZR5tbUWMqupVnSHvBxkdeAyKrq2CFxvU RyIA== X-Gm-Message-State: APjAAAVzs8/Q5zP9csi7W9t0TPJ84uprIQ6lWYLccz4Qnes34MFIAygB dIq2K0pDvgS4fvGnrBUtOqo= X-Google-Smtp-Source: APXvYqxno5asG2HneSgRTEtcCu+uCZJXusOI+TAddzLHMjJoW7ekKqcGoYEJ1XKVLzfmjKsHnZHj/A== X-Received: by 2002:a5d:530f:: with SMTP id e15mr36917124wrv.119.1574756166525; Tue, 26 Nov 2019 00:16:06 -0800 (PST) Received: from mamamia.internal (a89-183-34-158.net-htp.de. [89.183.34.158]) by smtp.gmail.com with ESMTPSA id c1sm13436855wrs.24.2019.11.26.00.16.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Nov 2019 00:16:06 -0800 (PST) From: Andre Heider To: Jagan Teki , Maxime Ripard Date: Tue, 26 Nov 2019 09:16:00 +0100 Message-Id: <20191126081602.2264519-3-a.heider@gmail.com> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191126081602.2264519-1-a.heider@gmail.com> References: <20191126081602.2264519-1-a.heider@gmail.com> MIME-Version: 1.0 Cc: Ondrej Jirman , u-boot@lists.denx.de, Jernej Skrabec Subject: [U-Boot] [PATCH v2 2/4] arm: sunxi: add a config option to fixup a Bluetooth address X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Some Bluetooth controllers, like the BCM4345C5 of the Orange Pi 3, ship with the controller default address. Add a config option to fix it up so it can function properly. Signed-off-by: Andre Heider Tested-by: Ondrej Jirman --- arch/arm/mach-sunxi/Kconfig | 12 ++++++++++++ board/sunxi/board.c | 30 ++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) diff --git a/arch/arm/mach-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig index 16d41b83af..b41c64870e 100644 --- a/arch/arm/mach-sunxi/Kconfig +++ b/arch/arm/mach-sunxi/Kconfig @@ -1009,4 +1009,16 @@ config PINE64_DT_SELECTION option, the device tree selection code specific to Pine64 which utilizes the DRAM size will be enabled. +config FIXUP_BDADDR + string "Fixup the Bluetooth controller address" + depends on MACH_SUN50I_H6 + default "" + help + This option specifies the DT compatible name of the Bluetooth + controller for which to set the "local-bd-address" property. + Set this option if your device ships with the Bluetooth controller + default address. + The used address is "bdaddr" if set, and "ethaddr" with the LSB + flipped elsewise. + endif diff --git a/board/sunxi/board.c b/board/sunxi/board.c index bb35d6b66e..89851102d1 100644 --- a/board/sunxi/board.c +++ b/board/sunxi/board.c @@ -856,6 +856,34 @@ int misc_init_r(void) return 0; } +static void fixup_bd_address(void *blob) +{ +#ifdef CONFIG_FIXUP_BDADDR + /* Some devices ship with a Bluetooth controller default address. + * Set a valid address through the device tree. + */ + uchar tmp[ETH_ALEN], bdaddr[ETH_ALEN]; + int i; + + if (strlen(CONFIG_FIXUP_BDADDR) < 1) + return; + + if (!eth_env_get_enetaddr("bdaddr", tmp)) { + if (!eth_env_get_enetaddr("ethaddr", tmp)) + return; + + tmp[ETH_ALEN - 1] ^= 1; + } + + /* Addresses need to be in the binary format of the corresponding stack */ + for (i = 0; i < ETH_ALEN; ++i) + bdaddr[i] = tmp[ETH_ALEN - i - 1]; + + do_fixup_by_compat(blob, CONFIG_FIXUP_BDADDR, + "local-bd-address", bdaddr, ETH_ALEN, 1); +#endif +} + int ft_board_setup(void *blob, bd_t *bd) { int __maybe_unused r; @@ -866,6 +894,8 @@ int ft_board_setup(void *blob, bd_t *bd) */ setup_environment(blob); + fixup_bd_address(blob); + #ifdef CONFIG_VIDEO_DT_SIMPLEFB r = sunxi_simplefb_setup(blob); if (r) From patchwork Tue Nov 26 08:16:01 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andre Heider X-Patchwork-Id: 1200804 X-Patchwork-Delegate: jagannadh.teki@gmail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="NSt2oJv5"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 47McLq5WR0z9sPK for ; Tue, 26 Nov 2019 19:21:39 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 74170C21F7E; Tue, 26 Nov 2019 08:20:45 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=FREEMAIL_FROM, RCVD_IN_MSPIKE_H2, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 05C20C21F38; Tue, 26 Nov 2019 08:16:27 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id C6A93C21F6A; Tue, 26 Nov 2019 08:16:20 +0000 (UTC) Received: from mail-wr1-f65.google.com (mail-wr1-f65.google.com [209.85.221.65]) by lists.denx.de (Postfix) with ESMTPS id 9796BC21F7E for ; Tue, 26 Nov 2019 08:16:08 +0000 (UTC) Received: by mail-wr1-f65.google.com with SMTP id g7so578761wrw.4 for ; Tue, 26 Nov 2019 00:16:08 -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:in-reply-to:references :mime-version:content-transfer-encoding; bh=rDooV9A4U0QkYxs64fEHZKNneG3U4zu9TF566dTI7HY=; b=NSt2oJv5fuaHB4H1DHY6g9o/E0la5Z5QPAZWV6//kzBGf3NCzDRK61ayxlJe0aJgOR zWE3bJpV7kRsWuQq8LmD0uiyE/51I+DFEj284E5AQ/RYtwpJRHE1nCgvP5r48zso5NsH Y8Fo29xX5NbpGk6O7stvV4bTXF/8CXouzX8Efk6sm2ljfEzCCNPCMxsxCDywOKvng5tA wFczfDezI5AcTnzXJX7ReFBYYuHUmcXNIsQDUfXnDEkJfz34kfM26CmVcKQzT3wXfqub IPmQPpn9Gw20A9NSybuIlvdyg8yRltwS632Y/bfUKifnczpUsDeOSSJ9S92sjubRtde+ BEJQ== 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:mime-version:content-transfer-encoding; bh=rDooV9A4U0QkYxs64fEHZKNneG3U4zu9TF566dTI7HY=; b=RvnhTDSdx1/mWA3Zc98ODYWin6keGfb89DPyqgF71kJ0uJHy6JRRiI9V+zP7F2uA+P 3eJVcR6pj4rdnZfF8ylcde5b0jMkFM8/7cUq8r7ccl6ABF50vTuezi2QgpkjOv8cmMgw OC8jiRKPb/FVDDrK2sf60zygzxxR+Uv6yu6b3hBD8VyWPrVGX84itQYa2u1gon7nXsVO DNjI6dfwfa8zc/5A3sLunwuTxOBCq7GLgot8PFV1WODUgtomKlTq646rUkjyAVr1OQAA CIiaDCmuh3ysWt7l3tZ1+i2OWh4Vw81+0MH687dtuGD7fGI66Fmn/yQXWeUlXJ7ObBS6 k9fA== X-Gm-Message-State: APjAAAUS9vpICYW2yc2owxUGsg8xRRimaqsYwPeoSfNLTbzkHi+xkC+b C27LeoNCH8zM70IXzpSHwUDj803d X-Google-Smtp-Source: APXvYqzfGg6rKDF6KSFZI3sMkj2PDtIob3X0mgryII0JHoR4U01fVmnYw2OGnqFEpL/Ic8O+qLIbAg== X-Received: by 2002:a05:6000:1286:: with SMTP id f6mr31829521wrx.44.1574756168042; Tue, 26 Nov 2019 00:16:08 -0800 (PST) Received: from mamamia.internal (a89-183-34-158.net-htp.de. [89.183.34.158]) by smtp.gmail.com with ESMTPSA id c1sm13436855wrs.24.2019.11.26.00.16.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Nov 2019 00:16:07 -0800 (PST) From: Andre Heider To: Jagan Teki , Maxime Ripard Date: Tue, 26 Nov 2019 09:16:01 +0100 Message-Id: <20191126081602.2264519-4-a.heider@gmail.com> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191126081602.2264519-1-a.heider@gmail.com> References: <20191126081602.2264519-1-a.heider@gmail.com> MIME-Version: 1.0 Cc: Ondrej Jirman , u-boot@lists.denx.de, Jernej Skrabec Subject: [U-Boot] [PATCH v2 3/4] arm64: dts: sync Allwinner H6 files X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Taken from the kernel tag v5.4. Drop the /omit-if-no-ref/ keyword as it's not supported by u-boot. Signed-off-by: Andre Heider --- arch/arm/dts/sun50i-h6-beelink-gs1.dts | 27 +++++ arch/arm/dts/sun50i-h6-orangepi.dtsi | 4 + arch/arm/dts/sun50i-h6-pine-h64.dts | 4 + arch/arm/dts/sun50i-h6.dtsi | 137 ++++++++++++++++++++++--- 4 files changed, 155 insertions(+), 17 deletions(-) diff --git a/arch/arm/dts/sun50i-h6-beelink-gs1.dts b/arch/arm/dts/sun50i-h6-beelink-gs1.dts index 0dc33c90dd..1d05d57014 100644 --- a/arch/arm/dts/sun50i-h6-beelink-gs1.dts +++ b/arch/arm/dts/sun50i-h6-beelink-gs1.dts @@ -25,6 +25,7 @@ connector { compatible = "hdmi-connector"; type = "a"; + ddc-en-gpios = <&pio 7 2 GPIO_ACTIVE_HIGH>; /* PH2 */ port { hdmi_con_in: endpoint { @@ -51,6 +52,24 @@ regulator-max-microvolt = <5000000>; regulator-always-on; }; + + sound-spdif { + compatible = "simple-audio-card"; + simple-audio-card,name = "sun50i-h6-spdif"; + + simple-audio-card,cpu { + sound-dai = <&spdif>; + }; + + simple-audio-card,codec { + sound-dai = <&spdif_out>; + }; + }; + + spdif_out: spdif-out { + #sound-dai-cells = <0>; + compatible = "linux,spdif-dit"; + }; }; &de { @@ -232,6 +251,10 @@ }; }; +&r_ir { + status = "okay"; +}; + &r_pio { /* * PL0 and PL1 are used for PMIC I2C @@ -243,6 +266,10 @@ vcc-pm-supply = <®_aldo1>; }; +&spdif { + status = "okay"; +}; + &uart0 { pinctrl-names = "default"; pinctrl-0 = <&uart0_ph_pins>; diff --git a/arch/arm/dts/sun50i-h6-orangepi.dtsi b/arch/arm/dts/sun50i-h6-orangepi.dtsi index 62e27948a3..ec9b6a578e 100644 --- a/arch/arm/dts/sun50i-h6-orangepi.dtsi +++ b/arch/arm/dts/sun50i-h6-orangepi.dtsi @@ -189,6 +189,10 @@ }; }; +&r_ir { + status = "okay"; +}; + &uart0 { pinctrl-names = "default"; pinctrl-0 = <&uart0_ph_pins>; diff --git a/arch/arm/dts/sun50i-h6-pine-h64.dts b/arch/arm/dts/sun50i-h6-pine-h64.dts index 1898345183..30102daf83 100644 --- a/arch/arm/dts/sun50i-h6-pine-h64.dts +++ b/arch/arm/dts/sun50i-h6-pine-h64.dts @@ -255,6 +255,10 @@ }; }; +&r_ir { + status = "okay"; +}; + &r_pio { vcc-pm-supply = <®_aldo1>; }; diff --git a/arch/arm/dts/sun50i-h6.dtsi b/arch/arm/dts/sun50i-h6.dtsi index a117f479ae..bdba221a67 100644 --- a/arch/arm/dts/sun50i-h6.dtsi +++ b/arch/arm/dts/sun50i-h6.dtsi @@ -56,14 +56,6 @@ status = "disabled"; }; - iosc: internal-osc-clk { - #clock-cells = <0>; - compatible = "fixed-clock"; - clock-frequency = <16000000>; - clock-accuracy = <300000000>; - clock-output-names = "iosc"; - }; - osc24M: osc24M_clk { #clock-cells = <0>; compatible = "fixed-clock"; @@ -71,11 +63,11 @@ clock-output-names = "osc24M"; }; - osc32k: osc32k_clk { + ext_osc32k: ext_osc32k_clk { #clock-cells = <0>; compatible = "fixed-clock"; clock-frequency = <32768>; - clock-output-names = "osc32k"; + clock-output-names = "ext_osc32k"; }; psci { @@ -197,7 +189,7 @@ ccu: clock@3001000 { compatible = "allwinner,sun50i-h6-ccu"; reg = <0x03001000 0x1000>; - clocks = <&osc24M>, <&osc32k>, <&iosc>; + clocks = <&osc24M>, <&rtc 0>, <&rtc 2>; clock-names = "hosc", "losc", "iosc"; #clock-cells = <1>; #reset-cells = <1>; @@ -215,7 +207,7 @@ #dma-cells = <1>; }; - sid: sid@3006000 { + sid: efuse@3006000 { compatible = "allwinner,sun50i-h6-sid"; reg = <0x03006000 0x400>; }; @@ -225,6 +217,7 @@ "allwinner,sun6i-a31-wdt"; reg = <0x030090a0 0x20>; interrupts = ; + clocks = <&osc24M>; /* Broken on some H6 boards */ status = "disabled"; }; @@ -236,7 +229,7 @@ , , ; - clocks = <&ccu CLK_APB1>, <&osc24M>, <&osc32k>; + clocks = <&ccu CLK_APB1>, <&osc24M>, <&rtc 0>; clock-names = "apb", "hosc", "losc"; gpio-controller; #gpio-cells = <3>; @@ -256,6 +249,21 @@ function = "hdmi"; }; + i2c0_pins: i2c0-pins { + pins = "PD25", "PD26"; + function = "i2c0"; + }; + + i2c1_pins: i2c1-pins { + pins = "PH5", "PH6"; + function = "i2c1"; + }; + + i2c2_pins: i2c2-pins { + pins = "PD23", "PD24"; + function = "i2c2"; + }; + mmc0_pins: mmc0-pins { pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5"; @@ -285,6 +293,11 @@ bias-pull-up; }; + spdif_tx_pin: spdif-tx-pin { + pins = "PH7"; + function = "spdif"; + }; + uart0_ph_pins: uart0-ph-pins { pins = "PH0", "PH1"; function = "uart0"; @@ -394,6 +407,48 @@ status = "disabled"; }; + i2c0: i2c@5002000 { + compatible = "allwinner,sun50i-h6-i2c", + "allwinner,sun6i-a31-i2c"; + reg = <0x05002000 0x400>; + interrupts = ; + clocks = <&ccu CLK_BUS_I2C0>; + resets = <&ccu RST_BUS_I2C0>; + pinctrl-names = "default"; + pinctrl-0 = <&i2c0_pins>; + status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; + }; + + i2c1: i2c@5002400 { + compatible = "allwinner,sun50i-h6-i2c", + "allwinner,sun6i-a31-i2c"; + reg = <0x05002400 0x400>; + interrupts = ; + clocks = <&ccu CLK_BUS_I2C1>; + resets = <&ccu RST_BUS_I2C1>; + pinctrl-names = "default"; + pinctrl-0 = <&i2c1_pins>; + status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; + }; + + i2c2: i2c@5002800 { + compatible = "allwinner,sun50i-h6-i2c", + "allwinner,sun6i-a31-i2c"; + reg = <0x05002800 0x400>; + interrupts = ; + clocks = <&ccu CLK_BUS_I2C2>; + resets = <&ccu RST_BUS_I2C2>; + pinctrl-names = "default"; + pinctrl-0 = <&i2c2_pins>; + status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; + }; + emac: ethernet@5020000 { compatible = "allwinner,sun50i-h6-emac", "allwinner,sun50i-a64-emac"; @@ -414,6 +469,21 @@ }; }; + spdif: spdif@5093000 { + #sound-dai-cells = <0>; + compatible = "allwinner,sun50i-h6-spdif"; + reg = <0x05093000 0x400>; + interrupts = ; + clocks = <&ccu CLK_BUS_SPDIF>, <&ccu CLK_SPDIF>; + clock-names = "apb", "spdif"; + resets = <&ccu RST_BUS_SPDIF>; + dmas = <&dma 2>; + dma-names = "tx"; + pinctrl-names = "default"; + pinctrl-0 = <&spdif_tx_pin>; + status = "disabled"; + }; + usb2otg: usb@5100000 { compatible = "allwinner,sun50i-h6-musb", "allwinner,sun8i-a33-musb"; @@ -480,6 +550,7 @@ resets = <&ccu RST_BUS_OHCI3>, <&ccu RST_BUS_EHCI3>; phys = <&usb2phy 3>; + phy-names = "usb"; status = "disabled"; }; @@ -491,6 +562,7 @@ <&ccu CLK_USB_OHCI3>; resets = <&ccu RST_BUS_OHCI3>; phys = <&usb2phy 3>; + phy-names = "usb"; status = "disabled"; }; @@ -507,7 +579,7 @@ resets = <&ccu RST_BUS_HDMI_SUB>, <&ccu RST_BUS_HDCP>; reset-names = "ctrl", "hdcp"; phys = <&hdmi_phy>; - phy-names = "hdmi-phy"; + phy-names = "phy"; pinctrl-names = "default"; pinctrl-0 = <&hdmi_pins>; status = "disabled"; @@ -636,10 +708,20 @@ }; }; + rtc: rtc@7000000 { + compatible = "allwinner,sun50i-h6-rtc"; + reg = <0x07000000 0x400>; + interrupts = , + ; + clock-output-names = "osc32k", "osc32k-out", "iosc"; + clocks = <&ext_osc32k>; + #clock-cells = <1>; + }; + r_ccu: clock@7010000 { compatible = "allwinner,sun50i-h6-r-ccu"; reg = <0x07010000 0x400>; - clocks = <&osc24M>, <&osc32k>, <&iosc>, + clocks = <&osc24M>, <&rtc 0>, <&rtc 2>, <&ccu CLK_PLL_PERIPH0>; clock-names = "hosc", "losc", "iosc", "pll-periph"; #clock-cells = <1>; @@ -651,6 +733,7 @@ "allwinner,sun6i-a31-wdt"; reg = <0x07020400 0x20>; interrupts = ; + clocks = <&osc24M>; }; r_intc: interrupt-controller@7021000 { @@ -667,7 +750,7 @@ reg = <0x07022000 0x400>; interrupts = , ; - clocks = <&r_ccu CLK_R_APB1>, <&osc24M>, <&osc32k>; + clocks = <&r_ccu CLK_R_APB1>, <&osc24M>, <&rtc 0>; clock-names = "apb", "hosc", "losc"; gpio-controller; #gpio-cells = <3>; @@ -678,10 +761,30 @@ pins = "PL0", "PL1"; function = "s_i2c"; }; + + r_ir_rx_pin: r-ir-rx-pin { + pins = "PL9"; + function = "s_cir_rx"; + }; + }; + + r_ir: ir@7040000 { + compatible = "allwinner,sun50i-h6-ir", + "allwinner,sun6i-a31-ir"; + reg = <0x07040000 0x400>; + interrupts = ; + clocks = <&r_ccu CLK_R_APB1_IR>, + <&r_ccu CLK_IR>; + clock-names = "apb", "ir"; + resets = <&r_ccu RST_R_APB1_IR>; + pinctrl-names = "default"; + pinctrl-0 = <&r_ir_rx_pin>; + status = "disabled"; }; r_i2c: i2c@7081400 { - compatible = "allwinner,sun6i-a31-i2c"; + compatible = "allwinner,sun50i-h6-i2c", + "allwinner,sun6i-a31-i2c"; reg = <0x07081400 0x400>; interrupts = ; clocks = <&r_ccu CLK_R_APB2_I2C>; From patchwork Tue Nov 26 08:16:02 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Andre Heider X-Patchwork-Id: 1200803 X-Patchwork-Delegate: jagannadh.teki@gmail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="e17VBw5g"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 47McLq2jRBz9sP3 for ; Tue, 26 Nov 2019 19:21:39 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id DC6E1C21F74; Tue, 26 Nov 2019 08:21:10 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=FREEMAIL_FROM, RCVD_IN_MSPIKE_H2, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id BFF81C21F78; Tue, 26 Nov 2019 08:16:27 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id CE707C21F6A; Tue, 26 Nov 2019 08:16:20 +0000 (UTC) Received: from mail-wm1-f66.google.com (mail-wm1-f66.google.com [209.85.128.66]) by lists.denx.de (Postfix) with ESMTPS id 81E01C21F38 for ; Tue, 26 Nov 2019 08:16:09 +0000 (UTC) Received: by mail-wm1-f66.google.com with SMTP id g206so2130801wme.1 for ; Tue, 26 Nov 2019 00:16:09 -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:in-reply-to:references :mime-version:content-transfer-encoding; bh=HS0BJBQAq4f24hkkkoJfNvqXk1FaWq0XDgqY9Ga1AQk=; b=e17VBw5gd6f9h8XbG14JJahbqaireGEsrFx8Pxyvqbh19yY0qQdQQpvoiTmvuCdLu3 5y5xUyl/kV/7LofSK7de0D21pzKfhidnkcie/1vumEKAzZOOX5VZ1F9EzYvS48fmznXb GrEOFAVPSjcwqcW4yVlqUm8AENS3USuEa21ONfWd90AM8G64Xu8NHsTVyYc/2sEmWQmZ HIRRBxSOLy9YLZj1dPpfD7sUXVveSGQqXw5ngi+gJC03J5V5RaEernU1+9+1wwsb5kwZ TgBmGOt/JTk6p1chBPWutp6ywXA7WR9AG5IudU57LKoHsp6y9nbXLCLCtg9/3jGdQuO+ fj/Q== 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:mime-version:content-transfer-encoding; bh=HS0BJBQAq4f24hkkkoJfNvqXk1FaWq0XDgqY9Ga1AQk=; b=mmpo6unzdM2VOnuIXDgLenD1ObgcohmX2bnf633EaDeMMZaOwwYDFio8scen+mSF3f 2avTyHVz8sAxPG9LQ5ggltH5e2u/0DD3APcieg2fPRd77zEry+FkgPZxMGqhLQln1F0J AppUCsvRJ2C5M9HfY9gMbAyXdaCvlztqlBEJPmZR0ux18+pSF7Cff0yNjb4bRr+luRQR Y9sQXdj1PcVNnQHLx6gFNiHQQ/rKV/vkHeS84ScZ2jc9WEeBbeOFUFEpAx2ZHQ/WNHSR 5wec7xTBYjsBQrRQNybUeMpZLB5ZxqzClbrLMq81RihCdXk6V/x5zqZ0xjBD0Vb1O0E2 6s0Q== X-Gm-Message-State: APjAAAUqHA4VI4RzPk6FEmT00t8W5zfTKM6O3Uv2EFYbtVUgYqfIGTg0 7mETZt092vUK2ZbUofqqUMU= X-Google-Smtp-Source: APXvYqynWN9V8LkcvNJIuLju/iReGJVxavCVwMd6YalJn4/iGHD+sSJUkhpfF2ZxiTu0fMOuZVe9yg== X-Received: by 2002:a1c:9a8b:: with SMTP id c133mr2844796wme.82.1574756168997; Tue, 26 Nov 2019 00:16:08 -0800 (PST) Received: from mamamia.internal (a89-183-34-158.net-htp.de. [89.183.34.158]) by smtp.gmail.com with ESMTPSA id c1sm13436855wrs.24.2019.11.26.00.16.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Nov 2019 00:16:08 -0800 (PST) From: Andre Heider To: Jagan Teki , Maxime Ripard Date: Tue, 26 Nov 2019 09:16:02 +0100 Message-Id: <20191126081602.2264519-5-a.heider@gmail.com> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191126081602.2264519-1-a.heider@gmail.com> References: <20191126081602.2264519-1-a.heider@gmail.com> MIME-Version: 1.0 Cc: Ondrej Jirman , u-boot@lists.denx.de, Jernej Skrabec Subject: [U-Boot] [PATCH v2 4/4] arm64: dts: sun50i: Add support for Orange Pi 3 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" The dts is taken from kernel tag v5.4. The Bluetooth controller of this device ships with a default adress, use the new CONFIG_FIXUP_BDADDR option to fix it up. Signed-off-by: Andre Heider --- arch/arm/dts/Makefile | 1 + arch/arm/dts/sun50i-h6-orangepi-3.dts | 287 ++++++++++++++++++++++++++ board/sunxi/MAINTAINERS | 5 + configs/orangepi_3_defconfig | 18 ++ 4 files changed, 311 insertions(+) create mode 100644 arch/arm/dts/sun50i-h6-orangepi-3.dts create mode 100644 configs/orangepi_3_defconfig diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index d8846df1bd..5040d4f50d 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -540,6 +540,7 @@ dtb-$(CONFIG_MACH_SUN50I_H5) += \ sun50i-h5-orangepi-zero-plus2.dtb dtb-$(CONFIG_MACH_SUN50I_H6) += \ sun50i-h6-beelink-gs1.dtb \ + sun50i-h6-orangepi-3.dtb \ sun50i-h6-orangepi-lite2.dtb \ sun50i-h6-orangepi-one-plus.dtb \ sun50i-h6-pine-h64.dtb diff --git a/arch/arm/dts/sun50i-h6-orangepi-3.dts b/arch/arm/dts/sun50i-h6-orangepi-3.dts new file mode 100644 index 0000000000..eb379cd402 --- /dev/null +++ b/arch/arm/dts/sun50i-h6-orangepi-3.dts @@ -0,0 +1,287 @@ +// SPDX-License-Identifier: (GPL-2.0+ or MIT) +/* + * Copyright (C) 2019 OndÅ™ej Jirman + */ + +/dts-v1/; + +#include "sun50i-h6.dtsi" + +#include + +/ { + model = "OrangePi 3"; + compatible = "xunlong,orangepi-3", "allwinner,sun50i-h6"; + + aliases { + serial0 = &uart0; + }; + + chosen { + stdout-path = "serial0:115200n8"; + }; + + connector { + compatible = "hdmi-connector"; + ddc-en-gpios = <&pio 7 2 GPIO_ACTIVE_HIGH>; /* PH2 */ + type = "a"; + + port { + hdmi_con_in: endpoint { + remote-endpoint = <&hdmi_out_con>; + }; + }; + }; + + leds { + compatible = "gpio-leds"; + + power { + label = "orangepi:red:power"; + gpios = <&r_pio 0 4 GPIO_ACTIVE_HIGH>; /* PL4 */ + default-state = "on"; + }; + + status { + label = "orangepi:green:status"; + gpios = <&r_pio 0 7 GPIO_ACTIVE_HIGH>; /* PL7 */ + }; + }; + + reg_vcc5v: vcc5v { + /* board wide 5V supply directly from the DC jack */ + compatible = "regulator-fixed"; + regulator-name = "vcc-5v"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + regulator-always-on; + }; + + reg_vcc33_wifi: vcc33-wifi { + /* Always on 3.3V regulator for WiFi and BT */ + compatible = "regulator-fixed"; + regulator-name = "vcc33-wifi"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-always-on; + vin-supply = <®_vcc5v>; + }; + + reg_vcc_wifi_io: vcc-wifi-io { + /* Always on 1.8V/300mA regulator for WiFi and BT IO */ + compatible = "regulator-fixed"; + regulator-name = "vcc-wifi-io"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-always-on; + vin-supply = <®_vcc33_wifi>; + }; + + wifi_pwrseq: wifi-pwrseq { + compatible = "mmc-pwrseq-simple"; + clocks = <&rtc 1>; + clock-names = "ext_clock"; + reset-gpios = <&r_pio 1 3 GPIO_ACTIVE_LOW>; /* PM3 */ + post-power-on-delay-ms = <200>; + }; +}; + +&cpu0 { + cpu-supply = <®_dcdca>; +}; + +&de { + status = "okay"; +}; + +&ehci0 { + status = "okay"; +}; + +&ehci3 { + status = "okay"; +}; + +&hdmi { + status = "okay"; +}; + +&hdmi_out { + hdmi_out_con: endpoint { + remote-endpoint = <&hdmi_con_in>; + }; +}; + +&mmc0 { + vmmc-supply = <®_cldo1>; + cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */ + bus-width = <4>; + status = "okay"; +}; + +&mmc1 { + vmmc-supply = <®_vcc33_wifi>; + vqmmc-supply = <®_vcc_wifi_io>; + mmc-pwrseq = <&wifi_pwrseq>; + bus-width = <4>; + non-removable; + status = "okay"; + + brcm: sdio-wifi@1 { + reg = <1>; + compatible = "brcm,bcm4329-fmac"; + interrupt-parent = <&r_pio>; + interrupts = <1 0 IRQ_TYPE_LEVEL_LOW>; /* PM0 */ + interrupt-names = "host-wake"; + }; +}; + +&ohci0 { + status = "okay"; +}; + +&ohci3 { + status = "okay"; +}; + +&pio { + vcc-pc-supply = <®_bldo2>; + vcc-pd-supply = <®_cldo1>; + vcc-pg-supply = <®_vcc_wifi_io>; +}; + +&r_i2c { + status = "okay"; + + axp805: pmic@36 { + compatible = "x-powers,axp805", "x-powers,axp806"; + reg = <0x36>; + interrupt-parent = <&r_intc>; + interrupts = <0 IRQ_TYPE_LEVEL_LOW>; + interrupt-controller; + #interrupt-cells = <1>; + x-powers,self-working-mode; + vina-supply = <®_vcc5v>; + vinb-supply = <®_vcc5v>; + vinc-supply = <®_vcc5v>; + vind-supply = <®_vcc5v>; + vine-supply = <®_vcc5v>; + aldoin-supply = <®_vcc5v>; + bldoin-supply = <®_vcc5v>; + cldoin-supply = <®_vcc5v>; + + regulators { + reg_aldo1: aldo1 { + regulator-always-on; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-name = "vcc-pl-led-ir"; + }; + + reg_aldo2: aldo2 { + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-name = "vcc33-audio-tv-ephy-mac"; + }; + + /* ALDO3 is shorted to CLDO1 */ + reg_aldo3: aldo3 { + regulator-always-on; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-name = "vcc33-io-pd-emmc-sd-usb-uart-1"; + }; + + reg_bldo1: bldo1 { + regulator-always-on; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-name = "vcc18-dram-bias-pll"; + }; + + reg_bldo2: bldo2 { + regulator-always-on; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-name = "vcc-efuse-pcie-hdmi-pc"; + }; + + bldo3 { + /* unused */ + }; + + bldo4 { + /* unused */ + }; + + reg_cldo1: cldo1 { + regulator-always-on; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-name = "vcc33-io-pd-emmc-sd-usb-uart-2"; + }; + + cldo2 { + /* unused */ + }; + + cldo3 { + /* unused */ + }; + + reg_dcdca: dcdca { + regulator-always-on; + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <1160000>; + regulator-name = "vdd-cpu"; + }; + + reg_dcdcc: dcdcc { + regulator-min-microvolt = <810000>; + regulator-max-microvolt = <1080000>; + regulator-name = "vdd-gpu"; + }; + + reg_dcdcd: dcdcd { + regulator-always-on; + regulator-min-microvolt = <960000>; + regulator-max-microvolt = <960000>; + regulator-name = "vdd-sys"; + }; + + reg_dcdce: dcdce { + regulator-always-on; + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1200000>; + regulator-name = "vcc-dram"; + }; + + sw { + /* unused */ + }; + }; + }; +}; + +&uart0 { + pinctrl-names = "default"; + pinctrl-0 = <&uart0_ph_pins>; + status = "okay"; +}; + +&usb2otg { + /* + * This board doesn't have a controllable VBUS even though it + * does have an ID pin. Using it as anything but a USB host is + * unsafe. + */ + dr_mode = "host"; + status = "okay"; +}; + +&usb2phy { + usb0_id_det-gpios = <&pio 2 15 GPIO_ACTIVE_HIGH>; /* PC15 */ + usb0_vbus-supply = <®_vcc5v>; + usb3_vbus-supply = <®_vcc5v>; + status = "okay"; +}; diff --git a/board/sunxi/MAINTAINERS b/board/sunxi/MAINTAINERS index a2adf89b5d..3c0fd0cae8 100644 --- a/board/sunxi/MAINTAINERS +++ b/board/sunxi/MAINTAINERS @@ -375,6 +375,11 @@ M: Icenowy Zheng S: Maintained F: configs/teres_i_defconfig +ORANGEPI 3 BOARD +M: Andre Heider +S: Maintained +F: configs/orangepi_3_defconfig + ORANGEPI LITE2 BOARD M: Jagan Teki S: Maintained diff --git a/configs/orangepi_3_defconfig b/configs/orangepi_3_defconfig new file mode 100644 index 0000000000..c9db0abb77 --- /dev/null +++ b/configs/orangepi_3_defconfig @@ -0,0 +1,18 @@ +CONFIG_ARM=y +CONFIG_ARCH_SUNXI=y +CONFIG_NR_DRAM_BANKS=1 +CONFIG_SPL=y +CONFIG_MACH_SUN50I_H6=y +CONFIG_SUNXI_DRAM_H6_LPDDR3=y +CONFIG_MMC0_CD_PIN="PF6" +CONFIG_MMC_SUNXI_SLOT_EXTRA=2 +CONFIG_FIXUP_BDADDR="brcm,bcm4345c5" +# CONFIG_PSCI_RESET is not set +# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set +CONFIG_USE_PREBOOT=y +# CONFIG_CMD_FLASH is not set +# CONFIG_SPL_DOS_PARTITION is not set +# CONFIG_SPL_EFI_PARTITION is not set +CONFIG_DEFAULT_DEVICE_TREE="sun50i-h6-orangepi-3" +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_OHCI_HCD=y