[U-Boot] [PATCH RESEND 3/3] arm: Added support for jadecpu board based on Jade SoC
Jean-Christophe PLAGNIOL-VILLARD
plagnioj at jcrosoft.com
Sun Jul 12 17:50:00 CEST 2009
On 08:43 Thu 09 Jul , Matthias Weisser wrote:
> Hello Jean-Christophe
>
> >> +int board_init(void)
> >> +{
> >> + /* arch number of Versatile Board */
> >> + gd->bd->bi_arch_number = 0 /*MACH_TYPE_GSJADECPU*/;
> > nack
>
> How to get a arch number? As I don't use Linux on that board
> I don't think I need one. What is the right way to handle
> such a situation? Dont't set bi_arch_number at all?
you have no plan to support linux?
if not, just do not add it and disable linux boot support
btw please put a comment in the config about it
>
> >> +#define CCNT_BASE 0xfff42000
> > please move define to proper header
> >> +#define CDEBUG1 0xec
> >> +
> >> +#define DDR2C_BASE 0xf3000000
> >> +#define DRIC 0x00
> >> +#define DRIC1 0x02
> >> +#define DRIC2 0x04
> >> +#define DRCA 0x06
> >> +#define DRCM 0x08
> >> +#define DRCST1 0x0a
> >> +#define DRCST2 0x0c
> >> +#define DRCR 0x0e
> >> +#define DRCF 0x20
> >> +#define DRASR 0x30
> >> +#define DRIMS 0x50
> >> +#define DROS 0x60
> >> +#define DRIBSLI 0x62
> >> +#define DRIBSODT1 0x64
> >> +#define DRIBSOCD 0x66
> >> +#define DRIBSOCD2 0x68
> >> +#define DROABA 0x70
> >> +#define DROBV 0x80
> >> +#define DROBS 0x84
> >> +#define DROBSR1 0x86
> >> +#define DROBSR2 0x88
> >> +#define DROBSR3 0x8a
> >> +#define DROBSR4 0x8c
> >> +#define DRIMR1 0x90
> >> +#define DRIMR2 0x92
> >> +#define DRIMR3 0x94
> >> +#define DRIMR4 0x96
> >> +#define DROISR1 0x98
> >> +#define DROISR2 0x9a
> > what is this define?
>
> I will check this and move the needed ones to jade.h
>
> >> +
> >> + .macro wait, count
> >> + mov r4, #\count
> >> +3:
> >> + subs r4, r4, #0x1
> >> + bne 3b
> >> +
> >> + .endm
> > please use include/asm-arm/macro.h
>
> I don't have this file here. Is it currently included in the
> master branch of u-boot?
yes
>
> >> +/*
> >> + * Reset CPU by writing SWRSTREQ to CRSR-register
> >> + */
> >> +.globl reset_cpu
> >> +reset_cpu:
> >> + ldr r0, =0xfffe7000 /* CRG Base address */
> >> + ldr r2, =0x00000002 /* SWRSTREQ */
> >> + str r2, [r0, #0x0c]
> >> +
> >> +_loop_forever:
> >> + b _loop_forever
> > is it board or soc specific reset?
>
> Reset is soc specific. I will move it to reset.c in the soc dir.
> Right?
yes please
>
> > this ram init is board or soc specific?
>
> RAM init is board specific as the soc could use other RAM
> configurations on other boards. So I think it should stay here.
>
> >> +#define CONFIG_SYS_HZ 1000
> >> +#define CONFIG_JADE_IOCLK (41500000)
> >> +#define CONFIG_SYS_TIMERBASE 0xfffe0000
> > I guess it's soc specific so please move it to proper header
>
> For the timer base, yes.
>
> >> +#define VIDEO_KBD_INIT_FCT 0
> >> +#define VIDEO_TSTC_FCT serial_tstc
> >> +#define VIDEO_GETC_FCT serial_getc
> > ??
> > why?
>
> Well, copy + paste from other board. Even if video is stdout/stdin
> serial port is used for input. Better way would be...?
please use device_t in this case
and set via preboot the correct stdout/stderr
you can also consider to add iomux support so you can use both at the sametime
Best Regards,
J.
More information about the U-Boot
mailing list