[U-Boot] [PATCH] at91rm9200ek: add configure target for RAM boot

This patch also removes now unnecessary config.mk in board directory and make usage of new features in boards.cfg.
Signed-off-by: Andreas Bießmann andreas.devel@googlemail.com --- board/atmel/at91rm9200ek/config.mk | 2 -- boards.cfg | 3 ++- 2 files changed, 2 insertions(+), 3 deletions(-) delete mode 100644 board/atmel/at91rm9200ek/config.mk
diff --git a/board/atmel/at91rm9200ek/config.mk b/board/atmel/at91rm9200ek/config.mk deleted file mode 100644 index c7323fe..0000000 --- a/board/atmel/at91rm9200ek/config.mk +++ /dev/null @@ -1,2 +0,0 @@ -# currently only NOR flash booting is supported -CONFIG_SYS_TEXT_BASE = 0x10000000 diff --git a/boards.cfg b/boards.cfg index 6c2a667..82cc293 100644 --- a/boards.cfg +++ b/boards.cfg @@ -359,7 +359,8 @@ modnet50 arm arm720t lpc2292sodimm arm arm720t - - lpc2292 eb_cpux9k2 arm arm920t - BuS at91 at91rm9200dk arm arm920t - atmel at91rm9200 -at91rm9200ek arm arm920t - atmel at91 +at91rm9200ek arm arm920t at91rm9200ek atmel at91 at91rm9200ek:SYS_TEXT_BASE=0x10000000 +at91rm9200ek_ram arm arm920t at91rm9200ek atmel at91 at91rm9200ek:SKIP_LOWLEVEL_INIT,SYS_TEXT_BASE=0x21000000 sbc2410x arm arm920t - - s3c24x0 smdk2400 arm arm920t - samsung s3c24x0 smdk2410 arm arm920t - samsung s3c24x0

Dear =?UTF-8?q?Andreas=20Bie=C3=9Fmann?=,
In message 1288511791-92091-1-git-send-email-andreas.devel@googlemail.com you wrote: ... -at91rm9200ek arm arm920t - atmel at91 +at91rm9200ek arm arm920t at91rm9200ek atmel at91 at91rm9200ek:SYS_TEXT_BASE=0x10000000 +at91rm9200ek_ram arm arm920t at91rm9200ek atmel at91 at91rm9200ek:SKIP_LOWLEVEL_INIT,SYS_TEXT_BASE=0x21000000
No, pleaso don't. I did not remove all the scripting from Makefile to see the same complexity coming back to boards.cfg. Yes,we do similar things for the old boards, but that's only because I usually have no chance to actually test any conversions.
For new boards, please use a _simple_ buildoption, say:
+at91rm9200ek arm arm920t at91rm9200ek atmel at91 at91rm9200ek +at91rm9200ek_ram arm arm920t at91rm9200ek atmel at91 at91rm9200ek:RAMBOOT
Do the fine tuning in your board config file using some "#ifdef CONFIG_RAMBOOT" or similar.
Thanks.
Wolfgang Denk

