Initial commit
Some checks failed
Build Kernel / Build all affected Kernels (push) Has been cancelled
Build all core packages / Build all core packages for selected target (push) Has been cancelled
Build and Push prebuilt tools container / Build and Push all prebuilt containers (push) Has been cancelled
Build Toolchains / Build Toolchains for each target (push) Has been cancelled
Build host tools / Build host tools for linux and macos based systems (push) Has been cancelled
Coverity scan build / Coverity x86/64 build (push) Has been cancelled
Some checks failed
Build Kernel / Build all affected Kernels (push) Has been cancelled
Build all core packages / Build all core packages for selected target (push) Has been cancelled
Build and Push prebuilt tools container / Build and Push all prebuilt containers (push) Has been cancelled
Build Toolchains / Build Toolchains for each target (push) Has been cancelled
Build host tools / Build host tools for linux and macos based systems (push) Has been cancelled
Coverity scan build / Coverity x86/64 build (push) Has been cancelled
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
--- /dev/null
|
||||
+++ b/configs/OLIMEX_A13_SOM_defconfig
|
||||
@@ -0,0 +1,17 @@
|
||||
+CONFIG_SPL=y
|
||||
+CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-olinuxino"
|
||||
+CONFIG_ARM=y
|
||||
+CONFIG_ARCH_SUNXI=y
|
||||
+CONFIG_MACH_SUN5I=y
|
||||
+CONFIG_DRAM_CLK=408
|
||||
+CONFIG_DRAM_ZQ=123
|
||||
+CONFIG_DRAM_EMR1=0
|
||||
+# CONFIG_CMD_IMLS is not set
|
||||
+# CONFIG_CMD_FLASH is not set
|
||||
+# CONFIG_CMD_FPGA is not set
|
||||
+CONFIG_DM_SERIAL=y
|
||||
+CONFIG_USB=y
|
||||
+CONFIG_DM_USB=y
|
||||
+CONFIG_SYS_NS16550=y
|
||||
+CONFIG_SUNXI_NO_PMIC=y
|
||||
+CONFIG_USB_EHCI_HCD=y
|
||||
@@ -0,0 +1,12 @@
|
||||
GNU nano 2.7.4 File: 062-A20-improve-gmac-upload.patch
|
||||
|
||||
--- a/configs/A20-OLinuXino-Lime2_defconfig
|
||||
+++ b/configs/A20-OLinuXino-Lime2_defconfig
|
||||
@@ -25,6 +25,7 @@ CONFIG_ETH_DESIGNWARE=y
|
||||
CONFIG_RGMII=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_SUN7I_GMAC=y
|
||||
+CONFIG_GMAC_TX_DELAY=1
|
||||
CONFIG_AXP_ALDO3_VOLT=2800
|
||||
CONFIG_AXP_ALDO3_VOLT_SLOPE_08=y
|
||||
CONFIG_AXP_ALDO3_INRUSH_QUIRK=y
|
||||
@@ -0,0 +1,32 @@
|
||||
From a58eb20fb80f478038243e9e0f30f6984725e265 Mon Sep 17 00:00:00 2001
|
||||
From: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
|
||||
Date: Tue, 6 Jan 2015 15:47:18 +0100
|
||||
Subject: sun6i: Sync PLL1 multipliers/dividers with Boot1
|
||||
|
||||
This change syncs up the multipliers and dividers used to initialize
|
||||
PLL1 (i.e. the fast clock driving the ARM cores) with the values used
|
||||
in Allwinner's Boot1 on sun6i.
|
||||
|
||||
More specifically, the following settings are now used:
|
||||
* up to 768MHz: mul=2, div=2 (was: mul=1, div=1)
|
||||
* up to 1152MHz: mul=3, div=2 (unchanged)
|
||||
* above 1152MHz: mul=4, div=2 (was: mul=2, div=1)
|
||||
|
||||
--- a/arch/arm/mach-sunxi/clock_sun6i.c
|
||||
+++ b/arch/arm/mach-sunxi/clock_sun6i.c
|
||||
@@ -131,11 +131,12 @@ void clock_set_pll1(unsigned int clk)
|
||||
struct sunxi_ccm_reg * const ccm =
|
||||
(struct sunxi_ccm_reg *)SUNXI_CCM_BASE;
|
||||
const int p = 0;
|
||||
- int k = 1;
|
||||
- int m = 1;
|
||||
+ int k = 2;
|
||||
+ int m = 2;
|
||||
|
||||
if (clk > 1152000000) {
|
||||
- k = 2;
|
||||
+ k = 4;
|
||||
+ m = 2;
|
||||
} else if (clk > 768000000) {
|
||||
k = 4;
|
||||
m = 2;
|
||||
@@ -0,0 +1,69 @@
|
||||
From b2b385df5095fff80b4655142f58a2a6801e6c80 Mon Sep 17 00:00:00 2001
|
||||
From: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
|
||||
Date: Tue, 6 Jan 2015 21:26:44 +0100
|
||||
Subject: sun6i: Fix and document PLL LDO voltage selection
|
||||
|
||||
The PRCM_PLL_CTRL_LDO_OUT_L and PRCM_PLL_CTRL_LDO_OUT_H macros had
|
||||
their meaning reversed. This is fixed by this change-set. With this
|
||||
changed, the PRCM_PLL_CTRL_LDO_OUT_L(1370) now becomes self-evident
|
||||
as setting the voltage to 1.37v (which it had done all along, even
|
||||
though stating a different target voltage).
|
||||
|
||||
After changing the PLL LDO setting, it will take a little while for
|
||||
the voltage output to settle. A sdelay()-based loop waits the same
|
||||
order of magnitude as Boot1.
|
||||
|
||||
Furthermore, a bit of documentation is added to clarify that the
|
||||
required setting for the PLL LDO is 1.37v as per the A31 manual.
|
||||
|
||||
--- a/arch/arm/mach-sunxi/clock_sun6i.c
|
||||
+++ b/arch/arm/mach-sunxi/clock_sun6i.c
|
||||
@@ -28,13 +28,26 @@ void clock_init_safe(void)
|
||||
struct sunxi_prcm_reg * const prcm =
|
||||
(struct sunxi_prcm_reg *)SUNXI_PRCM_BASE;
|
||||
|
||||
- /* Set PLL ldo voltage without this PLL6 does not work properly */
|
||||
+ /* Set PLL ldo voltage without this PLL6 does not work properly.
|
||||
+ *
|
||||
+ * As the A31 manual states, that "before enable PLL, PLLVDD
|
||||
+ * LDO should be set to 1.37v", we need to configure this to 2.5v
|
||||
+ * in the "PLL Input Power Select" (0 << 15) and (7 << 16).
|
||||
+ */
|
||||
clrsetbits_le32(&prcm->pll_ctrl1, PRCM_PLL_CTRL_LDO_KEY_MASK,
|
||||
PRCM_PLL_CTRL_LDO_KEY);
|
||||
clrsetbits_le32(&prcm->pll_ctrl1, ~PRCM_PLL_CTRL_LDO_KEY_MASK,
|
||||
PRCM_PLL_CTRL_LDO_DIGITAL_EN | PRCM_PLL_CTRL_LDO_ANALOG_EN |
|
||||
- PRCM_PLL_CTRL_EXT_OSC_EN | PRCM_PLL_CTRL_LDO_OUT_L(1140));
|
||||
+ PRCM_PLL_CTRL_EXT_OSC_EN | PRCM_PLL_CTRL_LDO_OUT_L(1370));
|
||||
clrbits_le32(&prcm->pll_ctrl1, PRCM_PLL_CTRL_LDO_KEY_MASK);
|
||||
+
|
||||
+ /* Give the PLL LDO voltage setting some time to take hold.
|
||||
+ * Notes:
|
||||
+ * 1) We need to use sdelay() as the timers aren't set up yet.
|
||||
+ * 2) The 100k iterations come from Boot1, which spin's for 100k
|
||||
+ * iterations through a loop.
|
||||
+ */
|
||||
+ sdelay(100000);
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_MACH_SUN8I_R40) || defined(CONFIG_MACH_SUN50I)
|
||||
--- a/arch/arm/include/asm/arch-sunxi/prcm_sun6i.h
|
||||
+++ b/arch/arm/include/asm/arch-sunxi/prcm_sun6i.h
|
||||
@@ -110,13 +110,13 @@
|
||||
#define PRCM_PLL_CTRL_LDO_OUT_MASK \
|
||||
__PRCM_PLL_CTRL_LDO_OUT(0x7)
|
||||
/* When using the low voltage 20 mV steps, and high voltage 30 mV steps */
|
||||
-#define PRCM_PLL_CTRL_LDO_OUT_L(n) \
|
||||
- __PRCM_PLL_CTRL_VDD_LDO_OUT((((n) - 1000) / 20) & 0x7)
|
||||
#define PRCM_PLL_CTRL_LDO_OUT_H(n) \
|
||||
+ __PRCM_PLL_CTRL_VDD_LDO_OUT((((n) - 1000) / 20) & 0x7)
|
||||
+#define PRCM_PLL_CTRL_LDO_OUT_L(n) \
|
||||
__PRCM_PLL_CTRL_VDD_LDO_OUT((((n) - 1160) / 30) & 0x7)
|
||||
-#define PRCM_PLL_CTRL_LDO_OUT_LV(n) \
|
||||
- __PRCM_PLL_CTRL_VDD_LDO_OUT((((n) & 0x7) * 20) + 1000)
|
||||
#define PRCM_PLL_CTRL_LDO_OUT_HV(n) \
|
||||
+ __PRCM_PLL_CTRL_VDD_LDO_OUT((((n) & 0x7) * 20) + 1000)
|
||||
+#define PRCM_PLL_CTRL_LDO_OUT_LV(n) \
|
||||
__PRCM_PLL_CTRL_VDD_LDO_OUT((((n) & 0x7) * 30) + 1160)
|
||||
#define PRCM_PLL_CTRL_LDO_KEY (0xa7 << 24)
|
||||
#define PRCM_PLL_CTRL_LDO_KEY_MASK (0xff << 24)
|
||||
@@ -0,0 +1,35 @@
|
||||
From 637800493945ffed2f454756300437a4ec86e3b1 Mon Sep 17 00:00:00 2001
|
||||
From: Hauke Mehrtens <hauke@hauke-m.de>
|
||||
Date: Wed, 19 Jul 2017 22:23:15 +0200
|
||||
Subject: mkimage: check environment for dtc binary location
|
||||
|
||||
Currently mkimage assumes the dtc binary is in the path and fails
|
||||
otherwise. This patch makes it check the DTC environment variable first
|
||||
for the dtc binary and then fall back to the default path. This makes
|
||||
it possible to call the u-boot build with make DTC=... and build a fit
|
||||
image with the dtc binary not being the the default path.
|
||||
|
||||
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
||||
Cc: Simon Glass <sjg@chromium.org>
|
||||
---
|
||||
tools/fit_image.c | 7 ++++++-
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
--- a/tools/fit_image.c
|
||||
+++ b/tools/fit_image.c
|
||||
@@ -774,9 +774,14 @@ static int fit_handle_file(struct image_
|
||||
}
|
||||
*cmd = '\0';
|
||||
} else if (params->datafile) {
|
||||
+ const char* dtc = getenv("DTC");
|
||||
+
|
||||
+ if (!dtc)
|
||||
+ dtc = MKIMAGE_DTC;
|
||||
+
|
||||
/* dtc -I dts -O dtb -p 500 -o tmpfile datafile */
|
||||
snprintf(cmd, sizeof(cmd), "%s %s -o \"%s\" \"%s\"",
|
||||
- MKIMAGE_DTC, params->dtc, tmpfile, params->datafile);
|
||||
+ dtc, params->dtc, tmpfile, params->datafile);
|
||||
debug("Trying to execute \"%s\"\n", cmd);
|
||||
} else {
|
||||
snprintf(cmd, sizeof(cmd), "cp \"%s\" \"%s\"",
|
||||
@@ -0,0 +1,38 @@
|
||||
From 0e8043aff1aae95d1f7b7422b91b57d9569860d3 Mon Sep 17 00:00:00 2001
|
||||
From: Jayantajit Gogoi <jayanta.gogoi525@gmail.com>
|
||||
Date: Mon, 12 Oct 2020 18:39:53 +0000
|
||||
Subject: [PATCH] sunxi: add support for FriendlyARM NanoPi R1
|
||||
|
||||
Signed-off-by: Jayantajit Gogoi <jayanta.gogoi525@gmail.com>
|
||||
---
|
||||
arch/arm/dts/Makefile | 1 +
|
||||
arch/arm/dts/sun8i-h3-nanopi-r1.dts | 146 ++++++++++++++++++++++++++++
|
||||
configs/nanopi_r1_defconfig | 22 +++++
|
||||
3 files changed, 169 insertions(+)
|
||||
create mode 100644 arch/arm/dts/sun8i-h3-nanopi-r1.dts
|
||||
create mode 100644 configs/nanopi_r1_defconfig
|
||||
|
||||
--- /dev/null
|
||||
+++ b/configs/nanopi_r1_defconfig
|
||||
@@ -0,0 +1,21 @@
|
||||
+CONFIG_ARM=y
|
||||
+CONFIG_ARCH_SUNXI=y
|
||||
+CONFIG_SPL=y
|
||||
+CONFIG_MACH_SUN8I_H3=y
|
||||
+CONFIG_DRAM_CLK=408
|
||||
+CONFIG_DRAM_ZQ=3881979
|
||||
+CONFIG_DRAM_ODT_EN=y
|
||||
+CONFIG_MACPWR="PD6"
|
||||
+# CONFIG_VIDEO_DE2 is not set
|
||||
+CONFIG_NR_DRAM_BANKS=1
|
||||
+# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
|
||||
+CONFIG_CONSOLE_MUX=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="sun8i-h3-nanopi-r1"
|
||||
+CONFIG_SUN8I_EMAC=y
|
||||
+CONFIG_USB_EHCI_HCD=y
|
||||
+CONFIG_USB_OHCI_HCD=y
|
||||
+CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
|
||||
+CONFIG_MMC_SUNXI_SLOT_EXTRA=2
|
||||
@@ -0,0 +1,307 @@
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/dts/sun8i-h2-plus-bananapi-p2-zero.dts
|
||||
@@ -0,0 +1,291 @@
|
||||
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
+/*
|
||||
+ * Copyright (C) 2023 Zoltan HERPAI <wigyori@uid0.hu>
|
||||
+ *
|
||||
+ * Based on sun8i-h2-plus-bananapi-m2-zero.dts, which is:
|
||||
+ * Copyright (C) 2017 Icenowy Zheng <icenowy@aosc.io>
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+#include "sun8i-h3.dtsi"
|
||||
+#include "sunxi-common-regulators.dtsi"
|
||||
+
|
||||
+#include <dt-bindings/gpio/gpio.h>
|
||||
+#include <dt-bindings/input/input.h>
|
||||
+
|
||||
+/ {
|
||||
+ model = "Banana Pi BPI-P2-Zero";
|
||||
+ compatible = "sinovoip,bpi-p2-zero", "allwinner,sun8i-h2-plus";
|
||||
+
|
||||
+ aliases {
|
||||
+ serial0 = &uart0;
|
||||
+ serial1 = &uart1;
|
||||
+ ethernet0 = &emac;
|
||||
+ };
|
||||
+
|
||||
+ chosen {
|
||||
+ stdout-path = "serial0:115200n8";
|
||||
+ };
|
||||
+
|
||||
+ connector {
|
||||
+ compatible = "hdmi-connector";
|
||||
+ type = "c";
|
||||
+
|
||||
+ port {
|
||||
+ hdmi_con_in: endpoint {
|
||||
+ remote-endpoint = <&hdmi_out_con>;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ leds {
|
||||
+ compatible = "gpio-leds";
|
||||
+
|
||||
+ pwr_led {
|
||||
+ label = "bananapi-p2-zero:red:pwr";
|
||||
+ gpios = <&r_pio 0 10 GPIO_ACTIVE_LOW>; /* PL10 */
|
||||
+ default-state = "on";
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ gpio-keys {
|
||||
+ compatible = "gpio-keys";
|
||||
+
|
||||
+ switch-4 {
|
||||
+ label = "power";
|
||||
+ linux,code = <KEY_POWER>;
|
||||
+ gpios = <&r_pio 0 3 GPIO_ACTIVE_LOW>;
|
||||
+ wakeup-source;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ reg_vdd_cpux: vdd-cpux-regulator {
|
||||
+ compatible = "regulator-gpio";
|
||||
+ regulator-name = "vdd-cpux";
|
||||
+ regulator-type = "voltage";
|
||||
+ regulator-boot-on;
|
||||
+ regulator-always-on;
|
||||
+ regulator-min-microvolt = <1100000>;
|
||||
+ regulator-max-microvolt = <1300000>;
|
||||
+ regulator-ramp-delay = <50>; /* 4ms */
|
||||
+
|
||||
+ gpios = <&r_pio 0 1 GPIO_ACTIVE_HIGH>; /* PL1 */
|
||||
+ enable-active-high;
|
||||
+ gpios-states = <0x1>;
|
||||
+ states = <1100000 0>, <1300000 1>;
|
||||
+ };
|
||||
+
|
||||
+ reg_vcc_dram: vcc-dram {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "vcc-dram";
|
||||
+ regulator-min-microvolt = <1500000>;
|
||||
+ regulator-max-microvolt = <1500000>;
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ enable-active-high;
|
||||
+ gpio = <&r_pio 0 9 GPIO_ACTIVE_HIGH>; /* PL9 */
|
||||
+ vin-supply = <®_vcc5v0>;
|
||||
+ };
|
||||
+
|
||||
+ reg_vcc1v2: vcc1v2 {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "vcc1v2";
|
||||
+ regulator-min-microvolt = <1200000>;
|
||||
+ regulator-max-microvolt = <1200000>;
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ enable-active-high;
|
||||
+ gpio = <&r_pio 0 8 GPIO_ACTIVE_HIGH>; /* PL8 */
|
||||
+ vin-supply = <®_vcc5v0>;
|
||||
+ };
|
||||
+
|
||||
+ poweroff {
|
||||
+ compatible = "regulator-poweroff";
|
||||
+ cpu-supply = <®_vcc1v2>;
|
||||
+ };
|
||||
+
|
||||
+ wifi_pwrseq: wifi_pwrseq {
|
||||
+ compatible = "mmc-pwrseq-simple";
|
||||
+ reset-gpios = <&r_pio 0 7 GPIO_ACTIVE_LOW>; /* PL7 */
|
||||
+ clocks = <&rtc CLK_OSC32K_FANOUT>;
|
||||
+ clock-names = "ext_clock";
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&cpu0 {
|
||||
+ cpu-supply = <®_vdd_cpux>;
|
||||
+};
|
||||
+
|
||||
+&de {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&ehci0 {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&emac {
|
||||
+ phy-handle = <&int_mii_phy>;
|
||||
+ phy-mode = "mii";
|
||||
+ allwinner,leds-active-low;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&hdmi {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&hdmi_out {
|
||||
+ hdmi_out_con: endpoint {
|
||||
+ remote-endpoint = <&hdmi_con_in>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&mmc0 {
|
||||
+ vmmc-supply = <®_vcc3v3>;
|
||||
+ bus-width = <4>;
|
||||
+ /*
|
||||
+ * On the production batch of this board the card detect GPIO is
|
||||
+ * high active (card inserted), although on the early samples it's
|
||||
+ * low active.
|
||||
+ */
|
||||
+ cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>; /* PF6 */
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&mmc1 {
|
||||
+ vmmc-supply = <®_vcc3v3>;
|
||||
+ vqmmc-supply = <®_vcc3v3>;
|
||||
+ mmc-pwrseq = <&wifi_pwrseq>;
|
||||
+ bus-width = <4>;
|
||||
+ non-removable;
|
||||
+ status = "okay";
|
||||
+
|
||||
+ brcmf: wifi@1 {
|
||||
+ reg = <1>;
|
||||
+ compatible = "brcm,bcm4329-fmac";
|
||||
+ interrupt-parent = <&pio>;
|
||||
+ interrupts = <6 10 IRQ_TYPE_LEVEL_LOW>; /* PG10 / EINT10 */
|
||||
+ interrupt-names = "host-wake";
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&mmc2 {
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&mmc2_8bit_pins>;
|
||||
+ vmmc-supply = <®_vcc3v3>;
|
||||
+ vqmmc-supply = <®_vcc3v3>;
|
||||
+ bus-width = <8>;
|
||||
+ non-removable;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&ohci0 {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&uart0 {
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&uart0_pa_pins>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&uart1 {
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
|
||||
+ uart-has-rtscts;
|
||||
+ status = "okay";
|
||||
+
|
||||
+ bluetooth {
|
||||
+ compatible = "brcm,bcm43438-bt";
|
||||
+ max-speed = <1500000>;
|
||||
+ clocks = <&rtc CLK_OSC32K_FANOUT>;
|
||||
+ clock-names = "lpo";
|
||||
+ vbat-supply = <®_vcc3v3>;
|
||||
+ vddio-supply = <®_vcc3v3>;
|
||||
+ device-wakeup-gpios = <&pio 6 13 GPIO_ACTIVE_HIGH>; /* PG13 */
|
||||
+ host-wakeup-gpios = <&pio 6 11 GPIO_ACTIVE_HIGH>; /* PG11 */
|
||||
+ shutdown-gpios = <&pio 6 12 GPIO_ACTIVE_HIGH>; /* PG12 */
|
||||
+ };
|
||||
+
|
||||
+};
|
||||
+
|
||||
+&pio {
|
||||
+ gpio-line-names =
|
||||
+ /* PA */
|
||||
+ "CON2-P13", "CON2-P11", "CON2-P22", "CON2-P15",
|
||||
+ "CON3-P03", "CON3-P02", "CON2-P07", "CON2-P29",
|
||||
+ "CON2-P31", "CON2-P33", "CON2-P35", "CON2-P05",
|
||||
+ "CON2-P03", "CON2-P08", "CON2-P10", "CON2-P16",
|
||||
+ "CON2-P12", "CON2-P37", "CON2-P28", "CON2-P27",
|
||||
+ "CON2-P40", "CON2-P38", "", "",
|
||||
+ "", "", "", "", "", "", "", "",
|
||||
+
|
||||
+ /* PB */
|
||||
+ "", "", "", "", "", "", "", "",
|
||||
+ "", "", "", "", "", "", "", "",
|
||||
+ "", "", "", "", "", "", "", "",
|
||||
+ "", "", "", "", "", "", "", "",
|
||||
+
|
||||
+ /* PC */
|
||||
+ "CON2-P19", "CON2-P21", "CON2-P23", "CON2-P24",
|
||||
+ "CON2-P18", "", "", "CON2-P26",
|
||||
+ "", "", "", "", "", "", "", "",
|
||||
+ "", "", "", "", "", "", "", "",
|
||||
+ "", "", "", "", "", "", "", "",
|
||||
+
|
||||
+ /* PD */
|
||||
+ "", "", "", "", "", "", "", "",
|
||||
+ "", "", "", "", "", "", "CSI-PWR-EN", "",
|
||||
+ "", "", "", "", "", "", "", "",
|
||||
+ "", "", "", "", "", "", "", "",
|
||||
+
|
||||
+ /* PE */
|
||||
+ "CN3-P17", "CN3-P13", "CN3-P09", "CN3-P07",
|
||||
+ "CN3-P19", "CN3-P21", "CN3-P22", "CN3-P20",
|
||||
+ "CN3-P18", "CN3-P16", "CN3-P14", "CN3-P12",
|
||||
+ "CN3-P05", "CN3-P03", "CN3-P06", "CN3-P08",
|
||||
+ "", "", "", "", "", "", "", "",
|
||||
+ "", "", "", "", "", "", "", "",
|
||||
+
|
||||
+ /* PF */
|
||||
+ "SDC0-D1", "SDC0-D0", "SDC0-CLK", "SDC0-CMD", "SDC0-D3",
|
||||
+ "SDC0-D2", "SDC0-DET", "",
|
||||
+ "", "", "", "", "", "", "", "",
|
||||
+ "", "", "", "", "", "", "", "",
|
||||
+ "", "", "", "", "", "", "", "",
|
||||
+
|
||||
+ /* PG */
|
||||
+ "WL-SDIO-CLK", "WL-SDIO-CMD", "WL-SDIO-D0", "WL-SDIO-D1",
|
||||
+ "WL-SDIO-D2", "WL-SDIO-D3", "BT-UART-TX", "BT-UART-RX",
|
||||
+ "BT-UART-RTS", "BT-UART-CTS", "WL-WAKE-AP", "BT-WAKE-AP",
|
||||
+ "BT-RST-N", "AP-WAKE-BT", "", "",
|
||||
+ "", "", "", "", "", "", "", "",
|
||||
+ "", "", "", "", "", "", "", "";
|
||||
+};
|
||||
+
|
||||
+&r_pio {
|
||||
+ gpio-line-names =
|
||||
+ /* PL */
|
||||
+ "", "CPUX-SET", "CON2-P32", "POWER-KEY", "CON2-P36",
|
||||
+ "VCC-IO-EN", "USB0-ID", "WL-PWR-EN",
|
||||
+ "PWR-STB", "PWR-DRAM", "PWR-LED", "IR-RX", "", "", "", "",
|
||||
+ "", "", "", "", "", "", "", "",
|
||||
+ "", "", "", "", "", "", "", "";
|
||||
+};
|
||||
+
|
||||
+&usb_otg {
|
||||
+ dr_mode = "otg";
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usbphy {
|
||||
+ usb0_id_det-gpios = <&r_pio 0 6 GPIO_ACTIVE_HIGH>; /* PL6 */
|
||||
+ /*
|
||||
+ * There're two micro-USB connectors, one is power-only and another is
|
||||
+ * OTG. The Vbus of these two connectors are connected together, so
|
||||
+ * the external USB device will be powered just by the power input
|
||||
+ * from the power-only USB port.
|
||||
+ */
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- /dev/null
|
||||
+++ b/configs/bananapi_p2_zero_defconfig
|
||||
@@ -0,0 +1,10 @@
|
||||
+CONFIG_ARM=y
|
||||
+CONFIG_ARCH_SUNXI=y
|
||||
+CONFIG_DEFAULT_DEVICE_TREE="sun8i-h2-plus-bananapi-p2-zero"
|
||||
+CONFIG_SPL=y
|
||||
+CONFIG_MACH_SUN8I_H3=y
|
||||
+CONFIG_DRAM_CLK=408
|
||||
+# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
|
||||
+CONFIG_MMC_SUNXI_SLOT_EXTRA=2
|
||||
+CONFIG_SUN8I_EMAC=y
|
||||
+CONFIG_USB_EHCI_HCD=y
|
||||
Reference in New Issue
Block a user