diff --git a/drivers/base/base.h b/drivers/base/base.h index 8423148155a3..23828bd920db 100644 --- a/drivers/base/base.h +++ b/drivers/base/base.h @@ -228,6 +228,9 @@ struct devres_node { size_t size; }; +void devres_node_init(struct devres_node *node, dr_node_release_t release, + dr_node_free_t free_node); +void devres_node_add(struct device *dev, struct devres_node *node); void devres_for_each_res(struct device *dev, dr_release_t release, dr_match_t match, void *match_data, void (*fn)(struct device *, void *, void *), diff --git a/drivers/base/devres.c b/drivers/base/devres.c index 5202af4d5029..22d10b30774f 100644 --- a/drivers/base/devres.c +++ b/drivers/base/devres.c @@ -36,9 +36,9 @@ struct devres_group { /* -- 8 pointers */ }; -static void devres_node_init(struct devres_node *node, - dr_node_release_t release, - dr_node_free_t free_node) +void devres_node_init(struct devres_node *node, + dr_node_release_t release, + dr_node_free_t free_node) { INIT_LIST_HEAD(&node->entry); node->release = release; @@ -258,7 +258,7 @@ void devres_free(void *res) } EXPORT_SYMBOL_GPL(devres_free); -static void devres_node_add(struct device *dev, struct devres_node *node) +void devres_node_add(struct device *dev, struct devres_node *node) { guard(spinlock_irqsave)(&dev->devres_lock);