This patch also removes now unnecessary config.mk in board directory and make usage of new features in boards.cfg.
Signed-off-by: Andreas Bießmann andreas.devel@googlemail.com --- changes since v1: - add MAKEALL target - move settings from boards.cfg to i/c/at91rm9200ek.h
MAKEALL | 1 + board/atmel/at91rm9200ek/config.mk | 2 -- boards.cfg | 3 ++- include/configs/at91rm9200ek.h | 14 ++++++++++++++ 4 files changed, 17 insertions(+), 3 deletions(-) delete mode 100644 board/atmel/at91rm9200ek/config.mk
diff --git a/MAKEALL b/MAKEALL index c54c6e8..818138e 100755 --- a/MAKEALL +++ b/MAKEALL @@ -438,6 +438,7 @@ LIST_at91=" \ at91cap9adk \ at91rm9200dk \ at91rm9200ek \ + at91rm9200ek_ram \ at91sam9260ek \ at91sam9261ek \ at91sam9263ek \ diff --git a/board/atmel/at91rm9200ek/config.mk b/board/atmel/at91rm9200ek/config.mk deleted file mode 100644 index c7323fe..0000000 --- a/board/atmel/at91rm9200ek/config.mk +++ /dev/null @@ -1,2 +0,0 @@ -# currently only NOR flash booting is supported -CONFIG_SYS_TEXT_BASE = 0x10000000 diff --git a/boards.cfg b/boards.cfg index 6c2a667..6f7dc54 100644 --- a/boards.cfg +++ b/boards.cfg @@ -359,7 +359,8 @@ modnet50 arm arm720t lpc2292sodimm arm arm720t - - lpc2292 eb_cpux9k2 arm arm920t - BuS at91 at91rm9200dk arm arm920t - atmel at91rm9200 -at91rm9200ek arm arm920t - atmel at91 +at91rm9200ek arm arm920t at91rm9200ek atmel at91 at91rm9200ek +at91rm9200ek_ram arm arm920t at91rm9200ek atmel at91 at91rm9200ek:RAMBOOT sbc2410x arm arm920t - - s3c24x0 smdk2400 arm arm920t - samsung s3c24x0 smdk2410 arm arm920t - samsung s3c24x0 diff --git a/include/configs/at91rm9200ek.h b/include/configs/at91rm9200ek.h index 14559f5..673abbc 100644 --- a/include/configs/at91rm9200ek.h +++ b/include/configs/at91rm9200ek.h @@ -33,6 +33,20 @@ #include <asm/sizes.h>
/* + * set some initial configurations depending on configure target + * + * at91rm9200ek_config -> boot from 0x0 in NOR Flash at CS0 + * at91rm9200ek_ram_config -> continue booting from 0x21000000 in RAM; lowlevel + * initialisation was done by preloader + */ +#ifdef CONFIG_RAMBOOT +#define CONFIG_SKIP_LOWLEVEL_INIT +#define CONFIG_SYS_TEXT_BASE 0x21000000 +#else +#define CONFIG_SYS_TEXT_BASE 0x10000000 +#endif + +/* * AT91C_XTAL_CLOCK is the frequency of external xtal in hertz * AT91C_MAIN_CLOCK is the frequency of PLLA output * AT91C_MASTER_CLOCK is the peripherial clock

Dear =?UTF-8?q?Andreas=20Bie=C3=9Fmann?=,
In message 1288518476-62197-1-git-send-email-andreas.devel@googlemail.com you wrote:
This patch also removes now unnecessary config.mk in board directory and make usage of new features in boards.cfg.
Signed-off-by: Andreas BieÃmann andreas.devel@googlemail.com
changes since v1:
- add MAKEALL target
- move settings from boards.cfg to i/c/at91rm9200ek.h
MAKEALL | 1 + board/atmel/at91rm9200ek/config.mk | 2 -- boards.cfg | 3 ++- include/configs/at91rm9200ek.h | 14 ++++++++++++++ 4 files changed, 17 insertions(+), 3 deletions(-) delete mode 100644 board/atmel/at91rm9200ek/config.mk
diff --git a/MAKEALL b/MAKEALL index c54c6e8..818138e 100755 --- a/MAKEALL +++ b/MAKEALL @@ -438,6 +438,7 @@ LIST_at91=" \ at91cap9adk \ at91rm9200dk \ at91rm9200ek \
- at91rm9200ek_ram \ at91sam9260ek \ at91sam9261ek \ at91sam9263ek \
Oops. Sorry for not spotting this before. Don;t do that. all boards listed in boards.cfg auto automatically selcted and should be _removed_ from the MAKEALL lists. Instead, add an entry "$(boards_by_cpu at91)" like we have with other processor families.
Best regards,
Wolfgang Denk

