Lines Matching refs:fwnode

93 	struct fwnode_handle *fwnode;  member
124 struct fwnode_handle *(*get)(struct fwnode_handle *fwnode);
125 void (*put)(struct fwnode_handle *fwnode);
126 bool (*device_is_available)(const struct fwnode_handle *fwnode);
127 const void *(*device_get_match_data)(const struct fwnode_handle *fwnode,
129 bool (*device_dma_supported)(const struct fwnode_handle *fwnode);
131 (*device_get_dma_attr)(const struct fwnode_handle *fwnode);
132 bool (*property_present)(const struct fwnode_handle *fwnode,
134 int (*property_read_int_array)(const struct fwnode_handle *fwnode,
142 const char *(*get_name)(const struct fwnode_handle *fwnode);
143 const char *(*get_name_prefix)(const struct fwnode_handle *fwnode);
144 struct fwnode_handle *(*get_parent)(const struct fwnode_handle *fwnode);
146 (*get_next_child_node)(const struct fwnode_handle *fwnode,
149 (*get_named_child_node)(const struct fwnode_handle *fwnode,
151 int (*get_reference_args)(const struct fwnode_handle *fwnode,
156 (*graph_get_next_endpoint)(const struct fwnode_handle *fwnode,
159 (*graph_get_remote_endpoint)(const struct fwnode_handle *fwnode);
161 (*graph_get_port_parent)(struct fwnode_handle *fwnode);
162 int (*graph_parse_endpoint)(const struct fwnode_handle *fwnode,
164 void __iomem *(*iomap)(struct fwnode_handle *fwnode, int index);
165 int (*irq_get)(const struct fwnode_handle *fwnode, unsigned int index);
166 int (*add_links)(struct fwnode_handle *fwnode);
169 #define fwnode_has_op(fwnode, op) \ argument
170 (!IS_ERR_OR_NULL(fwnode) && (fwnode)->ops && (fwnode)->ops->op)
172 #define fwnode_call_int_op(fwnode, op, ...) \ argument
173 (fwnode_has_op(fwnode, op) ? \
174 (fwnode)->ops->op(fwnode, ## __VA_ARGS__) : (IS_ERR_OR_NULL(fwnode) ? -EINVAL : -ENXIO))
176 #define fwnode_call_bool_op(fwnode, op, ...) \ argument
177 (fwnode_has_op(fwnode, op) ? \
178 (fwnode)->ops->op(fwnode, ## __VA_ARGS__) : false)
180 #define fwnode_call_ptr_op(fwnode, op, ...) \ argument
181 (fwnode_has_op(fwnode, op) ? \
182 (fwnode)->ops->op(fwnode, ## __VA_ARGS__) : NULL)
183 #define fwnode_call_void_op(fwnode, op, ...) \ argument
185 if (fwnode_has_op(fwnode, op)) \
186 (fwnode)->ops->op(fwnode, ## __VA_ARGS__); \
188 #define get_dev_from_fwnode(fwnode) get_device((fwnode)->dev) argument
190 static inline void fwnode_init(struct fwnode_handle *fwnode, in fwnode_init() argument
193 fwnode->ops = ops; in fwnode_init()
194 INIT_LIST_HEAD(&fwnode->consumers); in fwnode_init()
195 INIT_LIST_HEAD(&fwnode->suppliers); in fwnode_init()
198 static inline void fwnode_dev_initialized(struct fwnode_handle *fwnode, in fwnode_dev_initialized() argument
201 if (IS_ERR_OR_NULL(fwnode)) in fwnode_dev_initialized()
205 fwnode->flags |= FWNODE_FLAG_INITIALIZED; in fwnode_dev_initialized()
207 fwnode->flags &= ~FWNODE_FLAG_INITIALIZED; in fwnode_dev_initialized()
212 void fwnode_links_purge(struct fwnode_handle *fwnode);
213 void fw_devlink_purge_absent_suppliers(struct fwnode_handle *fwnode);