|
@@ -46,6 +46,8 @@ struct dt_ops {
|
|
void *(*find_node_by_prop_value)(const void *prev,
|
|
void *(*find_node_by_prop_value)(const void *prev,
|
|
const char *propname,
|
|
const char *propname,
|
|
const char *propval, int proplen);
|
|
const char *propval, int proplen);
|
|
|
|
+ void *(*find_node_by_compatible)(const void *prev,
|
|
|
|
+ const char *compat);
|
|
unsigned long (*finalize)(void);
|
|
unsigned long (*finalize)(void);
|
|
char *(*get_path)(const void *phandle, char *buf, int len);
|
|
char *(*get_path)(const void *phandle, char *buf, int len);
|
|
};
|
|
};
|
|
@@ -172,6 +174,15 @@ static inline void *find_node_by_alias(const char *alias)
|
|
return NULL;
|
|
return NULL;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+static inline void *find_node_by_compatible(const void *prev,
|
|
|
|
+ const char *compat)
|
|
|
|
+{
|
|
|
|
+ if (dt_ops.find_node_by_compatible)
|
|
|
|
+ return dt_ops.find_node_by_compatible(prev, compat);
|
|
|
|
+
|
|
|
|
+ return NULL;
|
|
|
|
+}
|
|
|
|
+
|
|
void dt_fixup_memory(u64 start, u64 size);
|
|
void dt_fixup_memory(u64 start, u64 size);
|
|
void dt_fixup_cpu_clocks(u32 cpufreq, u32 tbfreq, u32 busfreq);
|
|
void dt_fixup_cpu_clocks(u32 cpufreq, u32 tbfreq, u32 busfreq);
|
|
void dt_fixup_clock(const char *path, u32 freq);
|
|
void dt_fixup_clock(const char *path, u32 freq);
|