This patch also removes now unnecessary config.mk in board directory and make usage of new features in boards.cfg.
Signed-off-by: Andreas Bießmann andreas.devel@googlemail.com --- changes since v1: - add MAKEALL target - move settings from boards.cfg to i/c/at91rm9200ek.h changes since v2: - remove MAKEALL stuff from this patch
board/atmel/at91rm9200ek/config.mk | 2 -- boards.cfg | 3 ++- include/configs/at91rm9200ek.h | 14 ++++++++++++++ 3 files changed, 16 insertions(+), 3 deletions(-) delete mode 100644 board/atmel/at91rm9200ek/config.mk
diff --git a/board/atmel/at91rm9200ek/config.mk b/board/atmel/at91rm9200ek/config.mk deleted file mode 100644 index c7323fe..0000000 --- a/board/atmel/at91rm9200ek/config.mk +++ /dev/null @@ -1,2 +0,0 @@ -# currently only NOR flash booting is supported -CONFIG_SYS_TEXT_BASE = 0x10000000 diff --git a/boards.cfg b/boards.cfg index 6c2a667..6f7dc54 100644 --- a/boards.cfg +++ b/boards.cfg @@ -359,7 +359,8 @@ modnet50 arm arm720t lpc2292sodimm arm arm720t - - lpc2292 eb_cpux9k2 arm arm920t - BuS at91 at91rm9200dk arm arm920t - atmel at91rm9200 -at91rm9200ek arm arm920t - atmel at91 +at91rm9200ek arm arm920t at91rm9200ek atmel at91 at91rm9200ek +at91rm9200ek_ram arm arm920t at91rm9200ek atmel at91 at91rm9200ek:RAMBOOT sbc2410x arm arm920t - - s3c24x0 smdk2400 arm arm920t - samsung s3c24x0 smdk2410 arm arm920t - samsung s3c24x0 diff --git a/include/configs/at91rm9200ek.h b/include/configs/at91rm9200ek.h index 14559f5..673abbc 100644 --- a/include/configs/at91rm9200ek.h +++ b/include/configs/at91rm9200ek.h @@ -33,6 +33,20 @@ #include <asm/sizes.h>
/* + * set some initial configurations depending on configure target + * + * at91rm9200ek_config -> boot from 0x0 in NOR Flash at CS0 + * at91rm9200ek_ram_config -> continue booting from 0x21000000 in RAM; lowlevel + * initialisation was done by preloader + */ +#ifdef CONFIG_RAMBOOT +#define CONFIG_SKIP_LOWLEVEL_INIT +#define CONFIG_SYS_TEXT_BASE 0x21000000 +#else +#define CONFIG_SYS_TEXT_BASE 0x10000000 +#endif + +/* * AT91C_XTAL_CLOCK is the frequency of external xtal in hertz * AT91C_MAIN_CLOCK is the frequency of PLLA output * AT91C_MASTER_CLOCK is the peripherial clock

Dear Wolfgang Denk, Andreas Bießmann,
-at91rm9200ek arm arm920t - atmel at91 +at91rm9200ek arm arm920t at91rm9200ek atmel at91 at91rm9200ek +at91rm9200ek_ram arm arm920t at91rm9200ek atmel at91 at91rm9200ek:RAMBOOT
Just two technical questions:
1. Who is taking this patch in?
2. Should we, since Atmel is not likely maintaining the boards, change relevant maintainers entries (if the person fixing that Atmel board agrees)?
Best Regards, Reinhard

Dear Reinhard Meyer,
Am 31.10.2010 um 16:24 schrieb Reinhard Meyer:
Dear Wolfgang Denk, Andreas Bießmann,
-at91rm9200ek arm arm920t - atmel at91 +at91rm9200ek arm arm920t at91rm9200ek atmel at91 at91rm9200ek +at91rm9200ek_ram arm arm920t at91rm9200ek atmel at91 at91rm9200ek:RAMBOOT
Just two technical questions:
- Who is taking this patch in?
cause this is atmel/at91 related it should go through u-boot-atmel. The patches are on top of atmel/at91: '816dd1b AT91: add header file for the Shutdown Controller'.
- Should we, since Atmel is not likely maintaining the boards,
change relevant maintainers entries (if the person fixing that Atmel board agrees)?
docs/README.arm-relocation says: "Boards which are not fixed to support relocation will be REMOVED!" If one can fix some remaining atmel (or arm in general) boards they should become the new maintainer.
3. How should we treat at91rm9200 boards which are not transformed to at91. I plan to get the at91rm9200 device drivers (at91rm9200_usart, emac) merged with at91 implementation. When we do this transition (will last til end of this year at least; not before 2011.03/maybe 2011.06) we could completely delete the deprecated drivers. Thus we break at91rm9200 boards completely (which may not working at all due to new arm relocation stuff ... but who knows/test this/is responsible for?). Should we write down/propagate a time schedule for this transition as it is done for arm relocation? Should we drop those possible not working boards in general?
Jens, you began with at91rm9200 to at91 transition as far as I know. How do you think about it? In README.at91rm9200 there is a little definition how to do the transition from at91rm9200 to at91 but no time schedule or dead line.
regards
Andreas Bießmann

