RT-Thread RTOS 1.2.0
An open source embedded real-time operating system
载入中...
搜索中...
未找到
ofw.h 文件参考
#include <rtthread.h>
#include <ref.h>
#include <bitmap.h>
#include <libfdt/libfdt.h>
+ ofw.h 的引用(Include)关系图:
+ 此图展示该文件被哪些文件直接或间接地引用了:

浏览该文件的源代码.

结构体

struct  rt_ofw_prop
 
struct  rt_ofw_node
 
struct  rt_ofw_cell_args
 
struct  rt_ofw_node_id
 
struct  rt_ofw_stub
 

宏定义

#define RT_OFW_F_SYSTEM   0 /* node is system node */
 
#define RT_OFW_F_READLY   1 /* node has driver */
 
#define RT_OFW_F_PLATFORM   2 /* node is platform device */
 
#define RT_OFW_F_OVERLAY   3 /* node is from overlay */
 
#define RT_OFW_MAX_CELL_ARGS   16
 
#define RT_OFW_SYMBOL(_class, _level)
 
#define RT_OFW_SYMBOL_TYPE_RANGE(_class, _type, _start, _end)
 
#define RT_OFW_STUB_EXPORT(_name, _ids, _class, _handler, ...)
 
#define RT_OFW_STUB_RANGE_EXPORT(_class, _start, _end)
 
#define rt_ofw_data(np)
 
#define rt_ofw_foreach_node_by_tag(np, name)
 
#define rt_ofw_foreach_node_by_prop(np, prop_name)
 
#define rt_ofw_foreach_node_by_prop_r(np, prop_name, prop)
 
#define rt_ofw_foreach_node_by_name(np, name)
 
#define rt_ofw_foreach_node_by_type(np, type)
 
#define rt_ofw_foreach_node_by_compatible(np, compatible)
 
#define rt_ofw_foreach_node_by_ids_r(np, id, ids)
 
#define rt_ofw_foreach_node_by_ids(np, ids)
 
#define rt_ofw_foreach_nodes(from, np)
 
#define rt_ofw_foreach_allnodes(np)
 
#define rt_ofw_foreach_parent_node(np)
 
#define rt_ofw_foreach_child_node(parent, child)
 
#define rt_ofw_foreach_available_child_node(parent, child)
 
#define rt_ofw_foreach_cpu_node(cpu_np)
 
#define rt_ofw_foreach_prop(np, prop)
 
#define rt_ofw_foreach_prop_u32(np, propname, prop, p, u)
 
#define rt_ofw_foreach_prop_string(np, propname, prop, s)
 
#define rt_ofw_foreach_stub(stub, stub_start, stub_end)
 

类型定义

typedef rt_uint32_t rt_phandle
 

函数

rt_inline rt_bool_t rt_ofw_node_test_flag (const struct rt_ofw_node *np, int flag)
 
rt_inline void rt_ofw_node_set_flag (struct rt_ofw_node *np, int flag)
 
rt_inline rt_bool_t rt_ofw_node_test_and_set_flag (struct rt_ofw_node *np, int flag)
 
rt_inline void rt_ofw_node_clear_flag (struct rt_ofw_node *np, int flag)
 
rt_err_t rt_ofw_node_destroy (struct rt_ofw_node *np)
 
struct rt_ofw_nodert_ofw_node_get (struct rt_ofw_node *np)
 
void rt_ofw_node_put (struct rt_ofw_node *np)
 
rt_bool_t rt_ofw_node_tag_equ (const struct rt_ofw_node *np, const char *tag)
 
rt_bool_t rt_ofw_node_tag_prefix (const struct rt_ofw_node *np, const char *prefix)
 
rt_inline const char * rt_ofw_node_name (const struct rt_ofw_node *np)
 
rt_inline const char * rt_ofw_node_full_name (const struct rt_ofw_node *np)
 
rt_bool_t rt_ofw_machine_is_compatible (const char *compatible)
 
rt_bool_t rt_ofw_node_is_available (const struct rt_ofw_node *np)
 
rt_bool_t rt_ofw_node_is_compatible (const struct rt_ofw_node *np, const char *compatible)
 
struct rt_ofw_node_idrt_ofw_prop_match (struct rt_ofw_prop *prop, const struct rt_ofw_node_id *ids)
 
struct rt_ofw_node_idrt_ofw_node_match (struct rt_ofw_node *np, const struct rt_ofw_node_id *ids)
 
struct rt_ofw_nodert_ofw_find_node_by_tag (struct rt_ofw_node *from, const char *tag)
 
struct rt_ofw_nodert_ofw_find_node_by_prop_r (struct rt_ofw_node *from, const char *propname, const struct rt_ofw_prop **out_prop)
 
rt_inline struct rt_ofw_nodert_ofw_find_node_by_prop (struct rt_ofw_node *from, const char *propname)
 
struct rt_ofw_nodert_ofw_find_node_by_name (struct rt_ofw_node *from, const char *name)
 
struct rt_ofw_nodert_ofw_find_node_by_type (struct rt_ofw_node *from, const char *type)
 
struct rt_ofw_nodert_ofw_find_node_by_compatible (struct rt_ofw_node *from, const char *compatible)
 
struct rt_ofw_nodert_ofw_find_node_by_ids_r (struct rt_ofw_node *from, const struct rt_ofw_node_id *ids, const struct rt_ofw_node_id **out_id)
 
struct rt_ofw_nodert_ofw_find_node_by_path (const char *path)
 
struct rt_ofw_nodert_ofw_find_node_by_phandle (rt_phandle phandle)
 
rt_inline struct rt_ofw_nodert_ofw_find_node_by_ids (struct rt_ofw_node *from, const struct rt_ofw_node_id *ids)
 
struct rt_ofw_nodert_ofw_get_parent (const struct rt_ofw_node *np)
 
struct rt_ofw_nodert_ofw_get_child_by_tag (const struct rt_ofw_node *parent, const char *tag)
 
struct rt_ofw_nodert_ofw_get_child_by_compatible (const struct rt_ofw_node *parent, const char *compatible)
 
int rt_ofw_get_child_count (const struct rt_ofw_node *np)
 
int rt_ofw_get_available_child_count (const struct rt_ofw_node *np)
 
struct rt_ofw_nodert_ofw_get_next_node (struct rt_ofw_node *prev)
 
struct rt_ofw_nodert_ofw_get_next_parent (struct rt_ofw_node *prev)
 
struct rt_ofw_nodert_ofw_get_next_child (const struct rt_ofw_node *parent, struct rt_ofw_node *prev)
 
