Lines Matching refs:fwnode
3 * fwnode.h - Firmware device node object handle type definition.
27 * @local_fwnode: reference to the related fwnode
39 * @fwnode:- A reference to the base fwnode
41 * @args: Integer arguments on the fwnode
44 struct fwnode_handle *fwnode;
50 * struct fwnode_operations - Operations for fwnode interface
51 * @get: Get a reference to an fwnode.
52 * @put: Put a reference to an fwnode.
60 * @get_name: Return the name of an fwnode.
62 * @get_parent: Return the parent of an fwnode.
71 * @add_links: Called after the device corresponding to the fwnode is added
90 * device (that corresponds to this fwnode) and link to them
111 struct fwnode_handle *(*get)(struct fwnode_handle *fwnode);
112 void (*put)(struct fwnode_handle *fwnode);
113 bool (*device_is_available)(const struct fwnode_handle *fwnode);
114 const void *(*device_get_match_data)(const struct fwnode_handle *fwnode,
116 bool (*property_present)(const struct fwnode_handle *fwnode,
118 int (*property_read_int_array)(const struct fwnode_handle *fwnode,
126 const char *(*get_name)(const struct fwnode_handle *fwnode);
127 const char *(*get_name_prefix)(const struct fwnode_handle *fwnode);
128 struct fwnode_handle *(*get_parent)(const struct fwnode_handle *fwnode);
130 (*get_next_child_node)(const struct fwnode_handle *fwnode,
133 (*get_named_child_node)(const struct fwnode_handle *fwnode,
135 int (*get_reference_args)(const struct fwnode_handle *fwnode,
140 (*graph_get_next_endpoint)(const struct fwnode_handle *fwnode,
143 (*graph_get_remote_endpoint)(const struct fwnode_handle *fwnode);
145 (*graph_get_port_parent)(struct fwnode_handle *fwnode);
146 int (*graph_parse_endpoint)(const struct fwnode_handle *fwnode,
148 int (*add_links)(const struct fwnode_handle *fwnode,
152 #define fwnode_has_op(fwnode, op) \
153 ((fwnode) && (fwnode)->ops && (fwnode)->ops->op)
154 #define fwnode_call_int_op(fwnode, op, ...) \
155 (fwnode ? (fwnode_has_op(fwnode, op) ? \
156 (fwnode)->ops->op(fwnode, ## __VA_ARGS__) : -ENXIO) : \
159 #define fwnode_call_bool_op(fwnode, op, ...) \
160 (fwnode_has_op(fwnode, op) ? \
161 (fwnode)->ops->op(fwnode, ## __VA_ARGS__) : false)
163 #define fwnode_call_ptr_op(fwnode, op, ...) \
164 (fwnode_has_op(fwnode, op) ? \
165 (fwnode)->ops->op(fwnode, ## __VA_ARGS__) : NULL)
166 #define fwnode_call_void_op(fwnode, op, ...) \
168 if (fwnode_has_op(fwnode, op)) \
169 (fwnode)->ops->op(fwnode, ## __VA_ARGS__); \
171 #define get_dev_from_fwnode(fwnode) get_device((fwnode)->dev)