Skip to contentSkip to conversation

Add Arndale board support

PATCH New Inderpal Singh 3 participants 5 messages Jul 2, 2013

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

v3 cover Add Arndale board support

The Arndale board is based on samsung's exynos5250 SOC. For spl generation, it depends on the patch at [5].

First patch provides the basic arndale board support. The second patch adds the MMC support.

Changes in v2:
- split from earlier patchset at [3] as per Minkyu
- Removed checkpatch errors pointed out by Wolfgang
- rebased to latest u-boot-samsung master branch
- created mmc_boot.c to remove dependency on consolidation patch at [4]
- split the mmc support to new patch as it depends on [2]

[1] http://permalink.gmane.org/gmane.comp.boot-loaders.u-boot/162883
[2] http://comments.gmane.org/gmane.comp.boot-loaders.u-boot/159887
[3] http://comments.gmane.org/gmane.comp.boot-loaders.u-boot/157101
[4] http://comments.gmane.org/gmane.comp.boot-loaders.u-boot/156272

Changes in v3:
- Used dt based serial
- rebased to latest u-boot-samsung master branch

[5] http://permalink.gmane.org/gmane.comp.boot-loaders.u-boot/164824

Inderpal Singh (2):
exynos5250: Add arndale board support
exynos5250: arndale: Add mmc support

 MAINTAINERS                              |    4 +
 board/samsung/arndale/Makefile           |   58 +++
 board/samsung/arndale/arndale.c          |  117 ++++++
 board/samsung/arndale/arndale_spl.c      |   66 +++
 board/samsung/arndale/clock_init.c       |  655 ++++++++++++++++++++++++++++++
 board/samsung/arndale/clock_init.h       |  149 +++++++
 board/samsung/arndale/dmc_common.c       |  199 +++++++++
 board/samsung/arndale/dmc_init_ddr3.c    |  228 +++++++++++
 board/samsung/arndale/lowlevel_init.S    |   92 +++++
 board/samsung/arndale/mmc_boot.c         |   58 +++
 board/samsung/arndale/setup.h            |  569 ++++++++++++++++++++++++++
 board/samsung/dts/exynos5250-arndale.dts |   41 ++
 boards.cfg                               |    1 +
 include/configs/arndale.h                |   36 ++
 14 files changed, 2273 insertions(+)
 create mode 100644 board/samsung/arndale/Makefile
 create mode 100644 board/samsung/arndale/arndale.c
 create mode 100644 board/samsung/arndale/arndale_spl.c
 create mode 100644 board/samsung/arndale/clock_init.c
 create mode 100644 board/samsung/arndale/clock_init.h
 create mode 100644 board/samsung/arndale/dmc_common.c
 create mode 100644 board/samsung/arndale/dmc_init_ddr3.c
 create mode 100644 board/samsung/arndale/lowlevel_init.S
 create mode 100644 board/samsung/arndale/mmc_boot.c
 create mode 100644 board/samsung/arndale/setup.h
 create mode 100644 board/samsung/dts/exynos5250-arndale.dts
 create mode 100644 include/configs/arndale.h
Signature · 1 line
1.7.9.5
#1 lore raw

PATCH v3 1/2 exynos5250: Add arndale board support

Arndale board is based on samsung's exynos5250 soc.

