[U-Boot-Users] [PATCH] Added CONFIG_ options for bd_t and env in flat dev tree

Added CONFIG_ options for bd_t and env in flat dev tree
Signed-off-by: Kumar Gala galak@kernel.crashing.org
CHANGELOG: * Added CONFIG_ options for bd_t and env in flat dev tree
CONFIG_OF_HAS_BD_T will put a copy of the bd_t into the resulting flat device tree.
CONFIG_OF_HAS_UBOOT_ENV will copy the environment variables from u-boot into the flat device tree
Patch by Kumar Gala 30 Nov 2005
--- commit 993a33b3ee2ab8b6ba7babfc3cb79b85c5ad9080 tree 8f0bf1a80e077cf490fad35cf8b3f101cc2ee567 parent 9eaf17bb9619be82f24c1ec88829ffe487e67ea8 author Kumar Gala galak@kernel.crashing.org Wed, 30 Nov 2005 13:16:36 -0600 committer Kumar Gala galak@kernel.crashing.org Wed, 30 Nov 2005 13:16:36 -0600
README | 10 ++++++++++ common/ft_build.c | 10 +++++++++- include/configs/stxxtc.h | 2 ++ 3 files changed, 21 insertions(+), 1 deletions(-)
diff --git a/README b/README index 6f61008..21f5bf0 100644 --- a/README +++ b/README @@ -413,6 +413,16 @@ The following options need to be configu OF_CPU - The proper name of the cpus node. OF_TBCLK - The timebase frequency.
+ CONFIG_OF_HAS_BD_T + + The resulting flat device tree will have a copy of the bd_t. + Space should be pre-allocated in the dts for the bd_t. + + CONFIG_OF_HAS_UBOOT_ENV + + The resulting flat device tree will have a copy of u-boot's + environment variables + - Serial Ports: CFG_PL010_SERIAL
diff --git a/common/ft_build.c b/common/ft_build.c index 65a274f..c67af6f 100644 --- a/common/ft_build.c +++ b/common/ft_build.c @@ -529,6 +529,7 @@ extern uchar(*env_get_char) (int);
#define BDM(x) { .name = #x, .offset = offsetof(bd_t, bi_ ##x ) }
+#ifdef CONFIG_OF_HAS_BD_T static const struct { const char *name; int offset; @@ -574,6 +575,7 @@ static const struct { #endif BDM(baudrate), }; +#endif
void ft_setup(void *blob, int size, bd_t * bd) { @@ -610,6 +612,7 @@ void ft_setup(void *blob, int size, bd_t /* back into root */ ft_backtrack_node(&cxt);
+#ifdef CONFIG_OF_HAS_UBOOT_ENV ft_begin_node(&cxt, "u-boot-env");
for (i = 0; env_get_char(i) != '\0'; i = nxt + 1) { @@ -629,6 +632,7 @@ void ft_setup(void *blob, int size, bd_t }
ft_end_node(&cxt); +#endif
ft_begin_node(&cxt, "chosen");
@@ -647,13 +651,16 @@ void ft_setup(void *blob, int size, bd_t ft_dump_blob(blob); */
+#ifdef CONFIG_OF_HAS_BD_T /* paste the bd_t at the end of the flat tree */ end = (char *)blob + be32_to_cpu(((struct boot_param_header *)blob)->totalsize); memcpy(end, bd, sizeof(*bd)); +#endif
#ifdef CONFIG_PPC
+#ifdef CONFIG_OF_HAS_BD_T for (i = 0; i < sizeof(bd_map)/sizeof(bd_map[0]); i++) { sprintf(tmpenv, "/bd_t/%s", bd_map[i].name); v = *(uint32_t *)((char *)bd + bd_map[i].offset); @@ -670,6 +677,7 @@ void ft_setup(void *blob, int size, bd_t p = ft_get_prop(blob, "/bd_t/ethspeed", &len); if (p != NULL) *p = cpu_to_be32((uint32_t) bd->bi_ethspeed); +#endif
clock = bd->bi_intfreq; p = ft_get_prop(blob, "/cpus/" OF_CPU "/clock-frequency", &len); @@ -680,7 +688,7 @@ void ft_setup(void *blob, int size, bd_t clock = OF_TBCLK; p = ft_get_prop(blob, "/cpus/" OF_CPU "/timebase-frequency", &len); if (p != NULL) - *p = cpu_to_be32(OF_TBCLK); + *p = cpu_to_be32(clock); #endif
#endif /* __powerpc__ */ diff --git a/include/configs/stxxtc.h b/include/configs/stxxtc.h index 3ffe6b2..be6c36c 100644 --- a/include/configs/stxxtc.h +++ b/include/configs/stxxtc.h @@ -584,5 +584,7 @@ typedef unsigned int led_id_t;
#define OF_CPU "PowerPC,MPC870@0" #define OF_TBCLK (MPC8XX_HZ / 16) +#define CONFIG_OF_HAS_BD_T 1 +#define CONFIG_OF_HAS_UBOOT_ENV 1
#endif /* __CONFIG_H */

In message Pine.LNX.4.44.0511301321430.11487-100000@gate.crashing.org you wrote:
Added CONFIG_ options for bd_t and env in flat dev tree
CONFIG_OF_HAS_BD_T will put a copy of the bd_t into the resulting flat device tree.
CONFIG_OF_HAS_UBOOT_ENV will copy the environment variables from u-boot into the flat device tree
Patch by Kumar Gala 30 Nov 2005
Dropped because I'll rather pull from your git repo. Thanks.
Best regards,
Wolfgang Denk
participants (2)
-
Kumar Gala
-
Wolfgang Denk