Introduction of new board Peach-Pit
Subsystems (2)
v4 cover Introduction of new board Peach-Pit
This board is based on Exynos5420 and is similar to SMDK5420 board. Adding new and refactoring existing DT and config files to support both SMDK5420 and Peach-Pit.
This patch set also intends to place env at the end of flash, increase SPL footprint, enable USB boot mode and split memory bank config.
Changes since v1:
- Added "Acked-by".
Changes since v2:
- Changed order of the patches because 2/2 alone results in compiler errors and has dependency over patch 1/2.
- Removed CONFIG_CHROMEOS_PEACH.
Changes since v3:
- Took four patches in this set from a different patch set.
- Rebased all the patches to Top of Tree.
Akshay Saraswat (5):
Exynos5420: Let macros be used for exynos5420
Exynos5420: Introduce support for the Peach-Pit board
Exynos5: Config: Place environment at the end of SPI flash
Exynos5: Config: Increase SPL footprint for Exynos5420
Exynos5: Config: Enable USB boot mode for all Exynos5 SoCs
Michael Pratt (1):
Exynos: Split 5250 and 5420 memory bank configuration
arch/arm/cpu/armv7/exynos/exynos5_setup.h | 6 +- arch/arm/dts/Makefile | 3 +- arch/arm/dts/exynos5420-peach-pit.dts | 127 +++++++++++++++++++++++++ arch/arm/dts/exynos5420-smdk5420.dts | 23 +---- arch/arm/dts/exynos5420.dtsi | 70 -------------- arch/arm/dts/exynos54xx.dtsi | 151 ++++++++++++++++++++++++++++++ boards.cfg | 1 + include/configs/exynos5-dt.h | 15 ++- include/configs/exynos5250-dt.h | 13 +-- include/configs/exynos5420.h | 52 ++++++++++ include/configs/peach-pit.h | 25 +++++ include/configs/smdk5420.h | 49 ++-------- 12 files changed, 388 insertions(+), 147 deletions(-) create mode 100644 arch/arm/dts/exynos5420-peach-pit.dts delete mode 100644 arch/arm/dts/exynos5420.dtsi create mode 100644 arch/arm/dts/exynos54xx.dtsi create mode 100644 include/configs/exynos5420.h create mode 100644 include/configs/peach-pit.h
Signature · 1 line
1.7.12.4
PATCH v4 1/6 Exynos5420: Let macros be used for exynos5420
Macros defined in exynos5_setup.h specific to SMDK5420 are required for Peach-Pit too. Hence, replacing CONFIG_SMDK5420 with CONFIG_EXYNOS5420 to enable these macros for all the boards based on Exynos5420.
---
Changes since v1:
- Added "Acked-by".
arch/arm/cpu/armv7/exynos/exynos5_setup.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
arch/arm/cpu/armv7/exynos/exynos5_setup.h +3 -3
@@ -435,10 +435,10 @@/* * Definitions that differ with SoC's. -* Below is the part defining macros for smdk5250. -* Else part introduces macros for smdk5420. +* Below is the part defining macros for Exynos5250. +* Else part introduces macros for Exynos5420. */ -#ifndef CONFIG_SMDK5420 +#ifndef CONFIG_EXYNOS5420 /* APLL_CON1 */ #define APLL_CON1_VAL (0x00203800)
Signature · 1 line
1.7.12.4
PATCH v4 1/6 Exynos5420: Let macros be used for exynos5420
Quoted 7 lines · Akshay Saraswat
Macros defined in
exynos5_setup.hspecific to SMDK5420 are required for Peach-Pit too. Hence, replacingCONFIG_SMDK5420withCONFIG_EXYNOS5420to enable these macros for all the boards based on Exynos5420.Signed-off-by Akshay Saraswat <[email protected]>Acked-by Simon Glass <[email protected]>
PATCH v4 2/6 Exynos5420: Introduce support for the Peach-Pit board
In reply to Akshay SaraswatWhile the Exynos5420 chip is used in both Smdk5420 and in the Peach-Pit line of devices, there could be other boards using the same chip, so a common configuration file is being added (exynos5420.h) as well as two common device tree files (exynos54xx.dtsi & exynos5420.dtsi).
The peach board as declared in boards.cfg is a copy of smdk5420 declaration. The configuration files are similar, but define different default device trees, console serial ports and prompts.
The device tree files for smdk5420 and peach-pit inherit from the same common file.
---
Changes since v2:
- Removed CONFIG_CHROMEOS_PEACH.
Changes since v1:
- Added "Acked-by".
arch/arm/dts/Makefile | 3 +- arch/arm/dts/exynos5420-peach-pit.dts | 127 ++++++++++++++++++++++++++++ arch/arm/dts/exynos5420-smdk5420.dts | 23 +----- arch/arm/dts/exynos5420.dtsi | 70 ---------------- arch/arm/dts/exynos54xx.dtsi | 151 ++++++++++++++++++++++++++++++++++ boards.cfg | 1 + include/configs/exynos5420.h | 46 +++++++++++ include/configs/peach-pit.h | 25 ++++++ include/configs/smdk5420.h | 49 ++--------- 9 files changed, 362 insertions(+), 133 deletions(-) create mode 100644 arch/arm/dts/exynos5420-peach-pit.dts delete mode 100644 arch/arm/dts/exynos5420.dtsi create mode 100644 arch/arm/dts/exynos54xx.dtsi create mode 100644 include/configs/exynos5420.h create mode 100644 include/configs/peach-pit.h
arch/arm/dts/Makefile +2 -1
@@ -6,7 +6,8 @@ dtb-$(CONFIG_EXYNOS4) += exynos4210-origen.dtb \ dtb-$(CONFIG_EXYNOS5) += exynos5250-arndale.dtb \ exynos5250-snow.dtb \ exynos5250-smdk5250.dtb \ - exynos5420-smdk5420.dtb + exynos5420-smdk5420.dtb \ + exynos5420-peach-pit.dtb dtb-$(CONFIG_MX6) += imx6q-sabreauto.dtb dtb-$(CONFIG_TEGRA) += tegra20-harmony.dtb \ tegra20-medcom-wide.dtb \
arch/arm/dts/exynos5420-peach-pit.dts new file +127 -0
127 lines not on this page · raw message
arch/arm/dts/exynos5420-smdk5420.dts +1 -22
@@ -8,7 +8,7 @@ */ /dts-v1/; -/include/ "exynos5420.dtsi" +/include/ "exynos54xx.dtsi" / { model = "SAMSUNG SMDK5420 board based on EXYNOS5420";
@@ -19,27 +19,6 @@ }; aliases { - i2c0 = "/i2c at 12c60000"; - i2c1 = "/i2c at 12c70000"; - i2c2 = "/i2c at 12c80000"; - i2c3 = "/i2c at 12c90000"; - i2c4 = "/i2c at 12ca0000"; - i2c5 = "/i2c at 12cb0000"; - i2c6 = "/i2c at 12cc0000"; - i2c7 = "/i2c at 12cd0000"; - i2c8 = "/i2c at 12e00000"; - i2c9 = "/i2c at 12e10000"; - i2c10 = "/i2c at 12e20000"; - spi0 = "/spi at 12d20000"; - spi1 = "/spi at 12d30000"; - spi2 = "/spi at 12d40000"; - spi3 = "/spi at 131a0000"; - spi4 = "/spi at 131b0000"; - mmc0 = "/mmc at 12200000"; - mmc1 = "/mmc at 12210000"; - mmc2 = "/mmc at 12220000"; - xhci0 = "/xhci at 12000000"; - xhci1 = "/xhci at 12400000"; serial0 = "/serial at 12C30000"; console = "/serial at 12C30000"; };
arch/arm/dts/exynos5420.dtsi deleted +0 -70
70 lines not on this page · raw message
arch/arm/dts/exynos54xx.dtsi new file +151 -0
151 lines not on this page · raw message
boards.cfg +1 -0
@@ -293,6 +293,7 @@ Active arm armv7 exynos samsung origen Active arm armv7 exynos samsung smdk5250 smdk5250 - Chander Kashyap <[email protected]> Active arm armv7 exynos samsung smdk5250 snow - Rajeshwari Shinde <[email protected]> Active arm armv7 exynos samsung smdk5420 smdk5420 - Rajeshwari Shinde <[email protected]> +Active arm armv7 exynos samsung smdk5420 peach-pit - Akshay Saraswat <[email protected]> Active arm armv7 exynos samsung smdkv310 smdkv310 - Chander Kashyap <[email protected]> Active arm armv7 exynos samsung trats trats - Lukasz Majewski <[email protected]> Active arm armv7 exynos samsung trats2 trats2 - Piotr Wilczek <[email protected]>
include/configs/exynos5420.h new file +46 -0
46 lines not on this page · raw message
include/configs/peach-pit.h new file +25 -0
@@ -0,0 +1,25 @@ +/* +* Copyright (C) 2013 Samsung Electronics +* +* Configuration settings for the SAMSUNG/GOOGLE PEACH-PIT board. +* +* SPDX-License-Identifier: GPL-2.0+ +*/ + +#ifndef __CONFIG_PEACH_PIT_H +#define __CONFIG_PEACH_PIT_H + +#include <configs/exynos5-dt.h> + +#include <configs/exynos5420.h> + +#undef CONFIG_DEFAULT_DEVICE_TREE +#define CONFIG_DEFAULT_DEVICE_TREE exynos5420-peach-pit + +/* select serial console configuration */ +#define CONFIG_SERIAL3 /* use SERIAL 3 */ + +#define CONFIG_SYS_PROMPT "Peach # " +#define CONFIG_IDENT_STRING " for Peach" + +#endif /* __CONFIG_PEACH_PIT_H */
include/configs/smdk5420.h +9 -40
67 lines not on this page · raw message
Signature · 1 line
1.7.12.4
PATCH v4 3/6 Exynos5: Config: Place environment at the end of SPI flash
In reply to Akshay SaraswatCurrently environment resides at the location where BL2 ends. This may hold good in case there is an empty space at this position. But what if this place already has a binary or is expected to have one. To avoid such scenarios it is better to save environment at the end of the flash.
---
Changes since v3:
- Introduced to this patch-set.
Changes since v2:
- Added "Acked-by" & "Tested-by".
Changes since v1:
- Added new config for SPI flash size.
include/configs/exynos5-dt.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
include/configs/exynos5-dt.h +4 -1
@@ -207,7 +207,10 @@#define CONFIG_BL1_OFFSET (CONFIG_RES_BLOCK_SIZE + CONFIG_SEC_FW_SIZE)#define CONFIG_BL2_OFFSET (CONFIG_BL1_OFFSET + CONFIG_BL1_SIZE) -#define CONFIG_ENV_OFFSET (CONFIG_BL2_OFFSET + CONFIG_BL2_SIZE) + +/* Store environment at the end of a 4 MB SPI flash */ +#define FLASH_SIZE (0x4 << 20) +#define CONFIG_ENV_OFFSET (FLASH_SIZE - CONFIG_BL2_SIZE)/* U-boot copy size from boot Media to DRAM.*/ #define BL2_START_OFFSET (CONFIG_BL2_OFFSET/512)
Signature · 1 line
1.7.12.4
PATCH v4 4/6 Exynos5: Config: Increase SPL footprint for Exynos5420
In reply to Akshay SaraswatMax footprint for SPL in both Exynos 5250 and 5420 is limited to 14 KB. For Exynos5250 we need to keep it 14 KB because BL1 supports only fixed size SPL downloading. But in case of Exynos5420 we need not restrict it to 14 KB. And also, the SPL size for Exynos5420 is expected to increase with the upcoming patches and the patches under review right now.
---
Changes since v3:
- Introduced to this patch-set.
Changes since v2:
- Added "Acked-by" & "Tested-by".
Changes since v1:
- Changed 5420 SPL footprint from 32 to 30 KB.
include/configs/exynos5-dt.h | 2 -- include/configs/exynos5250-dt.h | 2 ++ include/configs/exynos5420.h | 2 ++ 3 files changed, 4 insertions(+), 2 deletions(-)
include/configs/exynos5-dt.h +0 -2
@@ -144,8 +144,6 @@/* specific .lds file */ #define CONFIG_SPL_LDSCRIPT "board/samsung/common/exynos-uboot-spl.lds" -#define CONFIG_SPL_MAX_FOOTPRINT (14 * 1024) -/* Miscellaneous configurable options */ #define CONFIG_SYS_LONGHELP /* undef to save memory */
include/configs/exynos5250-dt.h +2 -0
@@ -20,6 +20,8 @@#define MACH_TYPE_SMDK5250 3774#define CONFIG_MACH_TYPE MACH_TYPE_SMDK5250 +#define CONFIG_SPL_MAX_FOOTPRINT (14 * 1024) +/* USB */ #define CONFIG_CMD_USB #define CONFIG_USB_XHCI
include/configs/exynos5420.h +2 -0
@@ -25,6 +25,8 @@#endif #define CONFIG_IRAM_TOP 0x02074000 +#define CONFIG_SPL_MAX_FOOTPRINT (30 * 1024) +#define CONFIG_DEVICE_TREE_LIST "exynos5420-peach-pit exynos5420-smdk5420"#define CONFIG_MAX_I2C_NUM 11
Signature · 1 line
1.7.12.4
PATCH v4 5/6 Exynos5: Config: Enable USB boot mode for all Exynos5 SoCs
In reply to Akshay SaraswatRight now USB booting is enabled for Exynos5250 only. Moving all the configs for USB boot mode from exynos5250-dt.h to exynos5-dt.h in order to enableUSB booting for all Exynos5 SoCs.
---
Changes since v3:
- Introduced to this patch-set.
Changes since v2:
- Added "Acked-by" & "Tested-by".
Changes since v1:
- Added "Acked-by".
include/configs/exynos5-dt.h | 6 ++++++ include/configs/exynos5250-dt.h | 6 ------ 2 files changed, 6 insertions(+), 6 deletions(-)
include/configs/exynos5-dt.h +6 -0
@@ -292,4 +292,10 @@#define CONFIG_CMD_GPIO +/* USB boot mode */ +#define CONFIG_USB_BOOTING +#define EXYNOS_COPY_USB_FNPTR_ADDR 0x02020070 +#define EXYNOS_USB_SECONDARY_BOOT 0xfeed0002 +#define EXYNOS_IRAM_SECONDARY_BASE 0x02020018 +#endif /* __CONFIG_H */
include/configs/exynos5250-dt.h +0 -6
@@ -29,12 +29,6 @@#define CONFIG_SYS_USB_XHCI_MAX_ROOT_PORTS 2#define CONFIG_USB_STORAGE -/* USB boot mode */ -#define CONFIG_USB_BOOTING -#define EXYNOS_COPY_USB_FNPTR_ADDR 0x02020070 -#define EXYNOS_USB_SECONDARY_BOOT 0xfeed0002 -#define EXYNOS_IRAM_SECONDARY_BASE 0x02020018 -#define CONFIG_SPL_TEXT_BASE 0x02023400#define CONFIG_BOOTCOMMAND "mmc read 40007000 451 2000; bootm 40007000"
Signature · 1 line
1.7.12.4
PATCH v4 6/6 Exynos: Split 5250 and 5420 memory bank configuration
In reply to Akshay SaraswatFrom: Michael Pratt <[email protected]>
Since snow has a different memory configuration than peach, split the configuration between the 5250 and 5420. Exynos 5420 supports runtime memory configuration detection, and can make the determination between 4 and 7 banks at runtime.
Include the bank size with the number of banks for context to make the number of banks meaningful.
---
Changes since v3:
- Introduced to this patch-set.
Changes since v2:
- Added "Acked-by" & "Tested-by".
Changes since v1:
- New patch.
include/configs/exynos5-dt.h | 2 -- include/configs/exynos5250-dt.h | 5 +++++ include/configs/exynos5420.h | 4 ++++ 3 files changed, 9 insertions(+), 2 deletions(-)
include/configs/exynos5-dt.h +0 -2
@@ -161,8 +161,6 @@#define CONFIG_RD_LVL -#define CONFIG_NR_DRAM_BANKS 8 -#define SDRAM_BANK_SIZE (256UL << 20UL)/* 256 MB */ #define PHYS_SDRAM_1 CONFIG_SYS_SDRAM_BASE#define PHYS_SDRAM_1_SIZE SDRAM_BANK_SIZE#define PHYS_SDRAM_2 (CONFIG_SYS_SDRAM_BASE + SDRAM_BANK_SIZE)
include/configs/exynos5250-dt.h +5 -0
@@ -65,4 +65,9 @@#define LCD_YRES 1600#define LCD_BPP LCD_COLOR16#endif + +/* DRAM Memory Banks */ +#define CONFIG_NR_DRAM_BANKS 8 +#define SDRAM_BANK_SIZE (256UL << 20UL)/* 256 MB */ +#endif /* __CONFIG_5250_H */
include/configs/exynos5420.h +4 -0
@@ -45,4 +45,8 @@*/ #define CONFIG_SYS_INIT_SP_ADDR (CONFIG_IRAM_TOP - 0x800) +/* DRAM Memory Banks */ +#define CONFIG_NR_DRAM_BANKS 7 +#define SDRAM_BANK_SIZE (512UL << 20UL)/* 512 MB */ +#endif /* __CONFIG_EXYNOS5420_H */
Signature · 1 line
1.7.12.4
v4 cover Introduction of new board Peach-Pit
In reply to Akshay SaraswatHi Akshay,
Quoted 23 lines · Akshay Saraswat
This board is based on Exynos5420 and is similar to SMDK5420 board. Adding new and refactoring existing DT and config files to support both SMDK5420 and Peach-Pit.
This patch set also intends to place env at the end of flash, increase SPL footprint, enable USB boot mode and split memory bank config.Changes since v1:
- Added "Acked-by".
Changes since v2:
- Changed order of the patches because 2/2 alone results in compiler errors and has dependency over patch 1/2.
- RemovedCONFIG_CHROMEOS_PEACH.
Changes since v3:
- Took four patches in this set from a different patch set.
- Rebased all the patches to Top of Tree.Akshay Saraswat (5):
Exynos5420: Let macros be used for exynos5420
Exynos5420: Introduce support for the Peach-Pit board
Exynos5: Config: Place environment at the end of SPI flash
Exynos5: Config: Increase SPL footprint for Exynos5420
Exynos5: Config: Enable USB boot mode for all Exynos5 SoCs
Quoted 2 lines
Michael Pratt (1):
Exynos: Split 5250 and 5420 memory bank configuration
For me I needed to reduce the speed in SPL to 900MHz by adding this to the device tree:
arm-frequency = <900000000>;
Otherwise it would not boot over USB A-A.
Regards,
Simon
v4 cover Introduction of new board Peach-Pit
In reply to Akshay SaraswatQuoted 36 lines · Akshay Saraswat
This board is based on Exynos5420 and is similar to SMDK5420 board. Adding new and refactoring existing DT and config files to support both SMDK5420 and Peach-Pit.
This patch set also intends to place env at the end of flash, increase SPL footprint, enable USB boot mode and split memory bank config.Changes since v1:
- Added "Acked-by".
Changes since v2:
- Changed order of the patches because 2/2 alone results in compiler errors and has dependency over patch 1/2.
- RemovedCONFIG_CHROMEOS_PEACH.
Changes since v3:
- Took four patches in this set from a different patch set.
- Rebased all the patches to Top of Tree.Akshay Saraswat (5):
Exynos5420: Let macros be used for exynos5420
Exynos5420: Introduce support for the Peach-Pit board
Exynos5: Config: Place environment at the end of SPI flash
Exynos5: Config: Increase SPL footprint for Exynos5420
Exynos5: Config: Enable USB boot mode for all Exynos5 SoCsMichael Pratt (1):
Exynos: Split 5250 and 5420 memory bank configurationarch/arm/cpu/armv7/exynos/exynos5_setup.h | 6 +- arch/arm/dts/Makefile | 3 +- arch/arm/dts/exynos5420-peach-pit.dts | 127 +++++++++++++++++++++++++ arch/arm/dts/exynos5420-smdk5420.dts | 23 +---- arch/arm/dts/exynos5420.dtsi | 70 -------------- arch/arm/dts/exynos54xx.dtsi | 151 ++++++++++++++++++++++++++++++ boards.cfg | 1 + include/configs/exynos5-dt.h | 15 ++- include/configs/exynos5250-dt.h | 13 +-- include/configs/exynos5420.h | 52 ++++++++++
Quoted 9 lines
include/configs/peach-pit.h | 25 +++++ include/configs/smdk5420.h | 49 ++-------- 12 files changed, 388 insertions(+), 147 deletions(-) create mode 100644 arch/arm/dts/exynos5420-peach-pit.dts delete mode 100644 arch/arm/dts/exynos5420.dtsi create mode 100644 arch/arm/dts/exynos54xx.dtsi create mode 100644 include/configs/exynos5420.h create mode 100644 include/configs/peach-pit.h
applied to u-boot-samsung.
Thanks,
Minkyu Kang.