---
 MAINTAINERS                              |    4 +
 board/samsung/arndale/Makefile           |   58 +++
 board/samsung/arndale/arndale.c          |  103 +++++
 board/samsung/arndale/arndale_spl.c      |   66 +++
 board/samsung/arndale/clock_init.c       |  655 ++++++++++++++++++++++++++++++
 board/samsung/arndale/clock_init.h       |  149 +++++++
 board/samsung/arndale/dmc_common.c       |  199 +++++++++
 board/samsung/arndale/dmc_init_ddr3.c    |  228 +++++++++++
 board/samsung/arndale/lowlevel_init.S    |   92 +++++
 board/samsung/arndale/mmc_boot.c         |   58 +++
 board/samsung/arndale/setup.h            |  569 ++++++++++++++++++++++++++
 board/samsung/dts/exynos5250-arndale.dts |   23 ++
 boards.cfg                               |    1 +
 include/configs/arndale.h                |   36 ++
 14 files changed, 2241 insertions(+)
 create mode 100644 board/samsung/arndale/Makefile
 create mode 100644 board/samsung/arndale/arndale.c
 create mode 100644 board/samsung/arndale/arndale_spl.c
 create mode 100644 board/samsung/arndale/clock_init.c
 create mode 100644 board/samsung/arndale/clock_init.h
 create mode 100644 board/samsung/arndale/dmc_common.c
 create mode 100644 board/samsung/arndale/dmc_init_ddr3.c
 create mode 100644 board/samsung/arndale/lowlevel_init.S
 create mode 100644 board/samsung/arndale/mmc_boot.c
 create mode 100644 board/samsung/arndale/setup.h
 create mode 100644 board/samsung/dts/exynos5250-arndale.dts
 create mode 100644 include/configs/arndale.h
MAINTAINERS +4 -0
index 7820375..e1b6808 100644
@@ -743,6 +743,10 @@ Chander Kashyap <[email protected]>
 	SMDKV310		ARM ARMV7 (EXYNOS4210 SoC)
 	SMDK5250		ARM ARMV7 (EXYNOS5250 SoC)
 
+Inderpal Singh <[email protected]>
+
+	Arndale			ARM ARMV7 (EXYNOS5250 SoC)
+
 Lukasz Majewski <[email protected]>
 
 	trats			ARM ARMV7 (EXYNOS4210 SoC)
board/samsung/arndale/Makefile new file +58 -0

58 lines not on this page · raw message

board/samsung/arndale/arndale.c new file +103 -0

103 lines not on this page · raw message

board/samsung/arndale/arndale_spl.c new file +66 -0

66 lines not on this page · raw message

board/samsung/arndale/clock_init.c new file +655 -0

655 lines not on this page · raw message

board/samsung/arndale/clock_init.h new file +149 -0

149 lines not on this page · raw message

board/samsung/arndale/dmc_common.c new file +199 -0

199 lines not on this page · raw message

board/samsung/arndale/dmc_init_ddr3.c new file +228 -0

228 lines not on this page · raw message

board/samsung/arndale/lowlevel_init.S new file +92 -0

92 lines not on this page · raw message

board/samsung/arndale/mmc_boot.c new file +58 -0

58 lines not on this page · raw message

board/samsung/arndale/setup.h new file +569 -0

569 lines not on this page · raw message

board/samsung/dts/exynos5250-arndale.dts new file +23 -0
new file mode 100644
index 0000000..3081ab4
@@ -0,0 +1,23 @@
+/*
+ * SAMSUNG Arndale board device tree source
+ *
+ * Copyright (c) 2013 Samsung Electronics Co., Ltd.
+ *		http://www.samsung.com
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+*/
+
+/dts-v1/;
+/include/ ARCH_CPU_DTS
+
+/ {
+	model = "SAMSUNG Arndale board based on EXYNOS5250";
+	compatible = "samsung,arndale", "samsung,exynos5250";
+
+	aliases {
+		serial0 = "/serial at 12C20000";
+		console = "/serial@12C20000";
+	};
+};
boards.cfg +1 -0
index 1e598cb..38c1ac7 100644
@@ -319,6 +319,7 @@ origen			     arm	 armv7	     origen		 samsung	exynos
 s5pc210_universal            arm         armv7       universal_c210      samsung        exynos
 snow			     arm	 armv7	     smdk5250		 samsung	exynos
 smdk5250		     arm	 armv7	     smdk5250		 samsung	exynos
+arndale		     	     arm	 armv7	     arndale		 samsung	exynos
 smdkv310		     arm	 armv7	     smdkv310		 samsung	exynos
 trats                        arm         armv7       trats               samsung        exynos
 harmony                      arm         armv7:arm720t harmony           nvidia         tegra20
