Lines Matching refs:fwnode

84 	struct fwnode_handle *fwnode;  member
115 struct fwnode_handle *(*get)(struct fwnode_handle *fwnode);
116 void (*put)(struct fwnode_handle *fwnode);
117 bool (*device_is_available)(const struct fwnode_handle *fwnode);
118 const void *(*device_get_match_data)(const struct fwnode_handle *fwnode,
120 bool (*device_dma_supported)(const struct fwnode_handle *fwnode);
122 (*device_get_dma_attr)(const struct fwnode_handle *fwnode);
123 bool (*property_present)(const struct fwnode_handle *fwnode,
125 int (*property_read_int_array)(const struct fwnode_handle *fwnode,
133 const char *(*get_name)(const struct fwnode_handle *fwnode);
134 const char *(*get_name_prefix)(const struct fwnode_handle *fwnode);
135 struct fwnode_handle *(*get_parent)(const struct fwnode_handle *fwnode);
137 (*get_next_child_node)(const struct fwnode_handle *fwnode,
140 (*get_named_child_node)(const struct fwnode_handle *fwnode,
142 int (*get_reference_args)(const struct fwnode_handle *fwnode,
147 (*graph_get_next_endpoint)(const struct fwnode_handle *fwnode,
150 (*graph_get_remote_endpoint)(const struct fwnode_handle *fwnode);
152 (*graph_get_port_parent)(struct fwnode_handle *fwnode);
153 int (*graph_parse_endpoint)(const struct fwnode_handle *fwnode,
155 void __iomem *(*iomap)(struct fwnode_handle *fwnode, int index);
156 int (*irq_get)(const struct fwnode_handle *fwnode, unsigned int index);
157 int (*add_links)(struct fwnode_handle *fwnode);
160 #define fwnode_has_op(fwnode, op) \ argument
161 (!IS_ERR_OR_NULL(fwnode) && (fwnode)->ops && (fwnode)->ops->op)
163 #define fwnode_call_int_op(fwnode, op, ...) \ argument
164 (fwnode_has_op(fwnode, op) ? \
165 (fwnode)->ops->op(fwnode, ## __VA_ARGS__) : (IS_ERR_OR_NULL(fwnode) ? -EINVAL : -ENXIO))
167 #define fwnode_call_bool_op(fwnode, op, ...) \ argument
168 (fwnode_has_op(fwnode, op) ? \
169 (fwnode)->ops->op(fwnode, ## __VA_ARGS__) : false)
171 #define fwnode_call_ptr_op(fwnode, op, ...) \ argument
172 (fwnode_has_op(fwnode, op) ? \
173 (fwnode)->ops->op(fwnode, ## __VA_ARGS__) : NULL)
174 #define fwnode_call_void_op(fwnode, op, ...) \ argument
176 if (fwnode_has_op(fwnode, op)) \
177 (fwnode)->ops->op(fwnode, ## __VA_ARGS__); \
179 #define get_dev_from_fwnode(fwnode) get_device((fwnode)->dev) argument
181 static inline void fwnode_init(struct fwnode_handle *fwnode, in fwnode_init() argument
184 fwnode->ops = ops; in fwnode_init()
185 INIT_LIST_HEAD(&fwnode->consumers); in fwnode_init()
186 INIT_LIST_HEAD(&fwnode->suppliers); in fwnode_init()
189 static inline void fwnode_dev_initialized(struct fwnode_handle *fwnode, in fwnode_dev_initialized() argument
192 if (IS_ERR_OR_NULL(fwnode)) in fwnode_dev_initialized()
196 fwnode->flags |= FWNODE_FLAG_INITIALIZED; in fwnode_dev_initialized()
198 fwnode->flags &= ~FWNODE_FLAG_INITIALIZED; in fwnode_dev_initialized()
204 void fwnode_links_purge(struct fwnode_handle *fwnode);
205 void fw_devlink_purge_absent_suppliers(struct fwnode_handle *fwnode);