summaryrefslogtreecommitdiff
path: root/arch/powerpc/boot/ops.h
diff options
context:
space:
mode:
authorKumar Gala <galak@kernel.crashing.org>2008-01-15 09:30:32 -0600
committerKumar Gala <galak@kernel.crashing.org>2008-01-23 19:32:44 -0600
commitad160681c8caa0a73e6abd3ac606cd857608f94a (patch)
treeb3e1a48096c03ff83fdf5b0dfccd2434c57c9621 /arch/powerpc/boot/ops.h
parent6392f1845b54eefbfa5f3569155451949d250b6d (diff)
[POWERPC] bootwrapper: Add find_node_by_alias and dt_fixup_mac_address_by_alias
Add the ability to set the mac address given the alias for the device. Removes the need for having a linux,network-index property. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/boot/ops.h')
-rw-r--r--arch/powerpc/boot/ops.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/arch/powerpc/boot/ops.h b/arch/powerpc/boot/ops.h
index 6036a98e646a..5872ef1779ae 100644
--- a/arch/powerpc/boot/ops.h
+++ b/arch/powerpc/boot/ops.h
@@ -159,9 +159,23 @@ static inline void *find_node_by_devtype(const void *prev,
return find_node_by_prop_value_str(prev, "device_type", type);
}
+static inline void *find_node_by_alias(const char *alias)
+{
+ void *devp = finddevice("/aliases");
+
+ if (devp) {
+ char path[MAX_PATH_LEN];
+ if (getprop(devp, alias, path, MAX_PATH_LEN) > 0)
+ return finddevice(path);
+ }
+
+ return NULL;
+}
+
void dt_fixup_memory(u64 start, u64 size);
void dt_fixup_cpu_clocks(u32 cpufreq, u32 tbfreq, u32 busfreq);
void dt_fixup_clock(const char *path, u32 freq);
+void dt_fixup_mac_address_by_alias(const char *alias, const u8 *addr);
void dt_fixup_mac_address(u32 index, const u8 *addr);
void __dt_fixup_mac_addresses(u32 startindex, ...);
#define dt_fixup_mac_addresses(...) \