include/configs/arndale.h new file +36 -0
new file mode 100644
index 0000000..63d636e
@@ -0,0 +1,36 @@
+/*
+ * Copyright (C) 2013 Samsung Electronics
+ *
+ * Configuration settings for the SAMSUNG Arndale board.
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ */
+
+#ifndef __CONFIG_ARNDALE_H
+#define __CONFIG_ARNDALE_H
+
+#include <configs/exynos5250-dt.h>
+
+#undef CONFIG_DEFAULT_DEVICE_TREE
+#define CONFIG_DEFAULT_DEVICE_TREE	exynos5250-arndale
+
+#undef CONFIG_ENV_IS_IN_SPI_FLASH
+#define CONFIG_ENV_IS_IN_MMC
+
+#endif	/* __CONFIG_ARNDALE_H */
Signature · 1 line
1.7.9.5
#2 lore raw

PATCH v3 1/2 exynos5250: Add arndale board support

Dear Inderpal Singh,

Quoted 23 lines · Inderpal Singh

Arndale board is based on samsung's exynos5250 soc.

---
 MAINTAINERS                              |    4 +
 board/samsung/arndale/Makefile           |   58 +++
 board/samsung/arndale/arndale.c          |  103 +++++
 board/samsung/arndale/arndale_spl.c      |   66 +++
 board/samsung/arndale/clock_init.c       |  655 ++++++++++++++++++++++++++++++
 board/samsung/arndale/clock_init.h       |  149 +++++++
 board/samsung/arndale/dmc_common.c       |  199 +++++++++
 board/samsung/arndale/dmc_init_ddr3.c    |  228 +++++++++++
 board/samsung/arndale/lowlevel_init.S    |   92 +++++
 board/samsung/arndale/mmc_boot.c         |   58 +++
 board/samsung/arndale/setup.h            |  569 ++++++++++++++++++++++++++
 board/samsung/dts/exynos5250-arndale.dts |   23 ++
 boards.cfg                               |    1 +
 include/configs/arndale.h                |   36 ++
 14 files changed, 2241 insertions(+)
 create mode 100644 board/samsung/arndale/Makefile
 create mode 100644 board/samsung/arndale/arndale.c
 create mode 100644 board/samsung/arndale/arndale_spl.c
 create mode 100644 board/samsung/arndale/clock_init.c
Quoted 9 lines
 create mode 100644 board/samsung/arndale/clock_init.h
 create mode 100644 board/samsung/arndale/dmc_common.c
 create mode 100644 board/samsung/arndale/dmc_init_ddr3.c
 create mode 100644 board/samsung/arndale/lowlevel_init.S
 create mode 100644 board/samsung/arndale/mmc_boot.c
 create mode 100644 board/samsung/arndale/setup.h
 create mode 100644 board/samsung/dts/exynos5250-arndale.dts
 create mode 100644 include/configs/arndale.h

This patch seems to conflict with Rajeshwari's patch.
http://patchwork.ozlabs.org/patch/256058/

So, this patch will be pending until merge.

Thanks,
Minkyu Kang.

#3 lore raw

PATCH v3 2/2 exynos5250: arndale: Add mmc support

In reply to Inderpal Singh

This patch adds mmc support to the arndale board.

---
 board/samsung/arndale/arndale.c          |   14 ++++++++++++++
 board/samsung/dts/exynos5250-arndale.dts |   18 ++++++++++++++++++
 2 files changed, 32 insertions(+)
board/samsung/arndale/arndale.c +14 -0
index 627583b..7f8a568 100644
@@ -22,6 +22,7 @@
 
 #include <common.h>
 #include <asm/arch/pinmux.h>
+#include <asm/arch/dwmmc.h>
 #include <asm/arch/power.h>
 
 DECLARE_GLOBAL_DATA_PTR;
@@ -64,6 +65,19 @@ void dram_init_banksize(void)
 	}
 }
 
