[U-Boot,v6,7/7] sunxi: DT: A64: add Pine64-LTS support

Message ID 20180516080050.12773-8-andre.przywara@arm.com
State New
Delegated to: Jagannadha Sutradharudu Teki
Headers show
Series
  • sunxi: sync H3, H5, A64 DTs from mainline Linux
Related show

Commit Message

Andre Przywara May 16, 2018, 8 a.m.
The Pine64-LTS board is a new board version of the Pine64, though
actually it's a non-SoM version of the SoPine and its baseboard.
In contrast to the original Pine64 it features LPDDR3 DRAM, an eMMC
socket and a SPI flash chip for storing firmware (like U-Boot).
Add it as a variant to the existing SoPine defconfig, since from a
software point of view they are really not different.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
---
 arch/arm/dts/Makefile                  |  1 +
 arch/arm/dts/sun50i-a64-pine64-lts.dts | 13 +++++++++++++
 configs/sopine_baseboard_defconfig     |  1 +
 3 files changed, 15 insertions(+)
 create mode 100644 arch/arm/dts/sun50i-a64-pine64-lts.dts

Comments

Maxime Ripard May 18, 2018, 7:55 a.m. | #1
Hi Andre,

On Wed, May 16, 2018 at 09:00:50AM +0100, Andre Przywara wrote:
> The Pine64-LTS board is a new board version of the Pine64, though
> actually it's a non-SoM version of the SoPine and its baseboard.
> In contrast to the original Pine64 it features LPDDR3 DRAM, an eMMC
> socket and a SPI flash chip for storing firmware (like U-Boot).
> Add it as a variant to the existing SoPine defconfig, since from a
> software point of view they are really not different.
> 
> Signed-off-by: Andre Przywara <andre.przywara@arm.com>

I'm mostly fine with the changes you made, there's just one thing that
worries me a bit: the discoverability of the defconfig is pretty bad.

If you don't know it already, it's very difficult to see that the
defconfig you should use for the Pine64 LTS is the SoPine Baseboard
one.

Maybe we can add a symbolic link from the pine64_lts_defconfig to the
sopine one to make that obvious?

The bonus would be that if we ever need to split them for whatever
reason, we can do that without breaking each and every user setup.

Maxime

Patch

diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
index bcdc5aaa25..ed0f94750b 100644
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
@@ -385,6 +385,7 @@  dtb-$(CONFIG_MACH_SUN50I) += \
 	sun50i-a64-nanopi-a64.dtb \
 	sun50i-a64-olinuxino.dtb \
 	sun50i-a64-orangepi-win.dtb \
+	sun50i-a64-pine64-lts.dtb \
 	sun50i-a64-pine64-plus.dtb \
 	sun50i-a64-pine64.dtb \
 	sun50i-a64-sopine-baseboard.dtb
diff --git a/arch/arm/dts/sun50i-a64-pine64-lts.dts b/arch/arm/dts/sun50i-a64-pine64-lts.dts
new file mode 100644
index 0000000000..72d6961dc3
--- /dev/null
+++ b/arch/arm/dts/sun50i-a64-pine64-lts.dts
@@ -0,0 +1,13 @@ 
+/*
+ * SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+ *
+ * Copyright (c) 2018 ARM Ltd.
+ */
+
+#include "sun50i-a64-sopine-baseboard.dts"
+
+/ {
+	model = "Pine64 LTS";
+	compatible = "pine64,pine64-lts", "allwinner,sun50i-r18",
+		     "allwinner,sun50i-a64";
+};
diff --git a/configs/sopine_baseboard_defconfig b/configs/sopine_baseboard_defconfig
index c79c111b5d..9f7450640a 100644
--- a/configs/sopine_baseboard_defconfig
+++ b/configs/sopine_baseboard_defconfig
@@ -11,6 +11,7 @@  CONFIG_MMC0_CD_PIN=""
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 CONFIG_SPL_SPI_SUNXI=y
 CONFIG_DEFAULT_DEVICE_TREE="sun50i-a64-sopine-baseboard"
+CONFIG_OF_LIST="sun50i-a64-sopine-baseboard sun50i-a64-pine64-lts"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_SPL_DOS_PARTITION is not set