struct rt_ofw_nodert_ofw_get_next_available_child (const struct rt_ofw_node *parent, struct rt_ofw_node *prev)
 
struct rt_ofw_nodert_ofw_get_cpu_node (int cpu, int *thread, rt_bool_t(*match_cpu_hwid)(int cpu, rt_uint64_t hwid))
 
struct rt_ofw_nodert_ofw_get_next_cpu_node (struct rt_ofw_node *prev)
 
struct rt_ofw_nodert_ofw_get_cpu_state_node (struct rt_ofw_node *cpu_np, int index)
 
rt_uint64_t rt_ofw_get_cpu_id (struct rt_ofw_node *cpu_np)
 
rt_uint64_t rt_ofw_get_cpu_hwid (struct rt_ofw_node *cpu_np, unsigned int thread)
 
struct rt_ofw_nodert_ofw_get_alias_node (const char *tag, int id)
 
int rt_ofw_get_alias_id (struct rt_ofw_node *np, const char *tag)
 
int rt_ofw_get_alias_last_id (const char *tag)
 
rt_err_t rt_ofw_map_id (struct rt_ofw_node *np, rt_uint32_t id, const char *map_name, const char *map_mask_name, struct rt_ofw_node **ref_np, rt_uint32_t *out_id)
 
struct rt_ofw_nodert_ofw_append_child (struct rt_ofw_node *parent, const char *full_name)
 
rt_err_t rt_ofw_append_prop (struct rt_ofw_node *np, const char *name, int length, void *value)
 
struct rt_ofw_nodert_ofw_parse_phandle (const struct rt_ofw_node *np, const char *phandle_name, int index)
 
rt_err_t rt_ofw_parse_phandle_cells (const struct rt_ofw_node *np, const char *list_name, const char *cells_name, int index, struct rt_ofw_cell_args *out_args)
 
int rt_ofw_count_phandle_cells (const struct rt_ofw_node *np, const char *list_name, const char *cells_name)
 
const char * rt_ofw_get_prop_fuzzy_name (const struct rt_ofw_node *np, const char *name)
 
struct rt_ofw_proprt_ofw_get_prop (const struct rt_ofw_node *np, const char *name, rt_ssize_t *out_length)
 
rt_inline const void * rt_ofw_prop_read_raw (const struct rt_ofw_node *np, const char *name, rt_ssize_t *out_length)
 
int rt_ofw_prop_read_u8_array_index (const struct rt_ofw_node *np, const char *propname, int index, int nr, rt_uint8_t *out_values)
 
int rt_ofw_prop_read_u16_array_index (const struct rt_ofw_node *np, const char *propname, int index, int nr, rt_uint16_t *out_values)
 
int rt_ofw_prop_read_u32_array_index (const struct rt_ofw_node *np, const char *propname, int index, int nr, rt_uint32_t *out_values)
 
int rt_ofw_prop_read_u64_array_index (const struct rt_ofw_node *np, const char *propname, int index, int nr, rt_uint64_t *out_values)
 
int rt_ofw_prop_read_string_array_index (const struct rt_ofw_node *np, const char *propname, int index, int nr, const char **out_strings)
 
int rt_ofw_prop_count_of_size (const struct rt_ofw_node *np, const char *propname, int size)
 
int rt_ofw_prop_index_of_string (const struct rt_ofw_node *np, const char *propname, const char *string)
 
const fdt32_t * rt_ofw_prop_next_u32 (struct rt_ofw_prop *prop, const fdt32_t *cur, rt_uint32_t *out_value)
 
const char * rt_ofw_prop_next_string (struct rt_ofw_prop *prop, const char *cur)
 
rt_inline rt_err_t rt_ofw_prop_read_u8_index (const struct rt_ofw_node *np, const char *propname, int index, rt_uint8_t *out_value)
 
rt_inline rt_err_t rt_ofw_prop_read_u16_index (const struct rt_ofw_node *np, const char *propname, int index, rt_uint16_t *out_value)
 
rt_inline rt_err_t rt_ofw_prop_read_u32_index (const struct rt_ofw_node *np, const char *propname, int index, rt_uint32_t *out_value)
 
rt_inline rt_err_t rt_ofw_prop_read_u64_index (const struct rt_ofw_node *np, const char *propname, int index, rt_uint64_t *out_value)
 
rt_inline rt_err_t rt_ofw_prop_read_string_index (const struct rt_ofw_node *np, const char *propname, int index, const char **out_string)
 
rt_inline rt_err_t rt_ofw_prop_read_u8 (const struct rt_ofw_node *np, const char *propname, rt_uint8_t *out_value)
 
rt_inline rt_err_t rt_ofw_prop_read_u16 (const struct rt_ofw_node *np, const char *propname, rt_uint16_t *out_value)
 
rt_inline rt_err_t rt_ofw_prop_read_u32 (const struct rt_ofw_node *np, const char *propname, rt_uint32_t *out_value)
 
rt_inline rt_err_t rt_ofw_prop_read_s32 (const struct rt_ofw_node *np, const char *propname, rt_int32_t *out_value)
 
rt_inline rt_err_t rt_ofw_prop_read_u64 (const struct rt_ofw_node *np, const char *propname, rt_uint64_t *out_value)
 
rt_inline rt_err_t rt_ofw_prop_read_string (const struct rt_ofw_node *np, const char *propname, const char **out_string)
 
rt_inline rt_bool_t rt_ofw_prop_read_bool (const struct rt_ofw_node *np, const char *propname)
 
rt_inline int rt_ofw_prop_count_of_u8 (const struct rt_ofw_node *np, const char *propname)
 
rt_inline int rt_ofw_prop_count_of_u16 (const struct rt_ofw_node *np, const char *propname)
 
rt_inline int rt_ofw_prop_count_of_u32 (const struct rt_ofw_node *np, const char *propname)
 
rt_inline int rt_ofw_prop_count_of_u64 (const struct rt_ofw_node *np, const char *propname)
 
rt_inline const char * rt_ofw_node_type (const struct rt_ofw_node *np)
 
rt_inline rt_bool_t rt_ofw_node_is_type (const struct rt_ofw_node *np, const char *type)
 
struct rt_ofw_stubrt_ofw_stub_probe_range (struct rt_ofw_node *np, const struct rt_ofw_stub *stub_start, const struct rt_ofw_stub *stub_end)
 
struct rt_objectrt_ofw_parse_object (struct rt_ofw_node *np, const char *obj_name, const char *cells_name)
 
rt_err_t rt_ofw_console_setup (void)
 