+#ifdef CONFIG_GENERIC_MMC
+int board_mmc_init(bd_t *bis)
+{
+	int ret;
+	/* dwmmc initializattion for available channels */
+	ret = exynos_dwmmc_init(gd->fdt_blob);
+	if (ret)
+		debug("dwmmc init failed\n");
+
+	return ret;
+}
+#endif
+
 static int board_uart_init(void)
 {
 	int err, uart_id, ret = 0;
board/samsung/dts/exynos5250-arndale.dts +18 -0
index 3081ab4..948275a 100644
@@ -20,4 +20,22 @@
 		serial0 = "/serial at 12C20000";
 		console = "/serial at 12C20000";
 	};
+
+	mmc at 12200000 {
+		samsung,bus-width = <8>;
+		samsung,timing = <1 3 3>;
+	};
+
+	mmc at 12210000 {
+		status = "disabled";
+	};
+
+	mmc at 12220000 {
+		samsung,bus-width = <4>;
+		samsung,timing = <1 2 3>;
+	};
+
+	mmc at 12230000 {
+		status = "disabled";
+	};
 };
Signature · 1 line
1.7.9.5
#4 lore raw

v3 cover Add Arndale board support

In reply to Inderpal Singh

Dear Inder,

Quoted 57 lines · Inderpal Singh

The Arndale board is based on samsung's exynos5250 SOC. For spl generation, it depends on the patch at [5].

First patch provides the basic arndale board support. The second patch adds the MMC support.

Changes in v2:
- split from earlier patchset at [3] as per Minkyu
- Removed checkpatch errors pointed out by Wolfgang
- rebased to latest u-boot-samsung master branch
- created mmc_boot.c to remove dependency on consolidation patch at [4]
- split the mmc support to new patch as it depends on [2]

[1] http://permalink.gmane.org/gmane.comp.boot-loaders.u-boot/162883
[2] http://comments.gmane.org/gmane.comp.boot-loaders.u-boot/159887
[3] http://comments.gmane.org/gmane.comp.boot-loaders.u-boot/157101
[4] http://comments.gmane.org/gmane.comp.boot-loaders.u-boot/156272

Changes in v3:
- Used dt based serial
- rebased to latest u-boot-samsung master branch

[5] http://permalink.gmane.org/gmane.comp.boot-loaders.u-boot/164824

Inderpal Singh (2):
exynos5250: Add arndale board support
exynos5250: arndale: Add mmc support

 MAINTAINERS                              |    4 +
 board/samsung/arndale/Makefile           |   58 +++
 board/samsung/arndale/arndale.c          |  117 ++++++
 board/samsung/arndale/arndale_spl.c      |   66 +++
 board/samsung/arndale/clock_init.c       |  655 ++++++++++++++++++++++++++++++
 board/samsung/arndale/clock_init.h       |  149 +++++++
 board/samsung/arndale/dmc_common.c       |  199 +++++++++
 board/samsung/arndale/dmc_init_ddr3.c    |  228 +++++++++++
 board/samsung/arndale/lowlevel_init.S    |   92 +++++
 board/samsung/arndale/mmc_boot.c         |   58 +++
 board/samsung/arndale/setup.h            |  569 ++++++++++++++++++++++++++
 board/samsung/dts/exynos5250-arndale.dts |   41 ++
 boards.cfg                               |    1 +
 include/configs/arndale.h                |   36 ++
 14 files changed, 2273 insertions(+)
 create mode 100644 board/samsung/arndale/Makefile
 create mode 100644 board/samsung/arndale/arndale.c
 create mode 100644 board/samsung/arndale/arndale_spl.c
 create mode 100644 board/samsung/arndale/clock_init.c
 create mode 100644 board/samsung/arndale/clock_init.h
 create mode 100644 board/samsung/arndale/dmc_common.c
 create mode 100644 board/samsung/arndale/dmc_init_ddr3.c
 create mode 100644 board/samsung/arndale/lowlevel_init.S
 create mode 100644 board/samsung/arndale/mmc_boot.c
 create mode 100644 board/samsung/arndale/setup.h
 create mode 100644 board/samsung/dts/exynos5250-arndale.dts
 create mode 100644 include/configs/arndale.h
Quoted 3 lines

--
1.7.9.5

Looks good.

--
with warm regards,
Chander Kashyap