sun50i: a64: Add Oceanic 5205 5inMFD initial support

Message ID CAEhfvXoopsFF+jhCp6uC7KSTfY=910vJAjpHDbbyKDwjDbLq-Q@mail.gmail.com
State New
Headers show
Series
  • sun50i: a64: Add Oceanic 5205 5inMFD initial support
Related show

Commit Message

Andrea Cappelli March 11, 2019, 5:29 a.m. UTC
---------- Forwarded message ---------
From: Jagan Teki <jagan@amarulasolutions.com>
Date: Fri, 8 Mar 2019 at 07:15
Subject: [PATCH] sun50i: a64: Add Oceanic 5205 5inMFD initial support
To: Maxime Ripard <maxime.ripard@bootlin.com>
Cc: <u-boot@lists.denx.de>, Michael Trimarchi <michael@amarulasolutions.com>,
Ryan Pannell <ryan@osukl.com>, <linux-amarula@amarulasolutions.com>, Jagan
Teki <jagan@amarulasolutions.com>


Oceanic 5205 5inMFD is a 5 inch Multi function display baseboard
designed to mount SoPine SOM.

Key features:
- Allwinner A64 Cortex-A53
- Mali-400MP2 GPU
- AXP803 PMIC
- 2GB DDR3 RAM
- SD Slot
- SPI-NOR flash
- EMAC, RTL8211E
- MCP2515 CAN
- 4-lane, MIPI-DSI panel
- Goodix 911 CTP
- USB Host
- 12V DC power supply

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
---
 arch/arm/dts/Makefile                         |  1 +
 .../dts/sun50i-a64-oceanic-5205-5inmfd.dts    | 68 +++++++++++++++++++
 board/sunxi/MAINTAINERS                       |  5 ++
 configs/oceanic_5205_5inmfd_defconfig         | 20 ++++++
 4 files changed, 94 insertions(+)
 create mode 100644 arch/arm/dts/sun50i-a64-oceanic-5205-5inmfd.dts
 create mode 100644 configs/oceanic_5205_5inmfd_defconfig

Patch

diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
index 2a040b20a5..1fbaefaccb 100644
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
@@ -424,6 +424,7 @@  dtb-$(CONFIG_MACH_SUN50I) += \
        sun50i-a64-amarula-relic.dtb \
        sun50i-a64-bananapi-m64.dtb \
        sun50i-a64-nanopi-a64.dtb \
+       sun50i-a64-oceanic-5205-5inmfd.dtb \
        sun50i-a64-olinuxino.dtb \
        sun50i-a64-orangepi-win.dtb \
        sun50i-a64-pine64-plus.dtb \
diff --git a/arch/arm/dts/sun50i-a64-oceanic-5205-5inmfd.dts
b/arch/arm/dts/sun50i-a64-oceanic-5205-5inmfd.dts
new file mode 100644
index 0000000000..6a2154525d
--- /dev/null
+++ b/arch/arm/dts/sun50i-a64-oceanic-5205-5inmfd.dts
@@ -0,0 +1,68 @@ 
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (C) 2019 Oceanic Systems (UK) Ltd.
+ * Copyright (C) 2019 Amarula Solutions B.V.
+ * Author: Jagan Teki <jagan@amarulasolutions.com>
+ */
+
+/dts-v1/;
+
+#include "sun50i-a64-sopine.dtsi"
+
+/ {
+       model = "Oceanic 5205 5inMFD";
+       compatible = "oceanic,5205-5inmfd", "allwinner,sun50i-a64";
+
+       aliases {
+               ethernet0 = &emac;
+               serial0 = &uart0;
+       };
+
+       chosen {
+               stdout-path = "serial0:115200n8";
+       };
+};
+
+&ehci0 {
+       status = "okay";
+};
+
+&emac {
+       pinctrl-names = "default";
+       pinctrl-0 = <&rgmii_pins>;
+       phy-mode = "rgmii";
+       phy-handle = <&ext_rgmii_phy>;
+       phy-supply = <&reg_dc1sw>;
+       allwinner,tx-delay-ps = <600>;
+       status = "okay";
+};
+
+&mdio {
+       ext_rgmii_phy: ethernet-phy@1 {
+               compatible = "ethernet-phy-ieee802.3-c22";
+               reg = <1>;
+       };
+};
+
+&ohci0 {
+       status = "okay";
+};
+
+&reg_dc1sw {
+       regulator-name = "vcc-phy";
+};
+
+&uart0 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&uart0_pb_pins>;
+       status = "okay";
+};
+
+&usb_otg {
+       dr_mode = "host";
+       status = "okay";
+};
+
+&usbphy {
+       status = "okay";
+};
diff --git a/board/sunxi/MAINTAINERS b/board/sunxi/MAINTAINERS
index 8e2f90fc68..7f96d2bb1c 100644
--- a/board/sunxi/MAINTAINERS
+++ b/board/sunxi/MAINTAINERS
@@ -341,6 +341,11 @@  M: FUKAUMI Naoki <naobsd@gmail.com>
 S:     Maintained
 F:     configs/Nintendo_NES_Classic_Edition_defconfig

+OCEANIC 5205 5INMFD BOARD
+M:     Jagan Teki <jagan@amarulasolutions.com>
+S:     Maintained
+F:     configs/oceanic_5205_5inmfd_defconfig
+
 OLIMEX A20-SOM204 BOARD
 M:     Stefan Mavrodiev <stefan@olimex.com>
 S:     Maintained
diff --git a/configs/oceanic_5205_5inmfd_defconfig
b/configs/oceanic_5205_5inmfd_defconfig
new file mode 100644
index 0000000000..34fe6f5273
--- /dev/null
+++ b/configs/oceanic_5205_5inmfd_defconfig
@@ -0,0 +1,20 @@ 
+CONFIG_ARM=y
+CONFIG_ARCH_SUNXI=y
+CONFIG_SPL=y
+CONFIG_MACH_SUN50I=y
+CONFIG_RESERVE_ALLWINNER_BOOT0_HEADER=y
+CONFIG_SUNXI_DRAM_LPDDR3_STOCK=y
+CONFIG_DRAM_CLK=552
+CONFIG_DRAM_ZQ=3881949
+CONFIG_MMC0_CD_PIN=""
+CONFIG_SPL_SPI_SUNXI=y
+CONFIG_NR_DRAM_BANKS=1
+# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+# 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-a64-oceanic-5205-5inmfd"
+CONFIG_SUN8I_EMAC=y
+CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_OHCI_HCD=y
+CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y