const char * rt_ofw_bootargs_select (const char *key, int index)
 

宏定义说明

◆ RT_OFW_F_SYSTEM

#define RT_OFW_F_SYSTEM   0 /* node is system node */

在文件 ofw.h48 行定义.

◆ RT_OFW_F_READLY

#define RT_OFW_F_READLY   1 /* node has driver */

在文件 ofw.h49 行定义.

◆ RT_OFW_F_PLATFORM

#define RT_OFW_F_PLATFORM   2 /* node is platform device */

在文件 ofw.h50 行定义.

◆ RT_OFW_F_OVERLAY

#define RT_OFW_F_OVERLAY   3 /* node is from overlay */

在文件 ofw.h51 行定义.

◆ RT_OFW_MAX_CELL_ARGS

#define RT_OFW_MAX_CELL_ARGS   16

在文件 ofw.h58 行定义.

◆ RT_OFW_SYMBOL

#define RT_OFW_SYMBOL ( _class,
_level )
值:
rt_section(".rt_ofw_data." #_class "." #_level)

在文件 ofw.h96 行定义.

96#define RT_OFW_SYMBOL(_class, _level) \
97 rt_section(".rt_ofw_data." #_class "." #_level)

◆ RT_OFW_SYMBOL_TYPE_RANGE

#define RT_OFW_SYMBOL_TYPE_RANGE ( _class,
_type,
_start,
_end )
值:
static const rt_used RT_OFW_SYMBOL(_class, 0) _type _start; \
static const rt_used RT_OFW_SYMBOL(_class, end) _type _end; \
#define RT_OFW_SYMBOL(_class, _level)
定义 ofw.h:96

在文件 ofw.h99 行定义.

99#define RT_OFW_SYMBOL_TYPE_RANGE(_class, _type, _start, _end) \
100static const rt_used RT_OFW_SYMBOL(_class, 0) _type _start; \
101static const rt_used RT_OFW_SYMBOL(_class, end) _type _end; \
102

◆ RT_OFW_STUB_EXPORT

#define RT_OFW_STUB_EXPORT ( _name,
_ids,
_class,
_handler,
... )
值:
static const struct rt_ofw_stub __rt_ofw_##_name \
rt_used RT_OFW_SYMBOL(_class, __VA_ARGS__ _) = \
{ \
.ids = _ids, \
.handler = _handler, \
}

在文件 ofw.h103 行定义.

103#define RT_OFW_STUB_EXPORT(_name, _ids, _class, _handler, ...) \
104static const struct rt_ofw_stub __rt_ofw_##_name \
105rt_used RT_OFW_SYMBOL(_class, __VA_ARGS__ _) = \
106{ \
107 .ids = _ids, \
108 .handler = _handler, \
109}

◆ RT_OFW_STUB_RANGE_EXPORT

#define RT_OFW_STUB_RANGE_EXPORT ( _class,
_start,
_end )
值:
RT_OFW_SYMBOL_TYPE_RANGE(_class, struct rt_ofw_stub, _start = {}, _end = {})
#define RT_OFW_SYMBOL_TYPE_RANGE(_class, _type, _start, _end)
定义 ofw.h:99

在文件 ofw.h111 行定义.

111#define RT_OFW_STUB_RANGE_EXPORT(_class, _start, _end) \
112 RT_OFW_SYMBOL_TYPE_RANGE(_class, struct rt_ofw_stub, _start = {}, _end = {})

◆ rt_ofw_data

#define rt_ofw_data ( np)
值:
((struct rt_ofw_node *)np)->rt_data

在文件 ofw.h114 行定义.

◆ rt_ofw_foreach_node_by_tag

#define rt_ofw_foreach_node_by_tag ( np,
name )
值:
for (np = rt_ofw_find_node_by_tag(RT_NULL, name); np; \
np = rt_ofw_find_node_by_tag(np, name))
struct rt_ofw_node * rt_ofw_find_node_by_tag(struct rt_ofw_node *from, const char *tag)
#define RT_NULL

在文件 ofw.h360 行定义.

360#define rt_ofw_foreach_node_by_tag(np, name) \
361 for (np = rt_ofw_find_node_by_tag(RT_NULL, name); np; \
362 np = rt_ofw_find_node_by_tag(np, name))

◆ rt_ofw_foreach_node_by_prop

#define rt_ofw_foreach_node_by_prop ( np,
prop_name )
值:
for (np = rt_ofw_find_node_by_prop(RT_NULL, prop_name); \
np; np = rt_ofw_find_node_by_prop(np, prop_name))
rt_inline struct rt_ofw_node * rt_ofw_find_node_by_prop(struct rt_ofw_node *from, const char *propname)
定义 ofw.h:169

在文件 ofw.h364 行定义.

364#define rt_ofw_foreach_node_by_prop(np, prop_name) \
365 for (np = rt_ofw_find_node_by_prop(RT_NULL, prop_name); \
366 np; np = rt_ofw_find_node_by_prop(np, prop_name))

◆ rt_ofw_foreach_node_by_prop_r

#define rt_ofw_foreach_node_by_prop_r ( np,
prop_name,
prop )
值:
for (np = rt_ofw_find_node_by_prop_r(RT_NULL, prop_name, prop); \
np; np = rt_ofw_find_node_by_prop_r(np, prop_name, prop))
struct rt_ofw_node * rt_ofw_find_node_by_prop_r(struct rt_ofw_node *from, const char *propname, const struct rt_ofw_prop **out_prop)

在文件 ofw.h368 行定义.

368#define rt_ofw_foreach_node_by_prop_r(np, prop_name, prop) \
369 for (np = rt_ofw_find_node_by_prop_r(RT_NULL, prop_name, prop); \
370 np; np = rt_ofw_find_node_by_prop_r(np, prop_name, prop))

◆ rt_ofw_foreach_node_by_name

#define rt_ofw_foreach_node_by_name ( np,
name )
值:
for (np = rt_ofw_find_node_by_name(RT_NULL, name); np; \
np = rt_ofw_find_node_by_name(np, name))
struct rt_ofw_node * rt_ofw_find_node_by_name(struct rt_ofw_node *from, const char *name)

在文件 ofw.h372 行定义.

372#define rt_ofw_foreach_node_by_name(np, name) \
373 for (np = rt_ofw_find_node_by_name(RT_NULL, name); np; \
374 np = rt_ofw_find_node_by_name(np, name))

◆ rt_ofw_foreach_node_by_type

