Message ID | 1423260410-9290-11-git-send-email-andreas.devel@googlemail.com |
---|---|
State | Accepted, archived |
Delegated to: | Andreas Bießmann |
Headers | show |
Hi Andreas, On 6 February 2015 at 15:06, Andreas Bießmann <andreas.devel@googlemail.com> wrote: > Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> > --- > This version still has the mmu_init_r() in common/board_r. Removing this now is > not that easy ... I'd love to get it in as is and change it later to the > board_init_f_r() sequence. > > Changes in v3: > - remove unnecessary stack implementation for avr32 > - fix bdinfo output > > Changes in v2: > - remove bootparams allocation, provide as extra patch > - use the else path in setup_mon_len() > - provide arch_reserve_stacks() for avr32 > - use the newly introduced dram_init() > > Changes in v1: > - add timer_init in board_r > - remove extern declaration of mmu_init_r() > > arch/avr32/config.mk | 3 +++ > arch/avr32/cpu/u-boot.lds | 2 ++ > arch/avr32/include/asm/config.h | 1 + > arch/avr32/include/asm/u-boot.h | 7 +++++++ > arch/avr32/lib/Makefile | 2 ++ > arch/avr32/lib/interrupts.c | 5 +++++ > common/board_f.c | 2 +- > common/board_r.c | 13 ++++++++++--- > common/cmd_bdinfo.c | 4 ++-- > include/asm-generic/u-boot.h | 4 ++++ > 10 files changed, 37 insertions(+), 6 deletions(-) > > diff --git a/arch/avr32/config.mk b/arch/avr32/config.mk > index 469185e..8252f59 100644 > --- a/arch/avr32/config.mk > +++ b/arch/avr32/config.mk > @@ -9,6 +9,9 @@ ifeq ($(CROSS_COMPILE),) > CROSS_COMPILE := avr32-linux- > endif > > +# avr32 has generic board support > +__HAVE_ARCH_GENERIC_BOARD := y > + > CONFIG_STANDALONE_LOAD_ADDR ?= 0x00000000 > > PLATFORM_RELFLAGS += -ffixed-r5 -fPIC -mno-init-got -mrelax > diff --git a/arch/avr32/cpu/u-boot.lds b/arch/avr32/cpu/u-boot.lds > index cb29a22..b0180e3 100644 > --- a/arch/avr32/cpu/u-boot.lds > +++ b/arch/avr32/cpu/u-boot.lds > @@ -48,9 +48,11 @@ SECTIONS > _edata = .; > > .bss (NOLOAD) : { > + __bss_start = .; > *(.bss) > *(.bss.*) > } > . = ALIGN(8); > __bss_end = .; > + __init_end = .; > } > diff --git a/arch/avr32/include/asm/config.h b/arch/avr32/include/asm/config.h > index 63056a4..529fe22 100644 > --- a/arch/avr32/include/asm/config.h > +++ b/arch/avr32/include/asm/config.h > @@ -8,5 +8,6 @@ > #define _ASM_CONFIG_H_ > > #define CONFIG_NEEDS_MANUAL_RELOC > +#define CONFIG_SYS_GENERIC_GLOBAL_DATA > > #endif > diff --git a/arch/avr32/include/asm/u-boot.h b/arch/avr32/include/asm/u-boot.h > index 232350e..8b047ec 100644 > --- a/arch/avr32/include/asm/u-boot.h > +++ b/arch/avr32/include/asm/u-boot.h > @@ -6,6 +6,11 @@ > #ifndef __ASM_U_BOOT_H__ > #define __ASM_U_BOOT_H__ 1 > > +#ifdef CONFIG_SYS_GENERIC_BOARD > +/* Use the generic board which requires a unified bd_info */ > +#include <asm-generic/u-boot.h> > +#else > + > typedef struct bd_info { > unsigned char bi_phy_id[4]; > unsigned long bi_board_number; > @@ -22,6 +27,8 @@ typedef struct bd_info { > #define bi_memstart bi_dram[0].start > #define bi_memsize bi_dram[0].size > > +#endif > + > /* For image.h:image_check_target_arch() */ > #define IH_ARCH_DEFAULT IH_ARCH_AVR32 > > diff --git a/arch/avr32/lib/Makefile b/arch/avr32/lib/Makefile > index 5f2d97b..6750913 100644 > --- a/arch/avr32/lib/Makefile > +++ b/arch/avr32/lib/Makefile > @@ -8,7 +8,9 @@ > # > > obj-y += memset.o > +ifndef CONFIG_SYS_GENERIC_BOARD > obj-y += board.o > +endif > obj-$(CONFIG_CMD_BOOTM) += bootm.o > obj-y += interrupts.o > obj-y += dram_init.o > diff --git a/arch/avr32/lib/interrupts.c b/arch/avr32/lib/interrupts.c > index bacb2d1..5f3a49e 100644 > --- a/arch/avr32/lib/interrupts.c > +++ b/arch/avr32/lib/interrupts.c > @@ -7,6 +7,11 @@ > > #include <asm/sysreg.h> > > +int interrupt_init(void) > +{ > + return 0; > +} > + > void enable_interrupts(void) > { > asm volatile("csrf %0" : : "n"(SYSREG_GM_OFFSET)); > diff --git a/common/board_f.c b/common/board_f.c > index b5e1071..afa3c02 100644 > --- a/common/board_f.c > +++ b/common/board_f.c > @@ -883,7 +883,7 @@ static init_fnc_t init_sequence_f[] = { > #endif > announce_dram_init, > /* TODO: unify all these dram functions? */ > -#if defined(CONFIG_ARM) || defined(CONFIG_X86) > +#if defined(CONFIG_ARM) || defined(CONFIG_X86) || defined(CONFIG_AVR32) > dram_init, /* configure available RAM banks */ > #endif > #if defined(CONFIG_MIPS) || defined(CONFIG_PPC) > diff --git a/common/board_r.c b/common/board_r.c > index 8e1e9e0..550d863 100644 > --- a/common/board_r.c > +++ b/common/board_r.c > @@ -55,6 +55,9 @@ > #include <dm/root.h> > #include <linux/compiler.h> > #include <linux/err.h> > +#ifdef CONFIG_AVR32 > +#include <asm/arch/mmu.h> > +#endif > > DECLARE_GLOBAL_DATA_PTR; > > @@ -498,7 +501,7 @@ static int initr_api(void) > #endif > > /* enable exceptions */ > -#ifdef CONFIG_ARM > +#if defined(CONFIG_ARM) || defined(CONFIG_AVR32) > static int initr_enable_interrupts(void) > { > enable_interrupts(); > @@ -825,10 +828,10 @@ init_fnc_t init_sequence_r[] = { > initr_kgdb, > #endif > interrupt_init, > -#if defined(CONFIG_ARM) > +#if defined(CONFIG_ARM) || defined(CONFIG_AVR32) > initr_enable_interrupts, > #endif > -#ifdef CONFIG_X86 > +#if defined(CONFIG_X86) || defined(CONFIG_AVR32) > timer_init, /* initialize timer */ > #endif > #if defined(CONFIG_STATUS_LED) && defined(STATUS_LED_BOOT) > @@ -893,6 +896,10 @@ void board_init_r(gd_t *new_gd, ulong dest_addr) > int i; > #endif > > +#ifdef CONFIG_AVR32 > + mmu_init_r(dest_addr); > +#endif > + > #if !defined(CONFIG_X86) && !defined(CONFIG_ARM) && !defined(CONFIG_ARM64) > gd = new_gd; > #endif > diff --git a/common/cmd_bdinfo.c b/common/cmd_bdinfo.c > index e6d8a7a..999d026 100644 > --- a/common/cmd_bdinfo.c > +++ b/common/cmd_bdinfo.c > @@ -333,8 +333,8 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) > bd_t *bd = gd->bd; > > print_num("boot_params", (ulong)bd->bi_boot_params); > - print_num("memstart", (ulong)bd->bi_memstart); > - print_lnum("memsize", (u64)bd->bi_memsize); > + print_num("memstart", (ulong)bd->bi_dram[0].start); > + print_lnum("memsize", (u64)bd->bi_dram[0].size); Can you explain this change please? I'm not sure what is happening here. > print_num("flashstart", (ulong)bd->bi_flashstart); > print_num("flashsize", (ulong)bd->bi_flashsize); > print_num("flashoffset", (ulong)bd->bi_flashoffset); > diff --git a/include/asm-generic/u-boot.h b/include/asm-generic/u-boot.h > index aef39d7..a63a87a 100644 > --- a/include/asm-generic/u-boot.h > +++ b/include/asm-generic/u-boot.h > @@ -32,6 +32,10 @@ typedef struct bd_info { > unsigned long bi_flashoffset; /* reserved area for startup monitor */ > unsigned long bi_sramstart; /* start of SRAM memory */ > unsigned long bi_sramsize; /* size of SRAM memory */ > +#ifdef CONFIG_AVR32 > + unsigned char bi_phy_id[4]; /* PHY address for ATAG_ETHERNET */ > + unsigned long bi_board_number;/* ATAG_BOARDINFO */ > +#endif > #ifdef CONFIG_ARM > unsigned long bi_arm_freq; /* arm frequency */ > unsigned long bi_dsp_freq; /* dsp core frequency */ > -- > 1.7.10.4 > Regards, Simon
Hi Simon, On 07.02.15 01:28, Simon Glass wrote: > On 6 February 2015 at 15:06, Andreas Bießmann > <andreas.devel@googlemail.com> wrote: >> Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> >> --- >> This version still has the mmu_init_r() in common/board_r. Removing this now is >> not that easy ... I'd love to get it in as is and change it later to the >> board_init_f_r() sequence. >> >> Changes in v3: >> - remove unnecessary stack implementation for avr32 >> - fix bdinfo output >> >> Changes in v2: >> - remove bootparams allocation, provide as extra patch >> - use the else path in setup_mon_len() >> - provide arch_reserve_stacks() for avr32 >> - use the newly introduced dram_init() >> >> Changes in v1: >> - add timer_init in board_r >> - remove extern declaration of mmu_init_r() >> >> arch/avr32/config.mk | 3 +++ >> arch/avr32/cpu/u-boot.lds | 2 ++ >> arch/avr32/include/asm/config.h | 1 + >> arch/avr32/include/asm/u-boot.h | 7 +++++++ >> arch/avr32/lib/Makefile | 2 ++ >> arch/avr32/lib/interrupts.c | 5 +++++ >> common/board_f.c | 2 +- >> common/board_r.c | 13 ++++++++++--- >> common/cmd_bdinfo.c | 4 ++-- >> include/asm-generic/u-boot.h | 4 ++++ >> 10 files changed, 37 insertions(+), 6 deletions(-) >> diff --git a/common/cmd_bdinfo.c b/common/cmd_bdinfo.c >> index e6d8a7a..999d026 100644 >> --- a/common/cmd_bdinfo.c >> +++ b/common/cmd_bdinfo.c >> @@ -333,8 +333,8 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) >> bd_t *bd = gd->bd; >> >> print_num("boot_params", (ulong)bd->bi_boot_params); >> - print_num("memstart", (ulong)bd->bi_memstart); >> - print_lnum("memsize", (u64)bd->bi_memsize); >> + print_num("memstart", (ulong)bd->bi_dram[0].start); >> + print_lnum("memsize", (u64)bd->bi_dram[0].size); > > Can you explain this change please? I'm not sure what is happening here. avr32 never had bd_t.bi_mem(start|size) members, they where always defined to bd_t.bi_dram[0].(start|size). Please have a look at arch/avr32/include/asm/u-boot.h. When converting to generic board I also have to use the generic bd_t (which is a mess). Since the current generic board implementation do not set both bi_mem(start|size) for all architectures I decided to go with bi_dram[0].(start|size), this will also work with the other boards not converted yet. To use just the first entry in bi_dram[] and do not loop over is ok on avr32 since the only SoC available there has just one SDRAM controller. If you're Ok with this change I would apply this series with one fix for 'common/board_f: factor out reserve_stacks' and maybe a more descriptive commit message for 'common/board_r: allocate bootparams' mid of next week to avr32/master and send a PR. AFAIR the microblaze generic board conversion depends on at least one patch of this series. Best regards Andreas Bießmann
Hi Andreas, On 8 February 2015 at 14:21, Andreas Bießmann <andreas.devel@googlemail.com> wrote: > > Hi Simon, > > On 07.02.15 01:28, Simon Glass wrote: > > On 6 February 2015 at 15:06, Andreas Bießmann > > <andreas.devel@googlemail.com> wrote: > >> Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> > >> --- > >> This version still has the mmu_init_r() in common/board_r. Removing this now is > >> not that easy ... I'd love to get it in as is and change it later to the > >> board_init_f_r() sequence. > >> > >> Changes in v3: > >> - remove unnecessary stack implementation for avr32 > >> - fix bdinfo output > >> > >> Changes in v2: > >> - remove bootparams allocation, provide as extra patch > >> - use the else path in setup_mon_len() > >> - provide arch_reserve_stacks() for avr32 > >> - use the newly introduced dram_init() > >> > >> Changes in v1: > >> - add timer_init in board_r > >> - remove extern declaration of mmu_init_r() > >> > >> arch/avr32/config.mk | 3 +++ > >> arch/avr32/cpu/u-boot.lds | 2 ++ > >> arch/avr32/include/asm/config.h | 1 + > >> arch/avr32/include/asm/u-boot.h | 7 +++++++ > >> arch/avr32/lib/Makefile | 2 ++ > >> arch/avr32/lib/interrupts.c | 5 +++++ > >> common/board_f.c | 2 +- > >> common/board_r.c | 13 ++++++++++--- > >> common/cmd_bdinfo.c | 4 ++-- > >> include/asm-generic/u-boot.h | 4 ++++ > >> 10 files changed, 37 insertions(+), 6 deletions(-) > > >> diff --git a/common/cmd_bdinfo.c b/common/cmd_bdinfo.c > >> index e6d8a7a..999d026 100644 > >> --- a/common/cmd_bdinfo.c > >> +++ b/common/cmd_bdinfo.c > >> @@ -333,8 +333,8 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) > >> bd_t *bd = gd->bd; > >> > >> print_num("boot_params", (ulong)bd->bi_boot_params); > >> - print_num("memstart", (ulong)bd->bi_memstart); > >> - print_lnum("memsize", (u64)bd->bi_memsize); > >> + print_num("memstart", (ulong)bd->bi_dram[0].start); > >> + print_lnum("memsize", (u64)bd->bi_dram[0].size); > > > > Can you explain this change please? I'm not sure what is happening here. > > avr32 never had bd_t.bi_mem(start|size) members, they where always > defined to bd_t.bi_dram[0].(start|size). Please have a look at > arch/avr32/include/asm/u-boot.h. > > When converting to generic board I also have to use the generic bd_t > (which is a mess). Since the current generic board implementation do not > set both bi_mem(start|size) for all architectures I decided to go with > bi_dram[0].(start|size), this will also work with the other boards not > converted yet. To use just the first entry in bi_dram[] and do not loop > over is ok on avr32 since the only SoC available there has just one > SDRAM controller. OK I see. I didn't realise it was avr32-only code. > > > If you're Ok with this change I would apply this series with one fix for > 'common/board_f: factor out reserve_stacks' and maybe a more descriptive > commit message for 'common/board_r: allocate bootparams' mid of next > week to avr32/master and send a PR. AFAIR the microblaze generic board > conversion depends on at least one patch of this series. Sounds good to me. Regards, Simon
Dear Andreas Devel, Andreas Devel <andreas.devel@googlemail.com> writes: >Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> >--- >This version still has the mmu_init_r() in common/board_r. Removing this now is >not that easy ... I'd love to get it in as is and change it later to the >board_init_f_r() sequence. > >Changes in v3: >- remove unnecessary stack implementation for avr32 >- fix bdinfo output > >Changes in v2: >- remove bootparams allocation, provide as extra patch >- use the else path in setup_mon_len() >- provide arch_reserve_stacks() for avr32 >- use the newly introduced dram_init() > >Changes in v1: >- add timer_init in board_r >- remove extern declaration of mmu_init_r() > > arch/avr32/config.mk | 3 +++ > arch/avr32/cpu/u-boot.lds | 2 ++ > arch/avr32/include/asm/config.h | 1 + > arch/avr32/include/asm/u-boot.h | 7 +++++++ > arch/avr32/lib/Makefile | 2 ++ > arch/avr32/lib/interrupts.c | 5 +++++ > common/board_f.c | 2 +- > common/board_r.c | 13 ++++++++++--- > common/cmd_bdinfo.c | 4 ++-- > include/asm-generic/u-boot.h | 4 ++++ > 10 files changed, 37 insertions(+), 6 deletions(-) applied to u-boot-avr32/master, thanks! Best regards, Andreas Bießmann
diff --git a/arch/avr32/config.mk b/arch/avr32/config.mk index 469185e..8252f59 100644 --- a/arch/avr32/config.mk +++ b/arch/avr32/config.mk @@ -9,6 +9,9 @@ ifeq ($(CROSS_COMPILE),) CROSS_COMPILE := avr32-linux- endif +# avr32 has generic board support +__HAVE_ARCH_GENERIC_BOARD := y + CONFIG_STANDALONE_LOAD_ADDR ?= 0x00000000 PLATFORM_RELFLAGS += -ffixed-r5 -fPIC -mno-init-got -mrelax diff --git a/arch/avr32/cpu/u-boot.lds b/arch/avr32/cpu/u-boot.lds index cb29a22..b0180e3 100644 --- a/arch/avr32/cpu/u-boot.lds +++ b/arch/avr32/cpu/u-boot.lds @@ -48,9 +48,11 @@ SECTIONS _edata = .; .bss (NOLOAD) : { + __bss_start = .; *(.bss) *(.bss.*) } . = ALIGN(8); __bss_end = .; + __init_end = .; } diff --git a/arch/avr32/include/asm/config.h b/arch/avr32/include/asm/config.h index 63056a4..529fe22 100644 --- a/arch/avr32/include/asm/config.h +++ b/arch/avr32/include/asm/config.h @@ -8,5 +8,6 @@ #define _ASM_CONFIG_H_ #define CONFIG_NEEDS_MANUAL_RELOC +#define CONFIG_SYS_GENERIC_GLOBAL_DATA #endif diff --git a/arch/avr32/include/asm/u-boot.h b/arch/avr32/include/asm/u-boot.h index 232350e..8b047ec 100644 --- a/arch/avr32/include/asm/u-boot.h +++ b/arch/avr32/include/asm/u-boot.h @@ -6,6 +6,11 @@ #ifndef __ASM_U_BOOT_H__ #define __ASM_U_BOOT_H__ 1 +#ifdef CONFIG_SYS_GENERIC_BOARD +/* Use the generic board which requires a unified bd_info */ +#include <asm-generic/u-boot.h> +#else + typedef struct bd_info { unsigned char bi_phy_id[4]; unsigned long bi_board_number; @@ -22,6 +27,8 @@ typedef struct bd_info { #define bi_memstart bi_dram[0].start #define bi_memsize bi_dram[0].size +#endif + /* For image.h:image_check_target_arch() */ #define IH_ARCH_DEFAULT IH_ARCH_AVR32 diff --git a/arch/avr32/lib/Makefile b/arch/avr32/lib/Makefile index 5f2d97b..6750913 100644 --- a/arch/avr32/lib/Makefile +++ b/arch/avr32/lib/Makefile @@ -8,7 +8,9 @@ # obj-y += memset.o +ifndef CONFIG_SYS_GENERIC_BOARD obj-y += board.o +endif obj-$(CONFIG_CMD_BOOTM) += bootm.o obj-y += interrupts.o obj-y += dram_init.o diff --git a/arch/avr32/lib/interrupts.c b/arch/avr32/lib/interrupts.c index bacb2d1..5f3a49e 100644 --- a/arch/avr32/lib/interrupts.c +++ b/arch/avr32/lib/interrupts.c @@ -7,6 +7,11 @@ #include <asm/sysreg.h> +int interrupt_init(void) +{ + return 0; +} + void enable_interrupts(void) { asm volatile("csrf %0" : : "n"(SYSREG_GM_OFFSET)); diff --git a/common/board_f.c b/common/board_f.c index b5e1071..afa3c02 100644 --- a/common/board_f.c +++ b/common/board_f.c @@ -883,7 +883,7 @@ static init_fnc_t init_sequence_f[] = { #endif announce_dram_init, /* TODO: unify all these dram functions? */ -#if defined(CONFIG_ARM) || defined(CONFIG_X86) +#if defined(CONFIG_ARM) || defined(CONFIG_X86) || defined(CONFIG_AVR32) dram_init, /* configure available RAM banks */ #endif #if defined(CONFIG_MIPS) || defined(CONFIG_PPC) diff --git a/common/board_r.c b/common/board_r.c index 8e1e9e0..550d863 100644 --- a/common/board_r.c +++ b/common/board_r.c @@ -55,6 +55,9 @@ #include <dm/root.h> #include <linux/compiler.h> #include <linux/err.h> +#ifdef CONFIG_AVR32 +#include <asm/arch/mmu.h> +#endif DECLARE_GLOBAL_DATA_PTR; @@ -498,7 +501,7 @@ static int initr_api(void) #endif /* enable exceptions */ -#ifdef CONFIG_ARM +#if defined(CONFIG_ARM) || defined(CONFIG_AVR32) static int initr_enable_interrupts(void) { enable_interrupts(); @@ -825,10 +828,10 @@ init_fnc_t init_sequence_r[] = { initr_kgdb, #endif interrupt_init, -#if defined(CONFIG_ARM) +#if defined(CONFIG_ARM) || defined(CONFIG_AVR32) initr_enable_interrupts, #endif -#ifdef CONFIG_X86 +#if defined(CONFIG_X86) || defined(CONFIG_AVR32) timer_init, /* initialize timer */ #endif #if defined(CONFIG_STATUS_LED) && defined(STATUS_LED_BOOT) @@ -893,6 +896,10 @@ void board_init_r(gd_t *new_gd, ulong dest_addr) int i; #endif +#ifdef CONFIG_AVR32 + mmu_init_r(dest_addr); +#endif + #if !defined(CONFIG_X86) && !defined(CONFIG_ARM) && !defined(CONFIG_ARM64) gd = new_gd; #endif diff --git a/common/cmd_bdinfo.c b/common/cmd_bdinfo.c index e6d8a7a..999d026 100644 --- a/common/cmd_bdinfo.c +++ b/common/cmd_bdinfo.c @@ -333,8 +333,8 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) bd_t *bd = gd->bd; print_num("boot_params", (ulong)bd->bi_boot_params); - print_num("memstart", (ulong)bd->bi_memstart); - print_lnum("memsize", (u64)bd->bi_memsize); + print_num("memstart", (ulong)bd->bi_dram[0].start); + print_lnum("memsize", (u64)bd->bi_dram[0].size); print_num("flashstart", (ulong)bd->bi_flashstart); print_num("flashsize", (ulong)bd->bi_flashsize); print_num("flashoffset", (ulong)bd->bi_flashoffset); diff --git a/include/asm-generic/u-boot.h b/include/asm-generic/u-boot.h index aef39d7..a63a87a 100644 --- a/include/asm-generic/u-boot.h +++ b/include/asm-generic/u-boot.h @@ -32,6 +32,10 @@ typedef struct bd_info { unsigned long bi_flashoffset; /* reserved area for startup monitor */ unsigned long bi_sramstart; /* start of SRAM memory */ unsigned long bi_sramsize; /* size of SRAM memory */ +#ifdef CONFIG_AVR32 + unsigned char bi_phy_id[4]; /* PHY address for ATAG_ETHERNET */ + unsigned long bi_board_number;/* ATAG_BOARDINFO */ +#endif #ifdef CONFIG_ARM unsigned long bi_arm_freq; /* arm frequency */ unsigned long bi_dsp_freq; /* dsp core frequency */
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> --- This version still has the mmu_init_r() in common/board_r. Removing this now is not that easy ... I'd love to get it in as is and change it later to the board_init_f_r() sequence. Changes in v3: - remove unnecessary stack implementation for avr32 - fix bdinfo output Changes in v2: - remove bootparams allocation, provide as extra patch - use the else path in setup_mon_len() - provide arch_reserve_stacks() for avr32 - use the newly introduced dram_init() Changes in v1: - add timer_init in board_r - remove extern declaration of mmu_init_r() arch/avr32/config.mk | 3 +++ arch/avr32/cpu/u-boot.lds | 2 ++ arch/avr32/include/asm/config.h | 1 + arch/avr32/include/asm/u-boot.h | 7 +++++++ arch/avr32/lib/Makefile | 2 ++ arch/avr32/lib/interrupts.c | 5 +++++ common/board_f.c | 2 +- common/board_r.c | 13 ++++++++++--- common/cmd_bdinfo.c | 4 ++-- include/asm-generic/u-boot.h | 4 ++++ 10 files changed, 37 insertions(+), 6 deletions(-)