Dear =?iso-8859-1?Q?Andreas_Bie=DFmann?=,
In message AF6B65B0-6784-4550-86FE-CC49AD3525B6@googlemail.com you wrote:
If one can fix some remaining atmel (or arm in general) boards they should become the new maintainer.
Agred - assuming they agree, too.
- How should we treat at91rm9200 boards which are not transformed to
at91. I plan to get the at91rm9200 device drivers (at91rm9200_usart, emac) merged with at91 implementation. When we do this transition (will last til end of this year at least; not before 2011.03/maybe 2011.06) we could completely delete the deprecated drivers. Thus we break at91rm9200 boards completely (which may not working at all due to new arm relocation stuff ... but who knows/test this/is responsible for?). Should we write down/propagate a time schedule for this transition as it is done for arm relocation? Should we drop those possible not working boards in general?
If we know for sure that a board is broken, and nobody cares about it we shoul remove it. This is simple to find out if a board does not compile, but I guess there are a number of boards that are broken in more subtle ways. If you are aware of any such cases, please let me know or submit a patch to remove them.
U-Boot has sometimes been critized to carry old jetsam for too long, thus preventing any reasonable innovation. Let's prove these guys wrong...
Best regards,
Wolfgang Denk

Am 2010-10-31 17:57, schrieb Andreas Bießmann:
Dear Reinhard Meyer,
Am 31.10.2010 um 16:24 schrieb Reinhard Meyer:
Dear Wolfgang Denk, Andreas Bießmann,
-at91rm9200ek arm arm920t - atmel at91 +at91rm9200ek arm arm920t at91rm9200ek atmel at91 at91rm9200ek +at91rm9200ek_ram arm arm920t at91rm9200ek atmel at91 at91rm9200ek:RAMBOOT
Just two technical questions:
- Who is taking this patch in?
cause this is atmel/at91 related it should go through u-boot-atmel. The patches are on top of atmel/at91: '816dd1b AT91: add header file for the Shutdown Controller'.
- Should we, since Atmel is not likely maintaining the boards,
change relevant maintainers entries (if the person fixing that Atmel board agrees)?
docs/README.arm-relocation says: "Boards which are not fixed to support relocation will be REMOVED!" If one can fix some remaining atmel (or arm in general) boards they should become the new maintainer.
- How should we treat at91rm9200 boards which are not transformed to at91. I plan to get the at91rm9200 device drivers (at91rm9200_usart, emac) merged with at91 implementation. When we do this transition (will last til end of this year at least; not before 2011.03/maybe 2011.06) we could completely delete the deprecated drivers. Thus we break at91rm9200 boards completely (which may not working at all due to new arm relocation stuff ... but who knows/test this/is responsible for?). Should we write down/propagate a time schedule for this transition as it is done for arm relocation? Should we drop those possible not working boards in general?
Jens, you began with at91rm9200 to at91 transition as far as I know. How do you think about it? In README.at91rm9200 there is a little definition how to do the transition from at91rm9200 to at91 but no time schedule or dead line.
The at91 code for at91rm9200 are in git since 2010.01. We have had three releases since then. That's enough time for the maintainer to convert the boards.
regards Jens

Dear Reinhard Meyer,
In message 4CCD8A24.6080609@emk-elektronik.de you wrote:
Just two technical questions:
- Who is taking this patch in?
You as current Atmel custodian, please.
- Should we, since Atmel is not likely maintaining the boards,
change relevant maintainers entries (if the person fixing that Atmel board agrees)?
Yes. Andreas, if you agree please submit a patch top enter you as maintainer of the at91rm9200ek ...
Best regards,
Wolfgang Denk