#define rt_ofw_foreach_node_by_type ( np,
type )
值:
for (np = rt_ofw_find_node_by_type(RT_NULL, type); np; \
np = rt_ofw_find_node_by_type(np, type))
struct rt_ofw_node * rt_ofw_find_node_by_type(struct rt_ofw_node *from, const char *type)

在文件 ofw.h376 行定义.

376#define rt_ofw_foreach_node_by_type(np, type) \
377 for (np = rt_ofw_find_node_by_type(RT_NULL, type); np; \
378 np = rt_ofw_find_node_by_type(np, type))

◆ rt_ofw_foreach_node_by_compatible

#define rt_ofw_foreach_node_by_compatible ( np,
compatible )
值:
for (np = rt_ofw_find_node_by_compatible(RT_NULL, compatible); np; \
np = rt_ofw_find_node_by_compatible(np, compatible))
struct rt_ofw_node * rt_ofw_find_node_by_compatible(struct rt_ofw_node *from, const char *compatible)

在文件 ofw.h380 行定义.

380#define rt_ofw_foreach_node_by_compatible(np, compatible) \
381 for (np = rt_ofw_find_node_by_compatible(RT_NULL, compatible); np; \
382 np = rt_ofw_find_node_by_compatible(np, compatible))

◆ rt_ofw_foreach_node_by_ids_r

#define rt_ofw_foreach_node_by_ids_r ( np,
id,
ids )
值:
for (np = rt_ofw_find_node_by_ids_r(RT_NULL, ids, id); \
np; np = rt_ofw_find_node_by_ids_r(np, ids, id))
struct rt_ofw_node * rt_ofw_find_node_by_ids_r(struct rt_ofw_node *from, const struct rt_ofw_node_id *ids, const struct rt_ofw_node_id **out_id)

在文件 ofw.h384 行定义.

384#define rt_ofw_foreach_node_by_ids_r(np, id, ids) \
385 for (np = rt_ofw_find_node_by_ids_r(RT_NULL, ids, id); \
386 np; np = rt_ofw_find_node_by_ids_r(np, ids, id))

◆ rt_ofw_foreach_node_by_ids

#define rt_ofw_foreach_node_by_ids ( np,
ids )
值:
for (np = rt_ofw_find_node_by_ids(RT_NULL, ids); np; \
np = rt_ofw_find_node_by_ids(np, ids))
rt_inline struct rt_ofw_node * rt_ofw_find_node_by_ids(struct rt_ofw_node *from, const struct rt_ofw_node_id *ids)
定义 ofw.h:182

在文件 ofw.h388 行定义.

388#define rt_ofw_foreach_node_by_ids(np, ids) \
389 for (np = rt_ofw_find_node_by_ids(RT_NULL, ids); np; \
390 np = rt_ofw_find_node_by_ids(np, ids))

◆ rt_ofw_foreach_nodes

#define rt_ofw_foreach_nodes ( from,
np )
值:
for (np = rt_ofw_get_next_node(from); \
np; np = rt_ofw_get_next_node(np))
struct rt_ofw_node * rt_ofw_get_next_node(struct rt_ofw_node *prev)

在文件 ofw.h392 行定义.

392#define rt_ofw_foreach_nodes(from, np) \
393 for (np = rt_ofw_get_next_node(from); \
394 np; np = rt_ofw_get_next_node(np))

◆ rt_ofw_foreach_allnodes

#define rt_ofw_foreach_allnodes ( np)
值:
#define rt_ofw_foreach_nodes(from, np)
定义 ofw.h:392

在文件 ofw.h396 行定义.

396#define rt_ofw_foreach_allnodes(np) \
397 rt_ofw_foreach_nodes(RT_NULL, np)

◆ rt_ofw_foreach_parent_node

#define rt_ofw_foreach_parent_node ( np)
值:
np; np = rt_ofw_get_next_parent(np))
struct rt_ofw_node * rt_ofw_get_next_parent(struct rt_ofw_node *prev)
struct rt_ofw_node * rt_ofw_node_get(struct rt_ofw_node *np)

在文件 ofw.h399 行定义.

399#define rt_ofw_foreach_parent_node(np) \
400 for (np = rt_ofw_get_next_parent(rt_ofw_node_get(np)); \
401 np; np = rt_ofw_get_next_parent(np))

◆ rt_ofw_foreach_child_node

#define rt_ofw_foreach_child_node ( parent,
child )
值:
for (child = rt_ofw_get_next_child(parent, RT_NULL); \
child; child = rt_ofw_get_next_child(parent, child))
struct rt_ofw_node * rt_ofw_get_next_child(const struct rt_ofw_node *parent, struct rt_ofw_node *prev)

在文件 ofw.h403 行定义.

403#define rt_ofw_foreach_child_node(parent, child) \
404 for (child = rt_ofw_get_next_child(parent, RT_NULL); \
405 child; child = rt_ofw_get_next_child(parent, child))

◆ rt_ofw_foreach_available_child_node

#define rt_ofw_foreach_available_child_node ( parent,
child )
值:
for (child = rt_ofw_get_next_available_child(parent, RT_NULL); child; \
child = rt_ofw_get_next_available_child(parent, child))
struct rt_ofw_node * rt_ofw_get_next_available_child(const struct rt_ofw_node *parent, struct rt_ofw_node *prev)

在文件 ofw.h407 行定义.

407#define rt_ofw_foreach_available_child_node(parent, child) \
408 for (child = rt_ofw_get_next_available_child(parent, RT_NULL); child; \
409 child = rt_ofw_get_next_available_child(parent, child))

◆ rt_ofw_foreach_cpu_node

#define rt_ofw_foreach_cpu_node ( cpu_np)
值:
cpu_np; cpu_np = rt_ofw_get_next_cpu_node(cpu_np))
struct rt_ofw_node * rt_ofw_get_next_cpu_node(struct rt_ofw_node *prev)

在文件 ofw.h411 行定义.

411#define rt_ofw_foreach_cpu_node(cpu_np) \
412 for (cpu_np = rt_ofw_get_next_cpu_node(RT_NULL); \
413 cpu_np; cpu_np = rt_ofw_get_next_cpu_node(cpu_np))

◆ rt_ofw_foreach_prop

#define rt_ofw_foreach_prop ( np,
prop )
值:
for (prop = np->props; prop; prop = prop->next)

在文件 ofw.h415 行定义.

415#define rt_ofw_foreach_prop(np, prop) \
416 for (prop = np->props; prop; prop = prop->next)

◆ rt_ofw_foreach_prop_u32

