* [U-Boot-Users] [PATCH] Move do_fixup* for libfdt into common code
@ 2007-11-04 0:49 Kumar Gala
2007-11-04 3:19 ` Grant Likely
0 siblings, 1 reply; 5+ messages in thread
From: Kumar Gala @ 2007-11-04 0:49 UTC (permalink / raw)
To: u-boot
Moved the generic fixup handling code out of cpu/mpc5xxx and cpu/mpc8260
into common/fdt_support.c and renamed:
do_fixup() -> do_fixup_by_path()
do_fixup_u32() -> do_fixup_by_path_u32()
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
---
Note: this patch is part of the libfdt work and is available:
git.kernel.org:/pub/scm/boot/u-boot/galak/u-boot.git libfdt
common/fdt_support.c | 23 +++++++++++++++++++++++
cpu/mpc5xxx/cpu.c | 40 +++++++++-------------------------------
cpu/mpc8260/cpu.c | 30 ++++--------------------------
include/fdt_support.h | 4 ++++
4 files changed, 40 insertions(+), 57 deletions(-)
diff --git a/common/fdt_support.c b/common/fdt_support.c
index 6a5b27a..5ed874d 100644
--- a/common/fdt_support.c
+++ b/common/fdt_support.c
@@ -374,4 +374,27 @@ int fdt_bd_t(void *fdt)
}
#endif /* ifdef CONFIG_OF_HAS_BD_T */
+void do_fixup_by_path(void *fdt, const char *path, const char *prop,
+ const void *val, int len, int create)
+{
+#if defined(DEBUG)
+ int i;
+ debug("Updating property '%s/%s' = ", node, prop);
+ for (i = 0; i < len; i++)
+ debug(" %.2x", *(u8*)(val+i));
+ debug("\n");
+#endif
+ int rc = fdt_find_and_setprop(fdt, path, prop, val, len, create);
+ if (rc)
+ printf("Unable to update property %s:%s, err=%s\n",
+ path, prop, fdt_strerror(rc));
+}
+
+void do_fixup_by_path_u32(void *fdt, const char *path, const char *prop,
+ u32 val, int create)
+{
+ val = cpu_to_fdt32(val);
+ do_fixup_by_path(fdt, path, prop, &val, sizeof(val), create);
+}
+
#endif /* CONFIG_OF_LIBFDT */
diff --git a/cpu/mpc5xxx/cpu.c b/cpu/mpc5xxx/cpu.c
index 7f16b92..e4d6168 100644
--- a/cpu/mpc5xxx/cpu.c
+++ b/cpu/mpc5xxx/cpu.c
@@ -35,6 +35,7 @@
#if defined(CONFIG_OF_LIBFDT)
#include <libfdt.h>
#include <libfdt_env.h>
+#include <fdt_support.h>
#endif
DECLARE_GLOBAL_DATA_PTR;
@@ -114,42 +115,19 @@ unsigned long get_tbclk (void)
/* ------------------------------------------------------------------------- */
#ifdef CONFIG_OF_LIBFDT
-static void do_fixup(void *fdt, const char *node, const char *prop,
- const void *val, int len, int create)
-{
-#if defined(DEBUG)
- int i;
- debug("Updating property '%s/%s' = ", node, prop);
- for (i = 0; i < len; i++)
- debug(" %.2x", *(u8*)(val+i));
- debug("\n");
-#endif
- int rc = fdt_find_and_setprop(fdt, node, prop, val, len, create);
- if (rc)
- printf("Unable to update property %s:%s, err=%s\n",
- node, prop, fdt_strerror(rc));
-}
-
-static void do_fixup_u32(void *fdt, const char *node, const char *prop,
- u32 val, int create)
-{
- val = cpu_to_fdt32(val);
- do_fixup(fdt, node, prop, &val, sizeof(val), create);
-}
-
void ft_cpu_setup(void *blob, bd_t *bd)
{
int div = in_8((void*)CFG_MBAR + 0x204) & 0x0020 ? 8 : 4;
char * cpu_path = "/cpus/" OF_CPU;
char * eth_path = "/" OF_SOC "/ethernet@3000";
- do_fixup_u32(blob, cpu_path, "timebase-frequency", OF_TBCLK, 1);
- do_fixup_u32(blob, cpu_path, "bus-frequency", bd->bi_busfreq, 1);
- do_fixup_u32(blob, cpu_path, "clock-frequency", bd->bi_intfreq, 1);
- do_fixup_u32(blob, "/" OF_SOC, "bus-frequency", bd->bi_ipbfreq, 1);
- do_fixup_u32(blob, "/" OF_SOC, "system-frequency",
- bd->bi_busfreq*div, 1);
- do_fixup(blob, eth_path, "mac-address", bd->bi_enetaddr, 6, 0);
- do_fixup(blob, eth_path, "local-mac-address", bd->bi_enetaddr, 6, 0);
+ do_fixup_by_path_u32(blob, cpu_path, "timebase-frequency", OF_TBCLK, 1);
+ do_fixup_by_path_u32(blob, cpu_path, "bus-frequency", bd->bi_busfreq, 1);
+ do_fixup_by_path_u32(blob, cpu_path, "clock-frequency", bd->bi_intfreq, 1);
+ do_fixup_by_path_u32(blob, "/" OF_SOC, "bus-frequency", bd->bi_ipbfreq, 1);
+ do_fixup_by_path_u32(blob, "/" OF_SOC, "system-frequency",
+ bd->bi_busfreq*div, 1);
+ do_fixup_by_path(blob, eth_path, "mac-address", bd->bi_enetaddr, 6, 0);
+ do_fixup_by_path(blob, eth_path, "local-mac-address", bd->bi_enetaddr, 6, 0);
}
#endif
diff --git a/cpu/mpc8260/cpu.c b/cpu/mpc8260/cpu.c
index c2b753d..55e61a1 100644
--- a/cpu/mpc8260/cpu.c
+++ b/cpu/mpc8260/cpu.c
@@ -50,6 +50,7 @@
#if defined(CONFIG_OF_LIBFDT)
#include <libfdt.h>
#include <libfdt_env.h>
+#include <fdt_support.h>
#endif
DECLARE_GLOBAL_DATA_PTR;
@@ -300,35 +301,12 @@ void watchdog_reset (void)
/* ------------------------------------------------------------------------- */
#if defined(CONFIG_OF_LIBFDT)
-static void do_fixup(void *fdt, const char *node, const char *prop,
- const void *val, int len, int create)
-{
-#if defined(DEBUG)
- int i;
- debug("Updating property '%s/%s' = ", node, prop);
- for (i = 0; i < len; i++)
- debug(" %.2x", *(u8*)(val+i));
- debug("\n");
-#endif
- int rc = fdt_find_and_setprop(fdt, node, prop, val, len, create);
- if (rc)
- printf("Unable to update property %s:%s, err=%s\n",
- node, prop, fdt_strerror(rc));
-}
-
-static void do_fixup_u32(void *fdt, const char *node, const char *prop,
- u32 val, int create)
-{
- val = cpu_to_fdt32(val);
- do_fixup(fdt, node, prop, &val, sizeof(val), create);
-}
-
void ft_cpu_setup (void *blob, bd_t *bd)
{
char * cpu_path = "/cpus/" OF_CPU;
- do_fixup_u32(blob, cpu_path, "bus-frequency", bd->bi_busfreq, 1);
- do_fixup_u32(blob, cpu_path, "timebase-frequency", OF_TBCLK, 1);
- do_fixup_u32(blob, cpu_path, "clock-frequency", bd->bi_intfreq, 1);
+ do_fixup_by_path_u32(blob, cpu_path, "bus-frequency", bd->bi_busfreq, 1);
+ do_fixup_by_path_u32(blob, cpu_path, "timebase-frequency", OF_TBCLK, 1);
+ do_fixup_by_path_u32(blob, cpu_path, "clock-frequency", bd->bi_intfreq, 1);
}
#endif /* CONFIG_OF_LIBFDT */
diff --git a/include/fdt_support.h b/include/fdt_support.h
index 60fa423..0314dfd 100644
--- a/include/fdt_support.h
+++ b/include/fdt_support.h
@@ -29,6 +29,10 @@
#include <fdt.h>
int fdt_chosen(void *fdt, ulong initrd_start, ulong initrd_end, int force);
+void do_fixup_by_path(void *fdt, const char *path, const char *prop,
+ const void *val, int len, int create);
+void do_fixup_by_path_u32(void *fdt, const char *path, const char *prop,
+ u32 val, int create);
#ifdef CONFIG_OF_HAS_UBOOT_ENV
int fdt_env(void *fdt);
--
1.5.3.3
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [U-Boot-Users] [PATCH] Move do_fixup* for libfdt into common code
2007-11-04 0:49 [U-Boot-Users] [PATCH] Move do_fixup* for libfdt into common code Kumar Gala
@ 2007-11-04 3:19 ` Grant Likely
2007-11-05 12:30 ` Jerry Van Baren
0 siblings, 1 reply; 5+ messages in thread
From: Grant Likely @ 2007-11-04 3:19 UTC (permalink / raw)
To: u-boot
On 11/3/07, Kumar Gala <galak@kernel.crashing.org> wrote:
> Moved the generic fixup handling code out of cpu/mpc5xxx and cpu/mpc8260
> into common/fdt_support.c and renamed:
>
> do_fixup() -> do_fixup_by_path()
> do_fixup_u32() -> do_fixup_by_path_u32()
>
> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
> ---
>
> Note: this patch is part of the libfdt work and is available:
> git.kernel.org:/pub/scm/boot/u-boot/galak/u-boot.git libfdt
>
> common/fdt_support.c | 23 +++++++++++++++++++++++
> cpu/mpc5xxx/cpu.c | 40 +++++++++-------------------------------
> cpu/mpc8260/cpu.c | 30 ++++--------------------------
> include/fdt_support.h | 4 ++++
> 4 files changed, 40 insertions(+), 57 deletions(-)
>
> diff --git a/common/fdt_support.c b/common/fdt_support.c
> index 6a5b27a..5ed874d 100644
> --- a/common/fdt_support.c
> +++ b/common/fdt_support.c
> @@ -374,4 +374,27 @@ int fdt_bd_t(void *fdt)
> }
> #endif /* ifdef CONFIG_OF_HAS_BD_T */
>
> +void do_fixup_by_path(void *fdt, const char *path, const char *prop,
> + const void *val, int len, int create)
> +{
> +#if defined(DEBUG)
> + int i;
> + debug("Updating property '%s/%s' = ", node, prop);
> + for (i = 0; i < len; i++)
> + debug(" %.2x", *(u8*)(val+i));
> + debug("\n");
> +#endif
> + int rc = fdt_find_and_setprop(fdt, path, prop, val, len, create);
> + if (rc)
> + printf("Unable to update property %s:%s, err=%s\n",
> + path, prop, fdt_strerror(rc));
> +}
> +
> +void do_fixup_by_path_u32(void *fdt, const char *path, const char *prop,
> + u32 val, int create)
> +{
> + val = cpu_to_fdt32(val);
> + do_fixup_by_path(fdt, path, prop, &val, sizeof(val), create);
> +}
> +
> #endif /* CONFIG_OF_LIBFDT */
> diff --git a/cpu/mpc5xxx/cpu.c b/cpu/mpc5xxx/cpu.c
> index 7f16b92..e4d6168 100644
> --- a/cpu/mpc5xxx/cpu.c
> +++ b/cpu/mpc5xxx/cpu.c
> @@ -35,6 +35,7 @@
> #if defined(CONFIG_OF_LIBFDT)
> #include <libfdt.h>
> #include <libfdt_env.h>
> +#include <fdt_support.h>
> #endif
>
> DECLARE_GLOBAL_DATA_PTR;
> @@ -114,42 +115,19 @@ unsigned long get_tbclk (void)
> /* ------------------------------------------------------------------------- */
>
> #ifdef CONFIG_OF_LIBFDT
> -static void do_fixup(void *fdt, const char *node, const char *prop,
> - const void *val, int len, int create)
> -{
> -#if defined(DEBUG)
> - int i;
> - debug("Updating property '%s/%s' = ", node, prop);
> - for (i = 0; i < len; i++)
> - debug(" %.2x", *(u8*)(val+i));
> - debug("\n");
> -#endif
> - int rc = fdt_find_and_setprop(fdt, node, prop, val, len, create);
> - if (rc)
> - printf("Unable to update property %s:%s, err=%s\n",
> - node, prop, fdt_strerror(rc));
> -}
> -
> -static void do_fixup_u32(void *fdt, const char *node, const char *prop,
> - u32 val, int create)
> -{
> - val = cpu_to_fdt32(val);
> - do_fixup(fdt, node, prop, &val, sizeof(val), create);
> -}
> -
> void ft_cpu_setup(void *blob, bd_t *bd)
> {
> int div = in_8((void*)CFG_MBAR + 0x204) & 0x0020 ? 8 : 4;
> char * cpu_path = "/cpus/" OF_CPU;
> char * eth_path = "/" OF_SOC "/ethernet at 3000";
>
> - do_fixup_u32(blob, cpu_path, "timebase-frequency", OF_TBCLK, 1);
> - do_fixup_u32(blob, cpu_path, "bus-frequency", bd->bi_busfreq, 1);
> - do_fixup_u32(blob, cpu_path, "clock-frequency", bd->bi_intfreq, 1);
> - do_fixup_u32(blob, "/" OF_SOC, "bus-frequency", bd->bi_ipbfreq, 1);
> - do_fixup_u32(blob, "/" OF_SOC, "system-frequency",
> - bd->bi_busfreq*div, 1);
> - do_fixup(blob, eth_path, "mac-address", bd->bi_enetaddr, 6, 0);
> - do_fixup(blob, eth_path, "local-mac-address", bd->bi_enetaddr, 6, 0);
> + do_fixup_by_path_u32(blob, cpu_path, "timebase-frequency", OF_TBCLK, 1);
> + do_fixup_by_path_u32(blob, cpu_path, "bus-frequency", bd->bi_busfreq, 1);
> + do_fixup_by_path_u32(blob, cpu_path, "clock-frequency", bd->bi_intfreq, 1);
> + do_fixup_by_path_u32(blob, "/" OF_SOC, "bus-frequency", bd->bi_ipbfreq, 1);
> + do_fixup_by_path_u32(blob, "/" OF_SOC, "system-frequency",
> + bd->bi_busfreq*div, 1);
> + do_fixup_by_path(blob, eth_path, "mac-address", bd->bi_enetaddr, 6, 0);
> + do_fixup_by_path(blob, eth_path, "local-mac-address", bd->bi_enetaddr, 6, 0);
> }
> #endif
> diff --git a/cpu/mpc8260/cpu.c b/cpu/mpc8260/cpu.c
> index c2b753d..55e61a1 100644
> --- a/cpu/mpc8260/cpu.c
> +++ b/cpu/mpc8260/cpu.c
> @@ -50,6 +50,7 @@
> #if defined(CONFIG_OF_LIBFDT)
> #include <libfdt.h>
> #include <libfdt_env.h>
> +#include <fdt_support.h>
> #endif
>
> DECLARE_GLOBAL_DATA_PTR;
> @@ -300,35 +301,12 @@ void watchdog_reset (void)
>
> /* ------------------------------------------------------------------------- */
> #if defined(CONFIG_OF_LIBFDT)
> -static void do_fixup(void *fdt, const char *node, const char *prop,
> - const void *val, int len, int create)
> -{
> -#if defined(DEBUG)
> - int i;
> - debug("Updating property '%s/%s' = ", node, prop);
> - for (i = 0; i < len; i++)
> - debug(" %.2x", *(u8*)(val+i));
> - debug("\n");
> -#endif
> - int rc = fdt_find_and_setprop(fdt, node, prop, val, len, create);
> - if (rc)
> - printf("Unable to update property %s:%s, err=%s\n",
> - node, prop, fdt_strerror(rc));
> -}
> -
> -static void do_fixup_u32(void *fdt, const char *node, const char *prop,
> - u32 val, int create)
> -{
> - val = cpu_to_fdt32(val);
> - do_fixup(fdt, node, prop, &val, sizeof(val), create);
> -}
> -
> void ft_cpu_setup (void *blob, bd_t *bd)
> {
> char * cpu_path = "/cpus/" OF_CPU;
>
> - do_fixup_u32(blob, cpu_path, "bus-frequency", bd->bi_busfreq, 1);
> - do_fixup_u32(blob, cpu_path, "timebase-frequency", OF_TBCLK, 1);
> - do_fixup_u32(blob, cpu_path, "clock-frequency", bd->bi_intfreq, 1);
> + do_fixup_by_path_u32(blob, cpu_path, "bus-frequency", bd->bi_busfreq, 1);
> + do_fixup_by_path_u32(blob, cpu_path, "timebase-frequency", OF_TBCLK, 1);
> + do_fixup_by_path_u32(blob, cpu_path, "clock-frequency", bd->bi_intfreq, 1);
> }
> #endif /* CONFIG_OF_LIBFDT */
> diff --git a/include/fdt_support.h b/include/fdt_support.h
> index 60fa423..0314dfd 100644
> --- a/include/fdt_support.h
> +++ b/include/fdt_support.h
> @@ -29,6 +29,10 @@
> #include <fdt.h>
>
> int fdt_chosen(void *fdt, ulong initrd_start, ulong initrd_end, int force);
> +void do_fixup_by_path(void *fdt, const char *path, const char *prop,
> + const void *val, int len, int create);
> +void do_fixup_by_path_u32(void *fdt, const char *path, const char *prop,
> + u32 val, int create);
>
> #ifdef CONFIG_OF_HAS_UBOOT_ENV
> int fdt_env(void *fdt);
> --
> 1.5.3.3
>
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems? Stop.
> Now Search log events and configuration files using AJAX and a browser.
> Download your FREE copy of Splunk now >> http://get.splunk.com/
> _______________________________________________
> U-Boot-Users mailing list
> U-Boot-Users at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/u-boot-users
>
--
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.
grant.likely at secretlab.ca
(403) 399-0195
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot-Users] [PATCH] Move do_fixup* for libfdt into common code
2007-11-04 3:19 ` Grant Likely
@ 2007-11-05 12:30 ` Jerry Van Baren
2007-11-05 15:44 ` Kumar Gala
2007-11-05 19:21 ` Wolfgang Denk
0 siblings, 2 replies; 5+ messages in thread
From: Jerry Van Baren @ 2007-11-05 12:30 UTC (permalink / raw)
To: u-boot
Grant Likely wrote:
> On 11/3/07, Kumar Gala <galak@kernel.crashing.org> wrote:
>> Moved the generic fixup handling code out of cpu/mpc5xxx and cpu/mpc8260
>> into common/fdt_support.c and renamed:
>>
>> do_fixup() -> do_fixup_by_path()
>> do_fixup_u32() -> do_fixup_by_path_u32()
>>
>> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
> Acked-by: Grant Likely <grant.likely@secretlab.ca>
>
>> ---
Thanks Kumar and Grant.
This touches (pretty trivially) 82xx too, can I have an "ack" from
Wolfgang as 82xx custodian?
I've been looking at the libfdt upgrades and am getting ready to make a
"testing" branch with Kumar's and other's contributions. These would be
aimed at the next merge window (after 1.3).
Best regards,
gvb
>> Note: this patch is part of the libfdt work and is available:
>> git.kernel.org:/pub/scm/boot/u-boot/galak/u-boot.git libfdt
>>
>> common/fdt_support.c | 23 +++++++++++++++++++++++
>> cpu/mpc5xxx/cpu.c | 40 +++++++++-------------------------------
>> cpu/mpc8260/cpu.c | 30 ++++--------------------------
>> include/fdt_support.h | 4 ++++
>> 4 files changed, 40 insertions(+), 57 deletions(-)
>>
>> diff --git a/common/fdt_support.c b/common/fdt_support.c
>> index 6a5b27a..5ed874d 100644
>> --- a/common/fdt_support.c
>> +++ b/common/fdt_support.c
>> @@ -374,4 +374,27 @@ int fdt_bd_t(void *fdt)
>> }
>> #endif /* ifdef CONFIG_OF_HAS_BD_T */
>>
>> +void do_fixup_by_path(void *fdt, const char *path, const char *prop,
>> + const void *val, int len, int create)
>> +{
>> +#if defined(DEBUG)
>> + int i;
>> + debug("Updating property '%s/%s' = ", node, prop);
>> + for (i = 0; i < len; i++)
>> + debug(" %.2x", *(u8*)(val+i));
>> + debug("\n");
>> +#endif
>> + int rc = fdt_find_and_setprop(fdt, path, prop, val, len, create);
>> + if (rc)
>> + printf("Unable to update property %s:%s, err=%s\n",
>> + path, prop, fdt_strerror(rc));
>> +}
>> +
>> +void do_fixup_by_path_u32(void *fdt, const char *path, const char *prop,
>> + u32 val, int create)
>> +{
>> + val = cpu_to_fdt32(val);
>> + do_fixup_by_path(fdt, path, prop, &val, sizeof(val), create);
>> +}
>> +
>> #endif /* CONFIG_OF_LIBFDT */
>> diff --git a/cpu/mpc5xxx/cpu.c b/cpu/mpc5xxx/cpu.c
>> index 7f16b92..e4d6168 100644
>> --- a/cpu/mpc5xxx/cpu.c
>> +++ b/cpu/mpc5xxx/cpu.c
>> @@ -35,6 +35,7 @@
>> #if defined(CONFIG_OF_LIBFDT)
>> #include <libfdt.h>
>> #include <libfdt_env.h>
>> +#include <fdt_support.h>
>> #endif
>>
>> DECLARE_GLOBAL_DATA_PTR;
>> @@ -114,42 +115,19 @@ unsigned long get_tbclk (void)
>> /* ------------------------------------------------------------------------- */
>>
>> #ifdef CONFIG_OF_LIBFDT
>> -static void do_fixup(void *fdt, const char *node, const char *prop,
>> - const void *val, int len, int create)
>> -{
>> -#if defined(DEBUG)
>> - int i;
>> - debug("Updating property '%s/%s' = ", node, prop);
>> - for (i = 0; i < len; i++)
>> - debug(" %.2x", *(u8*)(val+i));
>> - debug("\n");
>> -#endif
>> - int rc = fdt_find_and_setprop(fdt, node, prop, val, len, create);
>> - if (rc)
>> - printf("Unable to update property %s:%s, err=%s\n",
>> - node, prop, fdt_strerror(rc));
>> -}
>> -
>> -static void do_fixup_u32(void *fdt, const char *node, const char *prop,
>> - u32 val, int create)
>> -{
>> - val = cpu_to_fdt32(val);
>> - do_fixup(fdt, node, prop, &val, sizeof(val), create);
>> -}
>> -
>> void ft_cpu_setup(void *blob, bd_t *bd)
>> {
>> int div = in_8((void*)CFG_MBAR + 0x204) & 0x0020 ? 8 : 4;
>> char * cpu_path = "/cpus/" OF_CPU;
>> char * eth_path = "/" OF_SOC "/ethernet at 3000";
>>
>> - do_fixup_u32(blob, cpu_path, "timebase-frequency", OF_TBCLK, 1);
>> - do_fixup_u32(blob, cpu_path, "bus-frequency", bd->bi_busfreq, 1);
>> - do_fixup_u32(blob, cpu_path, "clock-frequency", bd->bi_intfreq, 1);
>> - do_fixup_u32(blob, "/" OF_SOC, "bus-frequency", bd->bi_ipbfreq, 1);
>> - do_fixup_u32(blob, "/" OF_SOC, "system-frequency",
>> - bd->bi_busfreq*div, 1);
>> - do_fixup(blob, eth_path, "mac-address", bd->bi_enetaddr, 6, 0);
>> - do_fixup(blob, eth_path, "local-mac-address", bd->bi_enetaddr, 6, 0);
>> + do_fixup_by_path_u32(blob, cpu_path, "timebase-frequency", OF_TBCLK, 1);
>> + do_fixup_by_path_u32(blob, cpu_path, "bus-frequency", bd->bi_busfreq, 1);
>> + do_fixup_by_path_u32(blob, cpu_path, "clock-frequency", bd->bi_intfreq, 1);
>> + do_fixup_by_path_u32(blob, "/" OF_SOC, "bus-frequency", bd->bi_ipbfreq, 1);
>> + do_fixup_by_path_u32(blob, "/" OF_SOC, "system-frequency",
>> + bd->bi_busfreq*div, 1);
>> + do_fixup_by_path(blob, eth_path, "mac-address", bd->bi_enetaddr, 6, 0);
>> + do_fixup_by_path(blob, eth_path, "local-mac-address", bd->bi_enetaddr, 6, 0);
>> }
>> #endif
>> diff --git a/cpu/mpc8260/cpu.c b/cpu/mpc8260/cpu.c
>> index c2b753d..55e61a1 100644
>> --- a/cpu/mpc8260/cpu.c
>> +++ b/cpu/mpc8260/cpu.c
>> @@ -50,6 +50,7 @@
>> #if defined(CONFIG_OF_LIBFDT)
>> #include <libfdt.h>
>> #include <libfdt_env.h>
>> +#include <fdt_support.h>
>> #endif
>>
>> DECLARE_GLOBAL_DATA_PTR;
>> @@ -300,35 +301,12 @@ void watchdog_reset (void)
>>
>> /* ------------------------------------------------------------------------- */
>> #if defined(CONFIG_OF_LIBFDT)
>> -static void do_fixup(void *fdt, const char *node, const char *prop,
>> - const void *val, int len, int create)
>> -{
>> -#if defined(DEBUG)
>> - int i;
>> - debug("Updating property '%s/%s' = ", node, prop);
>> - for (i = 0; i < len; i++)
>> - debug(" %.2x", *(u8*)(val+i));
>> - debug("\n");
>> -#endif
>> - int rc = fdt_find_and_setprop(fdt, node, prop, val, len, create);
>> - if (rc)
>> - printf("Unable to update property %s:%s, err=%s\n",
>> - node, prop, fdt_strerror(rc));
>> -}
>> -
>> -static void do_fixup_u32(void *fdt, const char *node, const char *prop,
>> - u32 val, int create)
>> -{
>> - val = cpu_to_fdt32(val);
>> - do_fixup(fdt, node, prop, &val, sizeof(val), create);
>> -}
>> -
>> void ft_cpu_setup (void *blob, bd_t *bd)
>> {
>> char * cpu_path = "/cpus/" OF_CPU;
>>
>> - do_fixup_u32(blob, cpu_path, "bus-frequency", bd->bi_busfreq, 1);
>> - do_fixup_u32(blob, cpu_path, "timebase-frequency", OF_TBCLK, 1);
>> - do_fixup_u32(blob, cpu_path, "clock-frequency", bd->bi_intfreq, 1);
>> + do_fixup_by_path_u32(blob, cpu_path, "bus-frequency", bd->bi_busfreq, 1);
>> + do_fixup_by_path_u32(blob, cpu_path, "timebase-frequency", OF_TBCLK, 1);
>> + do_fixup_by_path_u32(blob, cpu_path, "clock-frequency", bd->bi_intfreq, 1);
>> }
>> #endif /* CONFIG_OF_LIBFDT */
>> diff --git a/include/fdt_support.h b/include/fdt_support.h
>> index 60fa423..0314dfd 100644
>> --- a/include/fdt_support.h
>> +++ b/include/fdt_support.h
>> @@ -29,6 +29,10 @@
>> #include <fdt.h>
>>
>> int fdt_chosen(void *fdt, ulong initrd_start, ulong initrd_end, int force);
>> +void do_fixup_by_path(void *fdt, const char *path, const char *prop,
>> + const void *val, int len, int create);
>> +void do_fixup_by_path_u32(void *fdt, const char *path, const char *prop,
>> + u32 val, int create);
>>
>> #ifdef CONFIG_OF_HAS_UBOOT_ENV
>> int fdt_env(void *fdt);
>> --
>> 1.5.3.3
>>
>>
>> -------------------------------------------------------------------------
>> This SF.net email is sponsored by: Splunk Inc.
>> Still grepping through log files to find problems? Stop.
>> Now Search log events and configuration files using AJAX and a browser.
>> Download your FREE copy of Splunk now >> http://get.splunk.com/
>> _______________________________________________
>> U-Boot-Users mailing list
>> U-Boot-Users at lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/u-boot-users
>>
>
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot-Users] [PATCH] Move do_fixup* for libfdt into common code
2007-11-05 12:30 ` Jerry Van Baren
@ 2007-11-05 15:44 ` Kumar Gala
2007-11-05 19:21 ` Wolfgang Denk
1 sibling, 0 replies; 5+ messages in thread
From: Kumar Gala @ 2007-11-05 15:44 UTC (permalink / raw)
To: u-boot
On Nov 5, 2007, at 6:30 AM, Jerry Van Baren wrote:
> Grant Likely wrote:
>> On 11/3/07, Kumar Gala <galak@kernel.crashing.org> wrote:
>>> Moved the generic fixup handling code out of cpu/mpc5xxx and cpu/
>>> mpc8260
>>> into common/fdt_support.c and renamed:
>>>
>>> do_fixup() -> do_fixup_by_path()
>>> do_fixup_u32() -> do_fixup_by_path_u32()
>>>
>>> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
>> Acked-by: Grant Likely <grant.likely@secretlab.ca>
>>> ---
>
> Thanks Kumar and Grant.
>
> This touches (pretty trivially) 82xx too, can I have an "ack" from
> Wolfgang as 82xx custodian?
>
> I've been looking at the libfdt upgrades and am getting ready to
> make a "testing" branch with Kumar's and other's contributions.
> These would be aimed at the next merge window (after 1.3).
Cool, Just an FYI. I've updated the dtc/libfdt import to git commit
9d3af7ab624eee7a611bd115b7ea17d5f88bb1f5. This is in my git tree in
the libfdt branch.
- k
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot-Users] [PATCH] Move do_fixup* for libfdt into common code
2007-11-05 12:30 ` Jerry Van Baren
2007-11-05 15:44 ` Kumar Gala
@ 2007-11-05 19:21 ` Wolfgang Denk
1 sibling, 0 replies; 5+ messages in thread
From: Wolfgang Denk @ 2007-11-05 19:21 UTC (permalink / raw)
To: u-boot
In message <472F0D01.8050001@ge.com> you wrote:
>
> This touches (pretty trivially) 82xx too, can I have an "ack" from
> Wolfgang as 82xx custodian?
ACK.
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
"Security is mostly a superstition. It does not exist in nature...
Life is either a daring adventure or nothing." - Helen Keller
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2007-11-05 19:21 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-11-04 0:49 [U-Boot-Users] [PATCH] Move do_fixup* for libfdt into common code Kumar Gala
2007-11-04 3:19 ` Grant Likely
2007-11-05 12:30 ` Jerry Van Baren
2007-11-05 15:44 ` Kumar Gala
2007-11-05 19:21 ` Wolfgang Denk
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.