fwnode_operations
Regular
4.4
: Absent ⚠️
4.8
: Absent ⚠️
4.10
: Absent ⚠️
4.13
: ✅struct fwnode_operations {
void (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(struct fwnode_handle *);
bool (*property_present)(struct fwnode_handle *, const char *);
int (*property_read_int_array)(struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(struct fwnode_handle *, const char *, const char **, size_t);
struct fwnode_handle * (*get_parent)(struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(struct fwnode_handle *, const char *);
struct fwnode_handle * (*graph_get_next_endpoint)(struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(struct fwnode_handle *, struct fwnode_endpoint *);
};
4.15
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
};
4.18
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
};
5.0
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
};
5.3
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
};
5.4
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
};
5.8
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
const char * (*get_name)(const struct fwnode_handle *);
const char * (*get_name_prefix)(const struct fwnode_handle *);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
int (*add_links)(const struct fwnode_handle *, struct device *);
};
5.11
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
const char * (*get_name)(const struct fwnode_handle *);
const char * (*get_name_prefix)(const struct fwnode_handle *);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
int (*add_links)(struct fwnode_handle *);
};
5.13
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
const char * (*get_name)(const struct fwnode_handle *);
const char * (*get_name_prefix)(const struct fwnode_handle *);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
int (*add_links)(struct fwnode_handle *);
};
5.15
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
const char * (*get_name)(const struct fwnode_handle *);
const char * (*get_name_prefix)(const struct fwnode_handle *);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
int (*add_links)(struct fwnode_handle *);
};
5.19
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*device_dma_supported)(const struct fwnode_handle *);
enum dev_dma_attr (*device_get_dma_attr)(const struct fwnode_handle *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
const char * (*get_name)(const struct fwnode_handle *);
const char * (*get_name_prefix)(const struct fwnode_handle *);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
void * (*iomap)(struct fwnode_handle *, int);
int (*irq_get)(const struct fwnode_handle *, unsigned int);
int (*add_links)(struct fwnode_handle *);
};
6.2
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*device_dma_supported)(const struct fwnode_handle *);
enum dev_dma_attr (*device_get_dma_attr)(const struct fwnode_handle *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
const char * (*get_name)(const struct fwnode_handle *);
const char * (*get_name_prefix)(const struct fwnode_handle *);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
void * (*iomap)(struct fwnode_handle *, int);
int (*irq_get)(const struct fwnode_handle *, unsigned int);
int (*add_links)(struct fwnode_handle *);
};
6.5
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*device_dma_supported)(const struct fwnode_handle *);
enum dev_dma_attr (*device_get_dma_attr)(const struct fwnode_handle *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
const char * (*get_name)(const struct fwnode_handle *);
const char * (*get_name_prefix)(const struct fwnode_handle *);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
void * (*iomap)(struct fwnode_handle *, int);
int (*irq_get)(const struct fwnode_handle *, unsigned int);
int (*add_links)(struct fwnode_handle *);
};
6.8
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*device_dma_supported)(const struct fwnode_handle *);
enum dev_dma_attr (*device_get_dma_attr)(const struct fwnode_handle *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
const char * (*get_name)(const struct fwnode_handle *);
const char * (*get_name_prefix)(const struct fwnode_handle *);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
void * (*iomap)(struct fwnode_handle *, int);
int (*irq_get)(const struct fwnode_handle *, unsigned int);
int (*add_links)(struct fwnode_handle *);
};
arm64
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
};
armhf
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
};
ppc64el
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
};
riscv64
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
};
aws
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
};
azure
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
};
gcp
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
};
lowlatency
: ✅struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
};
Regular
4.13
and 4.15
⚠️int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *)
void (*get)(struct fwnode_handle *)
➡️ struct fwnode_handle * (*get)(struct fwnode_handle *)
bool (*device_is_available)(struct fwnode_handle *)
➡️ bool (*device_is_available)(const struct fwnode_handle *)
bool (*property_present)(struct fwnode_handle *, const char *)
➡️ bool (*property_present)(const struct fwnode_handle *, const char *)
int (*property_read_int_array)(struct fwnode_handle *, const char *, unsigned int, void *, size_t)
➡️ int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t)
int (*property_read_string_array)(struct fwnode_handle *, const char *, const char **, size_t)
➡️ int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t)
struct fwnode_handle * (*get_parent)(struct fwnode_handle *)
➡️ struct fwnode_handle * (*get_parent)(const struct fwnode_handle *)
struct fwnode_handle * (*get_next_child_node)(struct fwnode_handle *, struct fwnode_handle *)
➡️ struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *)
struct fwnode_handle * (*get_named_child_node)(struct fwnode_handle *, const char *)
➡️ struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *)
struct fwnode_handle * (*graph_get_next_endpoint)(struct fwnode_handle *, struct fwnode_handle *)
➡️ struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *)
struct fwnode_handle * (*graph_get_remote_endpoint)(struct fwnode_handle *)
➡️ struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *)
int (*graph_parse_endpoint)(struct fwnode_handle *, struct fwnode_endpoint *)
➡️ int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *)
4.15
and 4.18
⚠️const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *)
4.18
and 5.0
✅
5.0
and 5.3
✅
5.3
and 5.4
✅
5.4
and 5.8
⚠️const char * (*get_name)(const struct fwnode_handle *)
const char * (*get_name_prefix)(const struct fwnode_handle *)
int (*add_links)(const struct fwnode_handle *, struct device *)
5.8
and 5.11
⚠️int (*add_links)(const struct fwnode_handle *, struct device *)
➡️ int (*add_links)(struct fwnode_handle *)
5.11
and 5.13
✅
5.13
and 5.15
✅
5.15
and 5.19
⚠️bool (*device_dma_supported)(const struct fwnode_handle *)
enum dev_dma_attr (*device_get_dma_attr)(const struct fwnode_handle *)
void * (*iomap)(struct fwnode_handle *, int)
int (*irq_get)(const struct fwnode_handle *, unsigned int)
5.19
and 6.2
✅
6.2
and 6.5
✅
6.5
and 6.8
✅
amd64
and arm64
✅
amd64
and armhf
✅
amd64
and ppc64el
✅
amd64
and riscv64
✅
generic
and aws
✅
generic
and azure
✅
generic
and gcp
✅
generic
and lowlatency
✅