#define rt_ofw_foreach_prop_u32 ( np,
propname,
prop,
p,
u )
值:
for (prop = rt_ofw_get_prop(np, propname, RT_NULL), \
p = rt_ofw_prop_next_u32(prop, RT_NULL, &u); p; \
p = rt_ofw_prop_next_u32(prop, p, &u))
const fdt32_t * rt_ofw_prop_next_u32(struct rt_ofw_prop *prop, const fdt32_t *cur, rt_uint32_t *out_value)
struct rt_ofw_prop * rt_ofw_get_prop(const struct rt_ofw_node *np, const char *name, rt_ssize_t *out_length)

在文件 ofw.h418 行定义.

418#define rt_ofw_foreach_prop_u32(np, propname, prop, p, u) \
419 for (prop = rt_ofw_get_prop(np, propname, RT_NULL), \
420 p = rt_ofw_prop_next_u32(prop, RT_NULL, &u); p; \
421 p = rt_ofw_prop_next_u32(prop, p, &u))

◆ rt_ofw_foreach_prop_string

#define rt_ofw_foreach_prop_string ( np,
propname,
prop,
s )
值:
for (prop = rt_ofw_get_prop(np, propname, RT_NULL), \
const char * rt_ofw_prop_next_string(struct rt_ofw_prop *prop, const char *cur)

在文件 ofw.h423 行定义.

423#define rt_ofw_foreach_prop_string(np, propname, prop, s) \
424 for (prop = rt_ofw_get_prop(np, propname, RT_NULL), \
425 s = rt_ofw_prop_next_string(prop, RT_NULL); s; \
426 s = rt_ofw_prop_next_string(prop, s))

◆ rt_ofw_foreach_stub

#define rt_ofw_foreach_stub ( stub,
stub_start,
stub_end )
值:
for (stub = stub_start; stub <= stub_end; ++stub)

在文件 ofw.h428 行定义.

428#define rt_ofw_foreach_stub(stub, stub_start, stub_end) \
429 for (stub = stub_start; stub <= stub_end; ++stub)

类型定义说明

◆ rt_phandle

在文件 ofw.h21 行定义.

函数说明

◆ rt_ofw_node_test_flag()

rt_inline rt_bool_t rt_ofw_node_test_flag ( const struct rt_ofw_node * np,
int flag )

在文件 ofw.h116 行定义.

117{
118 return rt_bitmap_test_bit((rt_bitmap_t *)&np->flags, flag);
119}
rt_bitmap_t flags
定义 ofw.h:52

引用了 rt_ofw_node::flags.

+ 这是这个函数的调用关系图:

◆ rt_ofw_node_set_flag()

rt_inline void rt_ofw_node_set_flag ( struct rt_ofw_node * np,
int flag )

在文件 ofw.h121 行定义.

122{
123 rt_bitmap_set_bit(&np->flags, flag);
124}

引用了 rt_ofw_node::flags.

+ 这是这个函数的调用关系图:

◆ rt_ofw_node_test_and_set_flag()

rt_inline rt_bool_t rt_ofw_node_test_and_set_flag ( struct rt_ofw_node * np,
int flag )

在文件 ofw.h126 行定义.

127{
128 rt_bool_t res = rt_ofw_node_test_flag(np, flag);
129
130 rt_ofw_node_set_flag(np, flag);
131
132 return res;
133}
rt_inline rt_bool_t rt_ofw_node_test_flag(const struct rt_ofw_node *np, int flag)
定义 ofw.h:116
rt_inline void rt_ofw_node_set_flag(struct rt_ofw_node *np, int flag)
定义 ofw.h:121
int rt_bool_t

引用了 rt_ofw_node_set_flag() , 以及 rt_ofw_node_test_flag().

+ 函数调用图:

◆ rt_ofw_node_clear_flag()

rt_inline void rt_ofw_node_clear_flag ( struct rt_ofw_node * np,
int flag )

在文件 ofw.h135 行定义.

136{
137 rt_bitmap_clear_bit(&np->flags, flag);
138}

引用了 rt_ofw_node::flags.

◆ rt_ofw_node_destroy()

rt_err_t rt_ofw_node_destroy ( struct rt_ofw_node * np)

◆ rt_ofw_node_get()

struct rt_ofw_node * rt_ofw_node_get ( struct rt_ofw_node * np)

◆ rt_ofw_node_put()

void rt_ofw_node_put ( struct rt_ofw_node * np)

◆ rt_ofw_node_tag_equ()

rt_bool_t rt_ofw_node_tag_equ ( const struct rt_ofw_node * np,
const char * tag )

◆ rt_ofw_node_tag_prefix()

rt_bool_t rt_ofw_node_tag_prefix ( const struct rt_ofw_node * np,
const char * prefix )

◆ rt_ofw_node_name()

rt_inline const char * rt_ofw_node_name ( const struct rt_ofw_node * np)

在文件 ofw.h148 行定义.

149{
150 return np ? np->name : "<no-node>";
151}
const char * name
定义 ofw.h:34

引用了 rt_ofw_node::name.

◆ rt_ofw_node_full_name()

rt_inline const char * rt_ofw_node_full_name ( const struct rt_ofw_node * np)

在文件 ofw.h153 行定义.

154{
155 return np ? np->full_name : "<no-node>";
156}
const char * full_name
定义 ofw.h:36

引用了 rt_ofw_node::full_name.

◆ rt_ofw_machine_is_compatible()

rt_bool_t rt_ofw_machine_is_compatible ( const char * compatible)

◆ rt_ofw_node_is_available()

rt_bool_t rt_ofw_node_is_available ( const struct rt_ofw_node * np)

◆ rt_ofw_node_is_compatible()

rt_bool_t rt_ofw_node_is_compatible ( const struct rt_ofw_node * np,
const char * compatible )

◆ rt_ofw_prop_match()

struct rt_ofw_node_id * rt_ofw_prop_match ( struct rt_ofw_prop * prop,
const struct rt_ofw_node_id * ids )

◆ rt_ofw_node_match()

struct rt_ofw_node_id * rt_ofw_node_match ( struct rt_ofw_node * np,
const struct rt_ofw_node_id * ids )

◆ rt_ofw_find_node_by_tag()

struct rt_ofw_node * rt_ofw_find_node_by_tag ( struct rt_ofw_node * from,
const char * tag )

◆ rt_ofw_find_node_by_prop_r()

struct rt_ofw_node * rt_ofw_find_node_by_prop_r ( struct rt_ofw_node * from,
const char * propname,
const struct rt_ofw_prop ** out_prop )
+ 这是这个函数的调用关系图:

◆ rt_ofw_find_node_by_prop()

