[U-Boot] [PATCH v5 14/15] samsung: Enable device tree for smdkc100

Simon Glass sjg at chromium.org
Thu Oct 2 05:43:42 CEST 2014


Change this board to add a device tree.

Signed-off-by: Simon Glass <sjg at chromium.org>
---

Changes in v5:
- Rebase on top of samsung/master

Changes in v4:
- Rebase on top of master (CONFIG_OF settings moved to Kconfig)

Changes in v3: None
Changes in v2:
- Avoid using a common file, and just add a device tree
- Fix device tree base addresses

 arch/arm/Kconfig                   |  4 ----
 arch/arm/cpu/armv7/s5pc1xx/Kconfig |  5 +++++
 arch/arm/dts/Makefile              |  1 +
 arch/arm/dts/s5pc1xx-smdkc100.dts  | 29 +++++++++++++++++++++++++++++
 configs/smdkc100_defconfig         |  1 +
 include/configs/smdkc100.h         |  5 +++++
 6 files changed, 41 insertions(+), 4 deletions(-)
 create mode 100644 arch/arm/dts/s5pc1xx-smdkc100.dts

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index c12a9a3..ed89ec2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -427,9 +427,6 @@ config OMAP54XX
 config RMOBILE
 	bool "Renesas ARM SoCs"
 
-config TARGET_SMDKC100
-	bool "Support smdkc100"
-
 config TARGET_SOCFPGA_CYCLONE5
 	bool "Support socfpga_cyclone5"
 
@@ -638,7 +635,6 @@ source "board/ronetix/pm9261/Kconfig"
 source "board/ronetix/pm9263/Kconfig"
 source "board/ronetix/pm9g45/Kconfig"
 source "board/samsung/smdk2410/Kconfig"
-source "board/samsung/smdkc100/Kconfig"
 source "board/sandisk/sansa_fuze_plus/Kconfig"
 source "board/scb9328/Kconfig"
 source "board/schulercontrol/sc_sps_1/Kconfig"
diff --git a/arch/arm/cpu/armv7/s5pc1xx/Kconfig b/arch/arm/cpu/armv7/s5pc1xx/Kconfig
index 7919cf8..4ee52b2 100644
--- a/arch/arm/cpu/armv7/s5pc1xx/Kconfig
+++ b/arch/arm/cpu/armv7/s5pc1xx/Kconfig
@@ -6,6 +6,10 @@ choice
 config TARGET_S5P_GONI
 	bool "S5P Goni board"
 
+config TARGET_SMDKC100
+	bool "Support smdkc100 board"
+	select OF_CONTROL if !SPL_BUILD
+
 endchoice
 
 config SYS_CPU
@@ -15,5 +19,6 @@ config SYS_SOC
 	default "s5pc1xx"
 
 source "board/samsung/goni/Kconfig"
+source "board/samsung/smdkc100/Kconfig"
 
 endif
diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
index 8a8ee56..0e6830d 100644
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
@@ -1,3 +1,4 @@
+dtb-$(CONFIG_S5PC100) += s5pc1xx-smdkc100.dtb
 dtb-$(CONFIG_S5PC110) += s5pc1xx-goni.dtb
 dtb-$(CONFIG_EXYNOS4) += exynos4210-origen.dtb \
 	exynos4210-smdkv310.dtb \
diff --git a/arch/arm/dts/s5pc1xx-smdkc100.dts b/arch/arm/dts/s5pc1xx-smdkc100.dts
new file mode 100644
index 0000000..42754ce
--- /dev/null
+++ b/arch/arm/dts/s5pc1xx-smdkc100.dts
@@ -0,0 +1,29 @@
+/*
+ * Samsung's Exynos4210-based SMDKV310 board device tree source
+ *
+ * Copyright (c) 2014 Google, Inc
+ *
+ * SPDX-License-Identifier:	GPL-2.0+
+ */
+
+/dts-v1/;
+
+#include "skeleton.dtsi"
+
+/ {
+	model = "Samsung SMDKC100 based on S5PC100";
+	compatible = "samsung,smdkc100", "samsung,s5pc100";
+
+	aliases {
+		serial0 = "/serial at ec000000";
+		console = "/serial at ec000000";
+	};
+
+	serial at ec000000 {
+		compatible = "samsung,exynos4210-uart";
+		reg = <0xec000000 0x100>;
+		interrupts = <0 51 0>;
+		id = <0>;
+	};
+
+};
diff --git a/configs/smdkc100_defconfig b/configs/smdkc100_defconfig
index 7455235..5bbba1a 100644
--- a/configs/smdkc100_defconfig
+++ b/configs/smdkc100_defconfig
@@ -1,2 +1,3 @@
 CONFIG_ARM=y
 CONFIG_TARGET_SMDKC100=y
+CONFIG_ARCH_S5PC1XX=y
diff --git a/include/configs/smdkc100.h b/include/configs/smdkc100.h
index c9a2e15..eebe378 100644
--- a/include/configs/smdkc100.h
+++ b/include/configs/smdkc100.h
@@ -217,4 +217,9 @@
 #define CONFIG_ENV_SROM_BANK   3       /* Select SROM Bank-3 for Ethernet*/
 #endif /* CONFIG_CMD_NET */
 
+#define CONFIG_OF_LIBFDT
+#define CONFIG_OF_CONTROL
+#define CONFIG_OF_SEPARATE
+#define CONFIG_DEFAULT_DEVICE_TREE	s5pc1xx-smdkc100
+
 #endif	/* __CONFIG_H */
-- 
2.1.0.rc2.206.gedb03e5



More information about the U-Boot mailing list