Dear Wolfgang Denk,
Am 31.10.2010 um 18:39 schrieb Wolfgang Denk:
- Should we, since Atmel is not likely maintaining the boards,
change relevant maintainers entries (if the person fixing that Atmel board agrees)?
Yes. Andreas, if you agree please submit a patch top enter you as maintainer of the at91rm9200ek ...
Well, I just did this as I sent the at91rm9200 to at91 conversion patches for at91rm9200ek. At this time there was no maintainer signed for at91rm9200ek.
regards
Andreas Bießmann

This patch also removes now unnecessary config.mk in board directory and make usage of new features in boards.cfg.
Signed-off-by: Andreas Bießmann andreas.devel@googlemail.com --- changes since v1: - add MAKEALL target - move settings from boards.cfg to i/c/at91rm9200ek.h changes since v2: - remove MAKEALL stuff from this patch changes since v3: - fix RAMBOOT address - based on top of 7d44af08b823b9f83e328a4bc2192ab7cbb31e9a u-boot-atmel/at91
board/atmel/at91rm9200ek/config.mk | 2 -- boards.cfg | 3 ++- include/configs/at91rm9200ek.h | 14 ++++++++++++++ 3 files changed, 16 insertions(+), 3 deletions(-) delete mode 100644 board/atmel/at91rm9200ek/config.mk
diff --git a/board/atmel/at91rm9200ek/config.mk b/board/atmel/at91rm9200ek/config.mk deleted file mode 100644 index c7323fe..0000000 --- a/board/atmel/at91rm9200ek/config.mk +++ /dev/null @@ -1,2 +0,0 @@ -# currently only NOR flash booting is supported -CONFIG_SYS_TEXT_BASE = 0x10000000 diff --git a/boards.cfg b/boards.cfg index 6c2a667..6f7dc54 100644 --- a/boards.cfg +++ b/boards.cfg @@ -359,7 +359,8 @@ modnet50 arm arm720t lpc2292sodimm arm arm720t - - lpc2292 eb_cpux9k2 arm arm920t - BuS at91 at91rm9200dk arm arm920t - atmel at91rm9200 -at91rm9200ek arm arm920t - atmel at91 +at91rm9200ek arm arm920t at91rm9200ek atmel at91 at91rm9200ek +at91rm9200ek_ram arm arm920t at91rm9200ek atmel at91 at91rm9200ek:RAMBOOT sbc2410x arm arm920t - - s3c24x0 smdk2400 arm arm920t - samsung s3c24x0 smdk2410 arm arm920t - samsung s3c24x0 diff --git a/include/configs/at91rm9200ek.h b/include/configs/at91rm9200ek.h index 14559f5..ba2e9d3 100644 --- a/include/configs/at91rm9200ek.h +++ b/include/configs/at91rm9200ek.h @@ -33,6 +33,20 @@ #include <asm/sizes.h>
/* + * set some initial configurations depending on configure target + * + * at91rm9200ek_config -> boot from 0x0 in NOR Flash at CS0 + * at91rm9200ek_ram_config -> continue booting from 0x20100000 in RAM; lowlevel + * initialisation was done by some preloader + */ +#ifdef CONFIG_RAMBOOT +#define CONFIG_SKIP_LOWLEVEL_INIT +#define CONFIG_SYS_TEXT_BASE 0x20100000 +#else +#define CONFIG_SYS_TEXT_BASE 0x10000000 +#endif + +/* * AT91C_XTAL_CLOCK is the frequency of external xtal in hertz * AT91C_MAIN_CLOCK is the frequency of PLLA output * AT91C_MASTER_CLOCK is the peripherial clock