rt_inline struct rt_ofw_node * rt_ofw_find_node_by_prop ( struct rt_ofw_node * from,
const char * propname )

在文件 ofw.h169 行定义.

170{
171 return rt_ofw_find_node_by_prop_r(from, propname, RT_NULL);
172}

引用了 RT_NULL , 以及 rt_ofw_find_node_by_prop_r().

+ 函数调用图:

◆ rt_ofw_find_node_by_name()

struct rt_ofw_node * rt_ofw_find_node_by_name ( struct rt_ofw_node * from,
const char * name )

◆ rt_ofw_find_node_by_type()

struct rt_ofw_node * rt_ofw_find_node_by_type ( struct rt_ofw_node * from,
const char * type )

◆ rt_ofw_find_node_by_compatible()

struct rt_ofw_node * rt_ofw_find_node_by_compatible ( struct rt_ofw_node * from,
const char * compatible )

◆ rt_ofw_find_node_by_ids_r()

struct rt_ofw_node * rt_ofw_find_node_by_ids_r ( struct rt_ofw_node * from,
const struct rt_ofw_node_id * ids,
const struct rt_ofw_node_id ** out_id )
+ 这是这个函数的调用关系图:

◆ rt_ofw_find_node_by_path()

struct rt_ofw_node * rt_ofw_find_node_by_path ( const char * path)

◆ rt_ofw_find_node_by_phandle()

struct rt_ofw_node * rt_ofw_find_node_by_phandle ( rt_phandle phandle)

◆ rt_ofw_find_node_by_ids()

rt_inline struct rt_ofw_node * rt_ofw_find_node_by_ids ( struct rt_ofw_node * from,
const struct rt_ofw_node_id * ids )

在文件 ofw.h182 行定义.

183{
184 return rt_ofw_find_node_by_ids_r(from, ids, RT_NULL);
185}

引用了 RT_NULL , 以及 rt_ofw_find_node_by_ids_r().

+ 函数调用图:

◆ rt_ofw_get_parent()

struct rt_ofw_node * rt_ofw_get_parent ( const struct rt_ofw_node * np)

◆ rt_ofw_get_child_by_tag()

struct rt_ofw_node * rt_ofw_get_child_by_tag ( const struct rt_ofw_node * parent,
const char * tag )

◆ rt_ofw_get_child_by_compatible()

struct rt_ofw_node * rt_ofw_get_child_by_compatible ( const struct rt_ofw_node * parent,
const char * compatible )

◆ rt_ofw_get_child_count()

int rt_ofw_get_child_count ( const struct rt_ofw_node * np)

◆ rt_ofw_get_available_child_count()

int rt_ofw_get_available_child_count ( const struct rt_ofw_node * np)

◆ rt_ofw_get_next_node()

struct rt_ofw_node * rt_ofw_get_next_node ( struct rt_ofw_node * prev)

◆ rt_ofw_get_next_parent()

struct rt_ofw_node * rt_ofw_get_next_parent ( struct rt_ofw_node * prev)

◆ rt_ofw_get_next_child()

struct rt_ofw_node * rt_ofw_get_next_child ( const struct rt_ofw_node * parent,
struct rt_ofw_node * prev )

◆ rt_ofw_get_next_available_child()

struct rt_ofw_node * rt_ofw_get_next_available_child ( const struct rt_ofw_node * parent,
struct rt_ofw_node * prev )

◆ rt_ofw_get_cpu_node()

struct rt_ofw_node * rt_ofw_get_cpu_node ( int cpu,
int * thread,
rt_bool_t(* match_cpu_hwid )(int cpu, rt_uint64_t hwid) )

◆ rt_ofw_get_next_cpu_node()

struct rt_ofw_node * rt_ofw_get_next_cpu_node ( struct rt_ofw_node * prev)

◆ rt_ofw_get_cpu_state_node()

struct rt_ofw_node * rt_ofw_get_cpu_state_node ( struct rt_ofw_node * cpu_np,
int index )

◆ rt_ofw_get_cpu_id()

rt_uint64_t rt_ofw_get_cpu_id ( struct rt_ofw_node * cpu_np)

◆ rt_ofw_get_cpu_hwid()

rt_uint64_t rt_ofw_get_cpu_hwid ( struct rt_ofw_node * cpu_np,
unsigned int thread )

◆ rt_ofw_get_alias_node()

struct rt_ofw_node * rt_ofw_get_alias_node ( const char * tag,
int id )

◆ rt_ofw_get_alias_id()

int rt_ofw_get_alias_id ( struct rt_ofw_node * np,
const char * tag )

◆ rt_ofw_get_alias_last_id()

int rt_ofw_get_alias_last_id ( const char * tag)

◆ rt_ofw_map_id()

rt_err_t rt_ofw_map_id ( struct rt_ofw_node * np,
rt_uint32_t id,
const char * map_name,
const char * map_mask_name,
struct rt_ofw_node ** ref_np,
rt_uint32_t * out_id )

◆ rt_ofw_append_child()

struct rt_ofw_node * rt_ofw_append_child ( struct rt_ofw_node * parent,
const char * full_name )

◆ rt_ofw_append_prop()

rt_err_t rt_ofw_append_prop ( struct rt_ofw_node * np,
const char * name,
int length,
void * value )

◆ rt_ofw_parse_phandle()

struct rt_ofw_node * rt_ofw_parse_phandle ( const struct rt_ofw_node * np,
const char * phandle_name,
int index )

◆ rt_ofw_parse_phandle_cells()

rt_err_t rt_ofw_parse_phandle_cells ( const struct rt_ofw_node * np,
const char * list_name,
const char * cells_name,
int index,
struct rt_ofw_cell_args * out_args )

◆ rt_ofw_count_phandle_cells()

int rt_ofw_count_phandle_cells ( const struct rt_ofw_node * np,
const char * list_name,
const char * cells_name )

◆ rt_ofw_get_prop_fuzzy_name()

const char * rt_ofw_get_prop_fuzzy_name ( const struct rt_ofw_node * np,
const char * name )

◆ rt_ofw_get_prop()

struct rt_ofw_prop * rt_ofw_get_prop ( const struct rt_ofw_node * np,
const char * name,
rt_ssize_t * out_length )
+ 这是这个函数的调用关系图:

◆ rt_ofw_prop_read_raw()

rt_inline const void * rt_ofw_prop_read_raw ( const struct rt_ofw_node * np,
const char * name,
rt_ssize_t * out_length )

在文件 ofw.h223 行定义.

224{
225 struct rt_ofw_prop *prop = rt_ofw_get_prop(np, name, out_length);
226
227 return prop ? prop->value : RT_NULL;
228}
void * value
定义 ofw.h:27
const char * name
定义 ofw.h:25

