[U-Boot] [PATCH] Add basic support for FriendlyARM MINI6410 development board

kasim ling kasimling at gmail.com
Wed Sep 8 02:04:16 CEST 2010


Thanks. I'll fix them and resubmit the patch

On Tuesday, September 7, 2010, Wolfgang Denk <wd at denx.de> wrote:
> Dear Alex Ling,
>
> In message <1283869706-18506-1-git-send-email-kasimling at gmail.com> you wrote:
>> This patch adds basic support for FriendlyARM MINI6410 development board (a Chinese clone of Samsung SMDK6410)
>
> Please restrict your line length to < 70 characters.
>
>
> General note: please rebase your code on top of Heiko's ARm rework
> patches (enable caches, add relocation). These will go in before your
> board support.
>
>> Signed-off-by: Alex Ling <kasimling at gmail.com>
>> ---
>>  MAINTAINERS                                |    4 +
>>  MAKEALL                                    |    1 +
>>  Makefile                                   |   14 ++
>>  board/samsung/mini6410/.gitignore          |    5 +
>>  board/samsung/mini6410/Makefile            |   57 +++++
>>  board/samsung/mini6410/config.mk           |   35 +++
>>  board/samsung/mini6410/lowlevel_init.S     |  310 ++++++++++++++++++++++++++++
>>  board/samsung/mini6410/mini6410.c          |   86 ++++++++
>>  board/samsung/mini6410/u-boot-nand.lds     |   62 ++++++
>>  include/configs/mini6410.h                 |  296 ++++++++++++++++++++++++++
>>  nand_spl/board/samsung/mini6410/Makefile   |  112 ++++++++++
>>  nand_spl/board/samsung/mini6410/config.mk  |   41 ++++
>>  nand_spl/board/samsung/mini6410/u-boot.lds |   61 ++++++
>>  13 files changed, 1084 insertions(+), 0 deletions(-)
>>  create mode 100644 board/samsung/mini6410/.gitignore
>>  create mode 100644 board/samsung/mini6410/Makefile
>>  create mode 100644 board/samsung/mini6410/config.mk
>>  create mode 100644 board/samsung/mini6410/lowlevel_init.S
>>  create mode 100644 board/samsung/mini6410/mini6410.c
>>  create mode 100644 board/samsung/mini6410/u-boot-nand.lds
>>  create mode 100644 include/configs/mini6410.h
>>  create mode 100644 nand_spl/board/samsung/mini6410/Makefile
>>  create mode 100644 nand_spl/board/samsung/mini6410/config.mk
>>  create mode 100644 nand_spl/board/samsung/mini6410/u-boot.lds
>>
>> diff --git a/MAINTAINERS b/MAINTAINERS
>> index 4b91b0f..e858c5c 100644
>> --- a/MAINTAINERS
>> +++ b/MAINTAINERS
>> @@ -815,6 +815,10 @@ Alex Z
>>       lart            SA1100
>>       dnp1110         SA1110
>>
>> +Alex Ling <kasimling at gmail.com>
>> +
>> +     MINI6410        ARM1176JZF-S (S3C6410)
>
> Please keep list sorted.
>
>> diff --git a/MAKEALL b/MAKEALL
>> index b34ae33..e3e3def 100755
>> --- a/MAKEALL
>> +++ b/MAKEALL
>> @@ -644,6 +644,7 @@ LIST_ARM11="                      \
>>       qong                    \
>>       smdk6400                \
>>       tnetv107x_evm           \
>> +     mini6410                \
>
> Please keep list sorted.
>
>> diff --git a/Makefile b/Makefile
>> index 4f1cb1b..200a365 100644
>> --- a/Makefile
>> +++ b/Makefile
>> @@ -2235,6 +2235,20 @@ smdk6400_config        :       unconfig
>>       @$(MKCONFIG) smdk6400 arm arm1176 smdk6400 samsung s3c64xx
>>       @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk
>>
>> +mini6410_noUSB_config   \
>> +mini6410_config :    unconfig
>> +     @mkdir -p $(obj)include $(obj)board/samsung/mini6410
>> +     @mkdir -p $(obj)nand_spl/board/samsung/mini6410
>> +     @echo "#define CONFIG_NAND_U_BOOT" > $(obj)include/config.h
>> +     @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk
>> +     @if [ -z "$(findstring mini6410_noUSB_config,$@)" ]; then                       \
>> +             echo "RAM_TEXT = 0x57e00000" >> $(obj)board/samsung/mini6410/config.tmp;\
>> +     else                                                                            \
>> +             echo "RAM_TEXT = 0xc7e00000" >> $(obj)board/samsung/mini6410/config.tmp;\
>> +     fi
>> +     @$(MKCONFIG) mini6410 arm arm1176 mini6410 samsung s3c64xx
>> +     @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk
>
> NAK. We don't allow such changes any more. Please see previous
> discussions about this topic and configure using boards.cfg instead.
>
>> diff --git a/board/samsung/mini6410/.gitignore b/board/samsung/mini6410/.gitignore
>> new file mode 100644
>> index 0000000..25ab492
>> --- /dev/null
>> +++ b/board/samsung/mini6410/.gitignore
>> @@ -0,0 +1,5 @@
>> +#
>> +# Generated files
>> +#
>> +
>> +/config.tmp
>
> Try to avoid such a file.
>
>> diff --git a/board/samsung/mini6410/Makefile b/board/samsung/mini6410/Makefile
>> new file mode 100644
>> index 0000000..ef86f48
>> --- /dev/null
>> +++ b/board/samsung/mini6410/Makefile
> ...
>> +LIB  = $(obj)lib$(BOARD).a
>> +
>> +COBJS-y      := mini6410.o
>
> There is no configuration doen here, so rename into plain COBJS.
>
>> diff --git a/board/samsung/mini6410/lowlevel_init.S b/board/samsung/mini6410/lowlevel_init.S
>> new file mode 100644
>> index 0000000..c00d0ab
> ...
>> + * 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
>> + */
>> +
>> +
>
> One blank line should be sufficient.
>
>> +#ifdef CONFIG_SERIAL1
>> +#define ELFIN_UART_CONSOLE_BASE (ELFIN_UART_BASE + ELFIN_UART0_OFFSET)
>> +#elif defined(CONFIG_SERIAL2)
>> +#define ELFIN_UART_CONSOLE_BASE (ELFIN_UART_BASE + ELFIN_UART1_OFFSET)
>> +#else
>> +#define ELFIN_UART_CONSOLE_BASE (ELFIN_UART_BASE + ELFIN_UART2_OFFSET)
>> +#endif
>
> These seem to be unused. Please remove dead code.
>
>> +     /*
>> +      * This was unconditional in original Samsung sources, but it doesn't
>> +      * seem to make much sense on S3C6400.
>> +      */
>> +#ifndef CONFIG_S3C6400
>
> So does this make sense on your board?  Please remove dead code.
>
> ...
>> diff --git a/board/samsung/mini6410/mini6410.c b/board/samsung/mini6410/mini6410.c
>> new file mode 100644
>> index 0000000..0db6f76
>> --- /dev/null
>> +++ b/board/samsung/mini6410/mini6410.c
> ...
>> +static inline void delay(unsigned long loops)
>> +{
>> +     __asm__ volatile ("1:\n" "subs %0, %1, #1\n"
>> +                       "bne 1b"
>> +                       : "=r" (loops) : "0" (loops));
>> +}
>
> This is probably NOT what you want to do.
>
>> +int board_init(void)
>> +{
>> +     DECLARE_GLOBAL_DATA_PTR;
>
> DECLARE_GLOBAL_DATA_PTR must be declared on file scope, not on
> function scope, or incorrect code may result.  Please fix globally.
>
>> diff --git a/include/configs/mini6410.h b/include/configs/mini6410.h
>> new file mode 100644
>> index 0000000..3995970
>> --- /dev/null
>> +++ b/include/configs/mini6410.h
> ...
>> +#define CONFIG_SYS_HUSH_PARSER                       /* use "hush" command parser    */
>
> Line too long. Please fix globally.
>
>> +#define CONFIG_CMD_CACHE
>> +#define CONFIG_CMD_REGINFO
>> +#define CONFIG_CMD_LOADS
>> +#define CONFIG_CMD_LOADB
>> +#define CONFIG_CMD_SAVEENV
>> +#define CONFIG_CMD_NAND
>> +#if defined(CONFIG_BOOT_ONENAND)
>> +#define CONFIG_CMD_ONENAND
>> +#endif
>> +#define CONFIG_CMD_PING
>> +#define CONFIG_CMD_ELF
>> +#define CONFIG_CMD_FAT
>> +#define CONFIG_CMD_EXT2
>
> This would be easier to read if the list was sorted.
>
>> +#define CONFIG_SYS_MEMTEST_START     CONFIG_SYS_SDRAM_BASE   /* memtest works on           */
>> +#define CONFIG_SYS_MEMTEST_END               (CONFIG_SYS_SDRAM_BASE + 0x7e00000) /* 126MB in DRAM */
>
> Have you really tested these settings?
>
>
>> +/*-----------------------------------------------------------------------
>> + * Stack sizes
>> + *
>> + * The stack sizes are set up in start.S using the settings below
>> + */
>
> Incorrect multiline comment style.
>
>> +/**********************************
>> + Support Clock Settings
>> + **********************************
>
> Ditto. Please fix globally.
>
>> +/*#define CONFIG_CLK_667_133_66*/
>> +#define CONFIG_CLK_533_133_66
>> +/*
>> +#define CONFIG_CLK_400_100_50
>> +#define CONFIG_CLK_400_133_66
>> +#define CONFIG_SYNC_MODE
>> +*/
>
> Please remove dead code.
>
>> +/* SMDK6400 has 2 banks of DRAM, but we use only one in U-Boot */
>
> Why?
>
>> +/* None of these are currently implemented. Left from the original Samsung
>> + * version for reference
>> +#define CONFIG_BOOT_NOR
>> +#define CONFIG_BOOT_MOVINAND
>> +#define CONFIG_BOOT_ONENAND
>> +*/
>
> Please remove dead code. Please fix globally.
>
>
> Best regards,
>
> Wolfgang Denk
>
> --
> DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
> 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
> Too many people are ready to carry the stool when the piano needs  to
> be moved.
>


More information about the U-Boot mailing list