4 #include <linux/stddef.h>
9 int (*bind
)(struct device
*comp
, struct device
*master
,
11 void (*unbind
)(struct device
*comp
, struct device
*master
,
15 int component_add(struct device
*, const struct component_ops
*);
16 void component_del(struct device
*, const struct component_ops
*);
18 int component_bind_all(struct device
*master
, void *master_data
);
19 void component_unbind_all(struct device
*master
, void *master_data
);
23 struct component_master_ops
{
24 int (*bind
)(struct device
*master
);
25 void (*unbind
)(struct device
*master
);
28 void component_master_del(struct device
*,
29 const struct component_master_ops
*);
31 struct component_match
;
33 int component_master_add_with_match(struct device
*,
34 const struct component_master_ops
*, struct component_match
*);
35 void component_match_add_release(struct device
*master
,
36 struct component_match
**matchptr
,
37 void (*release
)(struct device
*, void *),
38 int (*compare
)(struct device
*, void *), void *compare_data
);
40 static inline void component_match_add(struct device
*master
,
41 struct component_match
**matchptr
,
42 int (*compare
)(struct device
*, void *), void *compare_data
)
44 component_match_add_release(master
, matchptr
, NULL
, compare
,