引用了 rt_ofw_prop::name, RT_NULL, rt_ofw_get_prop() , 以及 rt_ofw_prop::value.

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ rt_ofw_prop_read_u8_array_index()

int rt_ofw_prop_read_u8_array_index ( const struct rt_ofw_node * np,
const char * propname,
int index,
int nr,
rt_uint8_t * out_values )
+ 这是这个函数的调用关系图:

◆ rt_ofw_prop_read_u16_array_index()

int rt_ofw_prop_read_u16_array_index ( const struct rt_ofw_node * np,
const char * propname,
int index,
int nr,
rt_uint16_t * out_values )
+ 这是这个函数的调用关系图:

◆ rt_ofw_prop_read_u32_array_index()

int rt_ofw_prop_read_u32_array_index ( const struct rt_ofw_node * np,
const char * propname,
int index,
int nr,
rt_uint32_t * out_values )
+ 这是这个函数的调用关系图:

◆ rt_ofw_prop_read_u64_array_index()

int rt_ofw_prop_read_u64_array_index ( const struct rt_ofw_node * np,
const char * propname,
int index,
int nr,
rt_uint64_t * out_values )
+ 这是这个函数的调用关系图:

◆ rt_ofw_prop_read_string_array_index()

int rt_ofw_prop_read_string_array_index ( const struct rt_ofw_node * np,
const char * propname,
int index,
int nr,
const char ** out_strings )
+ 这是这个函数的调用关系图:

◆ rt_ofw_prop_count_of_size()

int rt_ofw_prop_count_of_size ( const struct rt_ofw_node * np,
const char * propname,
int size )
+ 这是这个函数的调用关系图:

◆ rt_ofw_prop_index_of_string()

int rt_ofw_prop_index_of_string ( const struct rt_ofw_node * np,
const char * propname,
const char * string )

◆ rt_ofw_prop_next_u32()

const fdt32_t * rt_ofw_prop_next_u32 ( struct rt_ofw_prop * prop,
const fdt32_t * cur,
rt_uint32_t * out_value )

◆ rt_ofw_prop_next_string()

const char * rt_ofw_prop_next_string ( struct rt_ofw_prop * prop,
const char * cur )

◆ rt_ofw_prop_read_u8_index()

rt_inline rt_err_t rt_ofw_prop_read_u8_index ( const struct rt_ofw_node * np,
const char * propname,
int index,
rt_uint8_t * out_value )

在文件 ofw.h247 行定义.

249{
250 int nr = rt_ofw_prop_read_u8_array_index(np, propname, index, 1, out_value);
251
252 return nr > 0 ? RT_EOK : (rt_err_t)nr;
253}
int rt_ofw_prop_read_u8_array_index(const struct rt_ofw_node *np, const char *propname, int index, int nr, rt_uint8_t *out_values)
rt_base_t rt_err_t

引用了 rt_ofw_prop_read_u8_array_index().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ rt_ofw_prop_read_u16_index()

rt_inline rt_err_t rt_ofw_prop_read_u16_index ( const struct rt_ofw_node * np,
const char * propname,
int index,
rt_uint16_t * out_value )

在文件 ofw.h255 行定义.

257{
258 int nr = rt_ofw_prop_read_u16_array_index(np, propname, index, 1, out_value);
259
260 return nr > 0 ? RT_EOK : (rt_err_t)nr;
261}
int rt_ofw_prop_read_u16_array_index(const struct rt_ofw_node *np, const char *propname, int index, int nr, rt_uint16_t *out_values)

引用了 rt_ofw_prop_read_u16_array_index().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ rt_ofw_prop_read_u32_index()

rt_inline rt_err_t rt_ofw_prop_read_u32_index ( const struct rt_ofw_node * np,
const char * propname,
int index,
rt_uint32_t * out_value )

在文件 ofw.h263 行定义.

265{
266 int nr = rt_ofw_prop_read_u32_array_index(np, propname, index, 1, out_value);
267
268 return nr > 0 ? RT_EOK : (rt_err_t)nr;
269}
int rt_ofw_prop_read_u32_array_index(const struct rt_ofw_node *np, const char *propname, int index, int nr, rt_uint32_t *out_values)

引用了 rt_ofw_prop_read_u32_array_index().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ rt_ofw_prop_read_u64_index()

rt_inline rt_err_t rt_ofw_prop_read_u64_index ( const struct rt_ofw_node * np,
const char * propname,
int index,
rt_uint64_t * out_value )

在文件 ofw.h271 行定义.

273{
274 int nr = rt_ofw_prop_read_u64_array_index(np, propname, index, 1, out_value);
275
276 return nr > 0 ? RT_EOK : (rt_err_t)nr;
277}
int rt_ofw_prop_read_u64_array_index(const struct rt_ofw_node *np, const char *propname, int index, int nr, rt_uint64_t *out_values)

引用了 rt_ofw_prop_read_u64_array_index().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ rt_ofw_prop_read_string_index()

rt_inline rt_err_t rt_ofw_prop_read_string_index ( const struct rt_ofw_node * np,
const char * propname,
int index,
const char ** out_string )

在文件 ofw.h279 行定义.

281{
282 int nr = rt_ofw_prop_read_string_array_index(np, propname, index, 1, out_string);
283
284 return nr > 0 ? RT_EOK : (rt_err_t)nr;
285}
int rt_ofw_prop_read_string_array_index(const struct rt_ofw_node *np, const char *propname, int index, int nr, const char **out_strings)

引用了 rt_ofw_prop_read_string_array_index().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ rt_ofw_prop_read_u8()

rt_inline rt_err_t rt_ofw_prop_read_u8 ( const struct rt_ofw_node * np,
const char * propname,
rt_uint8_t * out_value )

在文件 ofw.h287 行定义.

289{
290 return rt_ofw_prop_read_u8_index(np, propname, 0, out_value);
291}
rt_inline rt_err_t rt_ofw_prop_read_u8_index(const struct rt_ofw_node *np, const char *propname, int index, rt_uint8_t *out_value)
定义 ofw.h:247

引用了 rt_ofw_prop_read_u8_index().

+ 函数调用图:

◆ rt_ofw_prop_read_u16()

rt_inline rt_err_t rt_ofw_prop_read_u16 ( const struct rt_ofw_node * np,
const char * propname,
rt_uint16_t * out_value )

在文件 ofw.h293 行定义.

