5 /* DCA Notifier Interface */
6 void dca_register_notify(struct notifier_block
*nb
);
7 void dca_unregister_notify(struct notifier_block
*nb
);
9 #define DCA_PROVIDER_ADD 0x0001
10 #define DCA_PROVIDER_REMOVE 0x0002
14 struct class_device
*cd
;
19 int (*add_requester
) (struct dca_provider
*, struct device
*);
20 int (*remove_requester
) (struct dca_provider
*, struct device
*);
21 u8 (*get_tag
) (struct dca_provider
*, int cpu
);
24 struct dca_provider
*alloc_dca_provider(struct dca_ops
*ops
, int priv_size
);
25 void free_dca_provider(struct dca_provider
*dca
);
26 int register_dca_provider(struct dca_provider
*dca
, struct device
*dev
);
27 void unregister_dca_provider(struct dca_provider
*dca
);
29 static inline void *dca_priv(struct dca_provider
*dca
)
31 return (void *)dca
+ sizeof(struct dca_provider
);
35 int dca_add_requester(struct device
*dev
);
36 int dca_remove_requester(struct device
*dev
);
37 u8
dca_get_tag(int cpu
);
40 int __init
dca_sysfs_init(void);
41 void __exit
dca_sysfs_exit(void);
42 int dca_sysfs_add_provider(struct dca_provider
*dca
, struct device
*dev
);
43 void dca_sysfs_remove_provider(struct dca_provider
*dca
);
44 int dca_sysfs_add_req(struct dca_provider
*dca
, struct device
*dev
, int slot
);
45 void dca_sysfs_remove_req(struct dca_provider
*dca
, int slot
);