* add boards_by_soc() * remove boards already in boards.cfg from LIST_AT91
Signed-off-by: Andreas Bießmann andreas.devel@googlemail.com --- introduced in v3
changes since v3: - none - based on top of 7d44af08b823b9f83e328a4bc2192ab7cbb31e9a u-boot-atmel/at91
MAKEALL | 18 +++--------------- 1 files changed, 3 insertions(+), 15 deletions(-)
diff --git a/MAKEALL b/MAKEALL index c54c6e8..1b21df6 100755 --- a/MAKEALL +++ b/MAKEALL @@ -181,6 +181,7 @@ boards_by_field() } boards_by_arch() { boards_by_field 2 "$@" ; } boards_by_cpu() { boards_by_field 3 "$@" ; } +boards_by_soc() { boards_by_field 6 "$@" ; }
######################################################################### ## MPC5xx Systems @@ -433,11 +434,8 @@ LIST_ARMV7=" \ ## AT91 Systems #########################################################################
-LIST_at91=" \ - afeb9260 \ - at91cap9adk \ - at91rm9200dk \ - at91rm9200ek \ +LIST_at91="$(boards_by_soc at91)\ + $(boards_by_soc at91rm9200)\ at91sam9260ek \ at91sam9261ek \ at91sam9263ek \ @@ -445,19 +443,9 @@ LIST_at91=" \ at91sam9g20ek \ at91sam9m10g45ek \ at91sam9rlek \ - cmc_pu2 \ CPUAT91 \ CPU9260 \ CPU9G20 \ - csb637 \ - eb_cpux9k2 \ - kb9202 \ - meesc \ - mp2usb \ - m501sk \ - otc570 \ - pm9261 \ - pm9263 \ pm9g45 \ SBC35_A9G20 \ TNY_A9260 \

* add boards_by_soc() * remove boards already in boards.cfg from LIST_AT91
Signed-off-by: Andreas Bießmann andreas.devel@googlemail.com --- implement requested functions in MAKEALL
MAKEALL | 18 +++--------------- 1 files changed, 3 insertions(+), 15 deletions(-)
diff --git a/MAKEALL b/MAKEALL index c54c6e8..1b21df6 100755 --- a/MAKEALL +++ b/MAKEALL @@ -181,6 +181,7 @@ boards_by_field() } boards_by_arch() { boards_by_field 2 "$@" ; } boards_by_cpu() { boards_by_field 3 "$@" ; } +boards_by_soc() { boards_by_field 6 "$@" ; }
######################################################################### ## MPC5xx Systems @@ -433,11 +434,8 @@ LIST_ARMV7=" \ ## AT91 Systems #########################################################################
-LIST_at91=" \ - afeb9260 \ - at91cap9adk \ - at91rm9200dk \ - at91rm9200ek \ +LIST_at91="$(boards_by_soc at91)\ + $(boards_by_soc at91rm9200)\ at91sam9260ek \ at91sam9261ek \ at91sam9263ek \ @@ -445,19 +443,9 @@ LIST_at91=" \ at91sam9g20ek \ at91sam9m10g45ek \ at91sam9rlek \ - cmc_pu2 \ CPUAT91 \ CPU9260 \ CPU9G20 \ - csb637 \ - eb_cpux9k2 \ - kb9202 \ - meesc \ - mp2usb \ - m501sk \ - otc570 \ - pm9261 \ - pm9263 \ pm9g45 \ SBC35_A9G20 \ TNY_A9260 \

Dear Andreas Bießmann,
This patch also removes now unnecessary config.mk in board directory and make usage of new features in boards.cfg.
Signed-off-by: Andreas Bießmann andreas.devel@googlemail.com
board/atmel/at91rm9200ek/config.mk | 2 -- boards.cfg | 3 ++- 2 files changed, 2 insertions(+), 3 deletions(-) delete mode 100644 board/atmel/at91rm9200ek/config.mk
V4 of this patch applied to u-boot-atmel/at91-next
Thanks, Reinhard

Dear Reinhard Meyer,
Am 08.11.2010 um 09:24 schrieb Reinhard Meyer:
Dear Andreas Bießmann,
This patch also removes now unnecessary config.mk in board directory and make usage of new features in boards.cfg.
Signed-off-by: Andreas Bießmann andreas.devel@googlemail.com
board/atmel/at91rm9200ek/config.mk | 2 -- boards.cfg | 3 ++- 2 files changed, 2 insertions(+), 3 deletions(-) delete mode 100644 board/atmel/at91rm9200ek/config.mk
V4 of this patch applied to u-boot-atmel/at91-next
does this patch go into v2010.12 ? boards.cfg have changed and this patch will not longer apply cleanly, do you need an update?
regards
Andreas Bießmann
participants (4)
-
Andreas Bießmann
-
Jens Scharsig
-
Reinhard Meyer
-
Wolfgang Denk