295{
296 return rt_ofw_prop_read_u16_index(np, propname, 0, out_value);
297}
rt_inline rt_err_t rt_ofw_prop_read_u16_index(const struct rt_ofw_node *np, const char *propname, int index, rt_uint16_t *out_value)
定义 ofw.h:255

引用了 rt_ofw_prop_read_u16_index().

+ 函数调用图:

◆ rt_ofw_prop_read_u32()

rt_inline rt_err_t rt_ofw_prop_read_u32 ( const struct rt_ofw_node * np,
const char * propname,
rt_uint32_t * out_value )

在文件 ofw.h299 行定义.

301{
302 return rt_ofw_prop_read_u32_index(np, propname, 0, out_value);
303}
rt_inline rt_err_t rt_ofw_prop_read_u32_index(const struct rt_ofw_node *np, const char *propname, int index, rt_uint32_t *out_value)
定义 ofw.h:263

引用了 rt_ofw_prop_read_u32_index().

+ 函数调用图:

◆ rt_ofw_prop_read_s32()

rt_inline rt_err_t rt_ofw_prop_read_s32 ( const struct rt_ofw_node * np,
const char * propname,
rt_int32_t * out_value )

在文件 ofw.h305 行定义.

307{
308 return rt_ofw_prop_read_u32_index(np, propname, 0, (rt_uint32_t *)out_value);
309}
unsigned int rt_uint32_t

引用了 rt_ofw_prop_read_u32_index().

+ 函数调用图:

◆ rt_ofw_prop_read_u64()

rt_inline rt_err_t rt_ofw_prop_read_u64 ( const struct rt_ofw_node * np,
const char * propname,
rt_uint64_t * out_value )

在文件 ofw.h311 行定义.

313{
314 return rt_ofw_prop_read_u64_index(np, propname, 0, out_value);
315}
rt_inline rt_err_t rt_ofw_prop_read_u64_index(const struct rt_ofw_node *np, const char *propname, int index, rt_uint64_t *out_value)
定义 ofw.h:271

引用了 rt_ofw_prop_read_u64_index().

+ 函数调用图:

◆ rt_ofw_prop_read_string()

rt_inline rt_err_t rt_ofw_prop_read_string ( const struct rt_ofw_node * np,
const char * propname,
const char ** out_string )

在文件 ofw.h317 行定义.

319{
320 return rt_ofw_prop_read_string_index(np, propname, 0, out_string);
321}
rt_inline rt_err_t rt_ofw_prop_read_string_index(const struct rt_ofw_node *np, const char *propname, int index, const char **out_string)
定义 ofw.h:279

引用了 rt_ofw_prop_read_string_index().

+ 函数调用图:

◆ rt_ofw_prop_read_bool()

rt_inline rt_bool_t rt_ofw_prop_read_bool ( const struct rt_ofw_node * np,
const char * propname )

在文件 ofw.h323 行定义.

324{
325 return rt_ofw_get_prop(np, propname, RT_NULL) ? RT_TRUE : RT_FALSE;
326}
#define RT_TRUE
#define RT_FALSE

引用了 RT_FALSE, RT_NULL, rt_ofw_get_prop() , 以及 RT_TRUE.

+ 函数调用图:

◆ rt_ofw_prop_count_of_u8()

rt_inline int rt_ofw_prop_count_of_u8 ( const struct rt_ofw_node * np,
const char * propname )

在文件 ofw.h328 行定义.

329{
330 return rt_ofw_prop_count_of_size(np, propname, sizeof(rt_uint8_t));
331}
int rt_ofw_prop_count_of_size(const struct rt_ofw_node *np, const char *propname, int size)
unsigned char rt_uint8_t

引用了 rt_ofw_prop_count_of_size().

+ 函数调用图:

◆ rt_ofw_prop_count_of_u16()

rt_inline int rt_ofw_prop_count_of_u16 ( const struct rt_ofw_node * np,
const char * propname )

在文件 ofw.h333 行定义.

334{
335 return rt_ofw_prop_count_of_size(np, propname, sizeof(rt_uint16_t));
336}
unsigned short rt_uint16_t

引用了 rt_ofw_prop_count_of_size().

+ 函数调用图:

◆ rt_ofw_prop_count_of_u32()

rt_inline int rt_ofw_prop_count_of_u32 ( const struct rt_ofw_node * np,
const char * propname )

在文件 ofw.h338 行定义.

339{
340 return rt_ofw_prop_count_of_size(np, propname, sizeof(rt_uint32_t));
341}

引用了 rt_ofw_prop_count_of_size().

+ 函数调用图:

◆ rt_ofw_prop_count_of_u64()

rt_inline int rt_ofw_prop_count_of_u64 ( const struct rt_ofw_node * np,
const char * propname )

在文件 ofw.h343 行定义.

344{
345 return rt_ofw_prop_count_of_size(np, propname, sizeof(rt_uint64_t));
346}
unsigned long long rt_uint64_t

引用了 rt_ofw_prop_count_of_size().

+ 函数调用图:

◆ rt_ofw_node_type()

rt_inline const char * rt_ofw_node_type ( const struct rt_ofw_node * np)

在文件 ofw.h348 行定义.

349{
350 return rt_ofw_prop_read_raw(np, "device_type", RT_NULL);
351}
rt_inline const void * rt_ofw_prop_read_raw(const struct rt_ofw_node *np, const char *name, rt_ssize_t *out_length)
定义 ofw.h:223

引用了 RT_NULL , 以及 rt_ofw_prop_read_raw().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ rt_ofw_node_is_type()

rt_inline rt_bool_t rt_ofw_node_is_type ( const struct rt_ofw_node * np,
const char * type )

在文件 ofw.h353 行定义.

354{
355 const char *get_type = rt_ofw_node_type(np);
356
357 return np && get_type && type && !rt_strcmp(get_type, type);
358}
rt_inline const char * rt_ofw_node_type(const struct rt_ofw_node *np)
定义 ofw.h:348

引用了 rt_ofw_node_type().

+ 函数调用图:

◆ rt_ofw_stub_probe_range()

struct rt_ofw_stub * rt_ofw_stub_probe_range ( struct rt_ofw_node * np,
const struct rt_ofw_stub * stub_start,
const struct rt_ofw_stub * stub_end )

◆ rt_ofw_parse_object()

struct rt_object * rt_ofw_parse_object ( struct rt_ofw_node * np,
const char * obj_name,
const char * cells_name )

◆ rt_ofw_console_setup()

rt_err_t rt_ofw_console_setup ( void )

◆ rt_ofw_bootargs_select()

const char * rt_ofw_bootargs_select ( const char * key,
int index )