ARM: Samsung: Add Exynos5422-based Odroid HC2 support
Meul
PATCH 1/1 ARM: Samsung: Add Exynos5422-based Odroid HC2 support
Odroid HC2 board is based on Odroid XU4 board, like the Odroid HC1.
The linux kernel does not provide a hc2 DTB so the hc1 DTB is also used for the Odroid HC2.
--- board/samsung/common/exynos5-dt-types.c | 16 +++++++++++++--- board/samsung/common/exynos5-dt.c | 4 ++-- configs/odroid-xu3_defconfig | 2 +- include/samsung/exynos5-dt-types.h | 2 ++ 4 files changed, 18 insertions(+), 6 deletions(-)
board/samsung/common/exynos5-dt-types.c +13 -3
@@ -24,14 +24,15 @@ static const struct udevice_id board_ids[] = { };/** -* Odroix XU3/XU4/HC1 board revisions (from HC1_MAIN_REV0.1_20170630.pdf): +* Odroix XU3/XU4/HC1/HC2 board revisions (from HC1+_HC2_MAIN_REV0.1_20171017.pdf): * Rev ADCmax Board * 0.1 0 XU3 0.1 * 0.2 372 XU3 0.2 | XU3L - no DISPLAYPORT (probe I2C0:0x40 / INA231) * 0.3 1280 XU4 0.1 * 0.4 739 XU4 0.2 * 0.5 1016 XU4+Air0.1 (Passive cooling) -* 0.6 1308 XU4S 0.1 (HC1) +* 0.6 1309 XU4-HC1 0.1 +* 0.7 1470 XU4-HC1+ 0.1 (HC2) * Use +1% for ADC value tolerance in the array below, the code loops until * the measured ADC value is lower than then ADCmax from the array. */
@@ -39,7 +40,8 @@ struct odroid_rev_info odroid_info[] = { { EXYNOS5_BOARD_ODROID_XU3_REV01, 1, 10, "xu3" }, { EXYNOS5_BOARD_ODROID_XU3_REV02, 2, 375, "xu3" }, { EXYNOS5_BOARD_ODROID_XU4_REV01, 1, 1293, "xu4" }, - { EXYNOS5_BOARD_ODROID_HC1_REV01, 1, 1321, "hc1" }, + { EXYNOS5_BOARD_ODROID_HC1_REV01, 1, 1322, "hc1" }, + { EXYNOS5_BOARD_ODROID_HC2_REV01, 1, 1484, "hc1" }, { EXYNOS5_BOARD_ODROID_UNKNOWN, 0, 4095, "unknown" }, };
@@ -144,6 +146,14 @@ bool board_is_odroidhc1(void)return false; } +bool board_is_odroidhc2 (void ) +{ +if (gd->board_type ==EXYNOS5_BOARD_ODROID_HC2_REV01 ) +return true; + +return false; +} +bool board_is_generic (void ) {if (gd->board_type ==EXYNOS5_BOARD_GENERIC )
board/samsung/common/exynos5-dt.c +2 -2
@@ -179,7 +179,7 @@ char *get_dfu_alt_system(char *interface, char *devstr) {char *info ="Not supported!" ; -if (board_is_odroidxu4 () ||board_is_odroidhc1 ()) +if (board_is_odroidxu4 () ||board_is_odroidhc1 () ||board_is_odroidhc2 ())return info;return env_get ("dfu_alt_system" );
@@ -192,7 +192,7 @@ char *get_dfu_alt_boot(char *interface, char *devstr)char *alt_boot;int dev_num; -if (board_is_odroidxu4 () ||board_is_odroidhc1 ()) +if (board_is_odroidxu4 () ||board_is_odroidhc1 () ||board_is_odroidhc2 ())return info; dev_num =simple_strtoul (devstr,NULL ,10 );
configs/odroid-xu3_defconfig +1 -1
@@ -2,7 +2,7 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_SYS_TEXT_BASE=0x43E00000 CONFIG_ARCH_EXYNOS5=y -CONFIG_IDENT_STRING=" for ODROID-XU3/XU4/HC1" +CONFIG_IDENT_STRING=" for ODROID-XU3/XU4/HC1/HC2" CONFIG_DISTRO_DEFAULTS=y CONFIG_NR_DRAM_BANKS=8 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
include/samsung/exynos5-dt-types.h +2 -0
@@ -9,6 +9,7 @@ enum {EXYNOS5_BOARD_ODROID_XU3_REV02 ,EXYNOS5_BOARD_ODROID_XU4_REV01 ,EXYNOS5_BOARD_ODROID_HC1_REV01 , +EXYNOS5_BOARD_ODROID_HC2_REV01 ,EXYNOS5_BOARD_ODROID_UNKNOWN , EXYNOS5_BOARD_COUNT,
@@ -25,5 +26,6 @@ bool board_is_generic(void);bool board_is_odroidxu3 (void );bool board_is_odroidxu4 (void );bool board_is_odroidhc1 (void ); +bool board_is_odroidhc2 (void );#endif
--
2.17.1
PATCH 1/1 ARM: Samsung: Add Exynos5422-based Odroid HC2 support
Hi All,
Quoted 6 lines · Dirk
Odroid HC2 board is based on Odroid XU4 board, like the Odroid HC1.
The linux kernel does not provide a hc2 DTB so the hc1 DTB is also used for the Odroid HC2.
Signed-off-by Dirk Meul <[email protected]>
I don't have access to HC2, but the code looks reasonable and does similar things
I did while adding support for Odroid HC1.
Quoted 116 lines
---
board/samsung/common/exynos5-dt-types.c | 16 +++++++++++++--- board/samsung/common/exynos5-dt.c | 4 ++-- configs/odroid-xu3_defconfig | 2 +- include/samsung/exynos5-dt-types.h | 2 ++4 files changed, 18 insertions(+), 6 deletions(-)board/samsung/common/exynos5-dt-types.c +0
-0@@ -24,14 +24,15 @@ static const struct udevice_id board_ids[] = { };
/**
- * Odroix XU3/XU4/HC1 board revisions (from HC1_MAIN_REV0.1_20170630.pdf):
+ * Odroix XU3/XU4/HC1/HC2 board revisions (from HC1+_HC2_MAIN_REV0.1_20171017.pdf):
* Rev ADCmax Board
* 0.1 0 XU3 0.1
* 0.2 372 XU3 0.2 | XU3L - no DISPLAYPORT (probe I2C0:0x40 / INA231)
* 0.3 1280 XU4 0.1
* 0.4 739 XU4 0.2
* 0.5 1016 XU4+Air0.1 (Passive cooling)
- * 0.6 1308 XU4S 0.1 (HC1)
+ * 0.6 1309 XU4-HC1 0.1
+ * 0.7 1470 XU4-HC1+ 0.1 (HC2)
* Use +1% for ADC value tolerance in the array below, the code loops until
* the measured ADC value is lower than then ADCmax from the array. */board/samsung/common/exynos5-dt-types.c +2
-1@@ -39,7 +40,8 @@ struct odroid_rev_info odroid_info[] = { { EXYNOS5_BOARD_ODROID_XU3_REV01, 1, 10, "xu3" }, { EXYNOS5_BOARD_ODROID_XU3_REV02, 2, 375, "xu3" }, { EXYNOS5_BOARD_ODROID_XU4_REV01, 1, 1293, "xu4" }, - { EXYNOS5_BOARD_ODROID_HC1_REV01, 1, 1321, "hc1" }, + { EXYNOS5_BOARD_ODROID_HC1_REV01, 1, 1322, "hc1" }, + { EXYNOS5_BOARD_ODROID_HC2_REV01, 1, 1484, "hc1" }, { EXYNOS5_BOARD_ODROID_UNKNOWN, 0, 4095, "unknown" }, };board/samsung/common/exynos5-dt-types.c +0
-0@@ -144,6 +146,14 @@ bool board_is_odroidhc1(void) return false; }board/samsung/common/exynos5-dt-types.c +8
-0+bool board_is_odroidhc2 (void ) +{ + if (gd->board_type == EXYNOS5_BOARD_ODROID_HC2_REV01) + return true; + + return false; +} +bool
board_is_generic(void)
{
if (gd->board_type==EXYNOS5_BOARD_GENERIC)board/samsung/common/exynos5-dt.c +0
-0@@ -179,7 +179,7 @@ char *get_dfu_alt_system(char *interface, char *devstr) { char *info = "Not supported!";- if (board_is_odroidxu4() || board_is_odroidhc1()) + if (board_is_odroidxu4() || board_is_odroidhc1() ||
board_is_odroidhc2())
return info;
returnenv_get("dfu_alt_system");board/samsung/common/exynos5-dt.c +0
-0@@ -192,7 +192,7 @@ char *get_dfu_alt_boot(char *interface, char *devstr) char *alt_boot; int dev_num;- if (board_is_odroidxu4() || board_is_odroidhc1()) + if (board_is_odroidxu4() || board_is_odroidhc1() ||
board_is_odroidhc2())
return info;
dev_num =simple_strtoul(devstr, NULL, 10);configs/odroid-xu3_defconfig +0
-0@@ -2,7 +2,7 @@ CONFIG_ARM=yCONFIG_ARCH_EXYNOS=y
CONFIG_SYS_TEXT_BASE=0x43E00000
CONFIG_ARCH_EXYNOS5=yconfigs/odroid-xu3_defconfig +1
-1-CONFIG_IDENT_STRING=" for ODROID-XU3/XU4/HC1" +CONFIG_IDENT_STRING=" for ODROID-XU3/XU4/HC1/HC2"CONFIG_DISTRO_DEFAULTS=y
CONFIG_NR_DRAM_BANKS=8
#CONFIG_SYS_MALLOC_CLEAR_ON_INITis not setinclude/samsung/exynos5-dt-types.h +1
-0@@ -9,6 +9,7 @@ enum { EXYNOS5_BOARD_ODROID_XU3_REV02, EXYNOS5_BOARD_ODROID_XU4_REV01, EXYNOS5_BOARD_ODROID_HC1_REV01, + EXYNOS5_BOARD_ODROID_HC2_REV01, EXYNOS5_BOARD_ODROID_UNKNOWN,
EXYNOS5_BOARD_COUNT,include/samsung/exynos5-dt-types.h +1
-0@@ -25,5 +26,6 @@ bool board_is_generic(void); bool board_is_odroidxu3(void); bool board_is_odroidxu4(void); bool board_is_odroidhc1(void); +bool board_is_odroidhc2 (void );
Quoted 6 lines
#endifSignature · 1 line
2.17.1
Best regards
Signature · 2 lines
Marek Szyprowski, PhD Samsung R&D Institute Poland
PATCH 1/1 ARM: Samsung: Add Exynos5422-based Odroid HC2 support
In reply to MeulHi Dirk,
Quoted 119 lines
Odroid HC2 board is based on Odroid XU4 board, like the Odroid HC1.
The linux kernel does not provide a hc2 DTB so the hc1 DTB is also used for the Odroid HC2.
Signed-off-by Dirk Meul <[email protected]>--- board/samsung/common/exynos5-dt-types.c | 16 +++++++++++++--- board/samsung/common/exynos5-dt.c | 4 ++-- configs/odroid-xu3_defconfig | 2 +- include/samsung/exynos5-dt-types.h | 2 ++ 4 files changed, 18 insertions(+), 6 deletions(-)(quoted diff) +0
-0
b/board/samsung/common/exynos5-dt-types.cindex4473968db6..7a86e91877100644 ---a/board/samsung/common/exynos5-dt-types.c+++b/board/samsung/common/exynos5-dt-types.c@@ -24,14 +24,15 @@ static const structudevice_idboard_ids[] = { };/**
- * Odroix XU3/XU4/HC1 board revisions (from
HC1_MAIN_REV0.1_20170630.pdf):
+ * Odroix XU3/XU4/HC1/HC2 board revisions (from
HC1+_HC2_MAIN_REV0.1_20171017.pdf):* Rev ADCmax Board * 0.1 0 XU3 0.1 * 0.2 372 XU3 0.2 | XU3L - no DISPLAYPORT (probe I2C0:0x40 / INA231) * 0.3 1280 XU4 0.1 * 0.4 739 XU4 0.2 * 0.5 1016 XU4+Air0.1 (Passive cooling) - * 0.6 1308 XU4S 0.1 (HC1) + * 0.6 1309 XU4-HC1 0.1 + * 0.7 1470 XU4-HC1+ 0.1 (HC2)* Use +1% for ADC value tolerance in the array below, the code
loops until
* the measured ADC value is lower than then ADCmax from the array. */board/samsung/common/exynos5-dt-types.c +10
-1@@ -39,7 +40,8 @@ struct odroid_rev_info odroid_info[] = { { EXYNOS5_BOARD_ODROID_XU3_REV01, 1, 10, "xu3" }, { EXYNOS5_BOARD_ODROID_XU3_REV02, 2, 375, "xu3" }, { EXYNOS5_BOARD_ODROID_XU4_REV01, 1, 1293, "xu4" }, - { EXYNOS5_BOARD_ODROID_HC1_REV01, 1, 1321, "hc1" }, + { EXYNOS5_BOARD_ODROID_HC1_REV01, 1, 1322, "hc1" }, + { EXYNOS5_BOARD_ODROID_HC2_REV01, 1, 1484, "hc1" }, { EXYNOS5_BOARD_ODROID_UNKNOWN, 0, 4095, "unknown" }, };@@ -144,6 +146,14 @@ bool board_is_odroidhc1(void)return false; } +bool board_is_odroidhc2 (void ) +{ +if (gd->board_type ==EXYNOS5_BOARD_ODROID_HC2_REV01 ) +return true; + +return false; +} +bool board_is_generic (void ) {if (gd->board_type ==EXYNOS5_BOARD_GENERIC )(quoted diff) +0
-0
b/board/samsung/common/exynos5-dt.cindex8c3a9ea564..c183965b92100644 ---a/board/samsung/common/exynos5-dt.c
+++b/board/samsung/common/exynos5-dt.cboard/samsung/common/exynos5-dt.c +2
-2@@ -179,7 +179,7 @@ char *get_dfu_alt_system(char *interface, char *devstr) {char *info ="Not supported!" ; -if (board_is_odroidxu4 () ||board_is_odroidhc1 ()) +if (board_is_odroidxu4 () ||board_is_odroidhc1 () ||board_is_odroidhc2 ())return info;return env_get ("dfu_alt_system" );@@ -192,7 +192,7 @@ char *get_dfu_alt_boot(char *interface, char *devstr) char *alt_boot;int dev_num; -if (board_is_odroidxu4 () ||board_is_odroidhc1 ()) +if (board_is_odroidxu4 () ||board_is_odroidhc1 () ||board_is_odroidhc2 ())return info; dev_num =simple_strtoul (devstr,NULL ,10 );(quoted diff) +0
-0b/configs/odroid-xu3_defconfig index
258b9781cc..d5c7cc7129100644configs/odroid-xu3_defconfig +1
-1@@ -2,7 +2,7 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_SYS_TEXT_BASE=0x43E00000 CONFIG_ARCH_EXYNOS5=y -CONFIG_IDENT_STRING=" for ODROID-XU3/XU4/HC1" +CONFIG_IDENT_STRING=" for ODROID-XU3/XU4/HC1/HC2" CONFIG_DISTRO_DEFAULTS=y CONFIG_NR_DRAM_BANKS=8 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set(quoted diff) +0
-0
b/include/samsung/exynos5-dt-types.hindex8e11af30d1..8fe08fe211100644 ---a/include/samsung/exynos5-dt-types.h
+++b/include/samsung/exynos5-dt-types.hinclude/samsung/exynos5-dt-types.h +2
-1@@ -9,6 +9,7 @@ enum {EXYNOS5_BOARD_ODROID_XU3_REV02 ,EXYNOS5_BOARD_ODROID_XU4_REV01 ,EXYNOS5_BOARD_ODROID_HC1_REV01 , +EXYNOS5_BOARD_ODROID_HC2_REV01 ,EXYNOS5_BOARD_ODROID_UNKNOWN , EXYNOS5_BOARD_COUNT,@@ -25,5 +26,6 @@ bool board_is_generic(void);bool board_is_odroidxu3 (void );bool board_is_odroidxu4 (void );bool board_is_odroidhc1 (void ); +bool board_is_odroidhc2 (void );#endif --
Quoted 3 lines
2.17.1
Best regards,
Lukasz Majewski
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de -------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20181015/999024c1/attachment.sig>
PATCH 1/1 ARM: Samsung: Add Exynos5422-based Odroid HC2 support
Dear Dirk Meul,
Quoted 15 lines · Lukasz Majewski
Hi Dirk,
Quoted 13 lines
Odroid HC2 board is based on Odroid XU4 board, like the Odroid HC1.
The linux kernel does not provide a hc2 DTB so the hc1 DTB is also used for the Odroid HC2.
Signed-off-by Dirk Meul <[email protected]>--- board/samsung/common/exynos5-dt-types.c | 16 +++++++++++++--- board/samsung/common/exynos5-dt.c | 4 ++-- configs/odroid-xu3_defconfig | 2 +- include/samsung/exynos5-dt-types.h | 2 ++ 4 files changed, 18 insertions(+), 6 deletions(-)
I failed to apply your patch.
Could you please check and resend?
checking file board/samsung/common/exynos5-dt-types.c Hunk #2 FAILED at 40.
Hunk #3 succeeded at 145 with fuzz 1.
1 out of 3 hunks FAILED
checking file board/samsung/common/exynos5-dt.c Hunk #1 FAILED at 179.
Hunk #2 FAILED at 192.
2 out of 2 hunks FAILED
checking file configs/odroid-xu3_defconfig checking file include/samsung/exynos5-dt-types.h Hunk #1 FAILED at 9.
1 out of 2 hunks FAILED
Thanks,
Minkyu Kang.
PATCH 1/1 ARM: Samsung: Add Exynos5422-based Odroid HC2 support
Odroid HC2 board is based on Odroid XU4 board, like the Odroid HC1.
The linux kernel does not provide a hc2 DTB so the hc1 DTB is also used for the Odroid HC2.
--- board/samsung/common/exynos5-dt-types.c | 16 +++++++++++++--- board/samsung/common/exynos5-dt.c | 4 ++-- configs/odroid-xu3_defconfig | 2 +- include/samsung/exynos5-dt-types.h | 2 ++ 4 files changed, 18 insertions(+), 6 deletions(-)
board/samsung/common/exynos5-dt-types.c +13 -3
@@ -24,14 +24,15 @@ static const struct udevice_id board_ids[] = { };/** -* Odroix XU3/XU4/HC1 board revisions (from HC1_MAIN_REV0.1_20170630.pdf): +* Odroix XU3/XU4/HC1/HC2 board revisions (from HC1+_HC2_MAIN_REV0.1_20171017.pdf): * Rev ADCmax Board * 0.1 0 XU3 0.1 * 0.2 372 XU3 0.2 | XU3L - no DISPLAYPORT (probe I2C0:0x40 / INA231) * 0.3 1280 XU4 0.1 * 0.4 739 XU4 0.2 * 0.5 1016 XU4+Air0.1 (Passive cooling) -* 0.6 1308 XU4S 0.1 (HC1) +* 0.6 1309 XU4-HC1 0.1 +* 0.7 1470 XU4-HC1+ 0.1 (HC2) * Use +1% for ADC value tolerance in the array below, the code loops until * the measured ADC value is lower than then ADCmax from the array. */
@@ -39,7 +40,8 @@ struct odroid_rev_info odroid_info[] = { { EXYNOS5_BOARD_ODROID_XU3_REV01, 1, 10, "xu3" }, { EXYNOS5_BOARD_ODROID_XU3_REV02, 2, 375, "xu3" }, { EXYNOS5_BOARD_ODROID_XU4_REV01, 1, 1293, "xu4" }, - { EXYNOS5_BOARD_ODROID_HC1_REV01, 1, 1321, "hc1" }, + { EXYNOS5_BOARD_ODROID_HC1_REV01, 1, 1322, "hc1" }, + { EXYNOS5_BOARD_ODROID_HC2_REV01, 1, 1484, "hc1" }, { EXYNOS5_BOARD_ODROID_UNKNOWN, 0, 4095, "unknown" }, };
@@ -144,6 +146,14 @@ bool board_is_odroidhc1(void)return false; } +bool board_is_odroidhc2 (void ) +{ +if (gd->board_type ==EXYNOS5_BOARD_ODROID_HC2_REV01 ) +return true; + +return false; +} +bool board_is_generic (void ) {if (gd->board_type ==EXYNOS5_BOARD_GENERIC )
board/samsung/common/exynos5-dt.c +2 -2
@@ -179,7 +179,7 @@ char *get_dfu_alt_system(char *interface, char *devstr) {char *info ="Not supported!" ; -if (board_is_odroidxu4 () ||board_is_odroidhc1 ()) +if (board_is_odroidxu4 () ||board_is_odroidhc1 () ||board_is_odroidhc2 ())return info;return env_get ("dfu_alt_system" );
@@ -192,7 +192,7 @@ char *get_dfu_alt_boot(char *interface, char *devstr)char *alt_boot;int dev_num; -if (board_is_odroidxu4 () ||board_is_odroidhc1 ()) +if (board_is_odroidxu4 () ||board_is_odroidhc1 () ||board_is_odroidhc2 ())return info; dev_num =simple_strtoul (devstr,NULL ,10 );
configs/odroid-xu3_defconfig +1 -1
@@ -2,7 +2,7 @@ CONFIG_ARM=y CONFIG_ARCH_EXYNOS=y CONFIG_SYS_TEXT_BASE=0x43E00000 CONFIG_ARCH_EXYNOS5=y -CONFIG_IDENT_STRING=" for ODROID-XU3/XU4/HC1" +CONFIG_IDENT_STRING=" for ODROID-XU3/XU4/HC1/HC2" CONFIG_DISTRO_DEFAULTS=y CONFIG_NR_DRAM_BANKS=8 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
include/samsung/exynos5-dt-types.h +2 -0
@@ -9,6 +9,7 @@ enum {EXYNOS5_BOARD_ODROID_XU3_REV02 ,EXYNOS5_BOARD_ODROID_XU4_REV01 ,EXYNOS5_BOARD_ODROID_HC1_REV01 , +EXYNOS5_BOARD_ODROID_HC2_REV01 ,EXYNOS5_BOARD_ODROID_UNKNOWN , EXYNOS5_BOARD_COUNT,
@@ -25,5 +26,6 @@ bool board_is_generic(void);bool board_is_odroidxu3 (void );bool board_is_odroidxu4 (void );bool board_is_odroidhc1 (void ); +bool board_is_odroidhc2 (void );#endif
Signature · 1 line
2.17.1
PATCH 1/1 ARM: Samsung: Add Exynos5422-based Odroid HC2 support
Dear Dirk Meul,
Quoted 5 lines · Dirk Meul
Odroid HC2 board is based on Odroid XU4 board, like the Odroid HC1.
The linux kernel does not provide a hc2 DTB so the hc1 DTB is also used for the Odroid HC2.
Quoted 8 lines
Signed-off-by Dirk Meul <[email protected]>--- board/samsung/common/exynos5-dt-types.c | 16 +++++++++++++--- board/samsung/common/exynos5-dt.c | 4 ++-- configs/odroid-xu3_defconfig | 2 +- include/samsung/exynos5-dt-types.h | 2 ++ 4 files changed, 18 insertions(+), 6 deletions(-)
Please send a v2 patch.
Thanks,
Minkyu Kang.