summaryrefslogtreecommitdiffstats
path: root/drivers/dax
diff options
context:
space:
mode:
authorDan Williams <dan.j.williams@intel.com>2019-11-13 02:12:23 +0100
committerDan Williams <dan.j.williams@intel.com>2019-11-19 18:52:12 +0100
commit770619a95106340230a72a725c958c037284ec1f (patch)
tree66dab7a09fc476dc6cfc7e7bea2b3394ebcdad75 /drivers/dax
parentlibnvdimm: Move nvdimm_bus_attribute_group to device_type (diff)
downloadlinux-770619a95106340230a72a725c958c037284ec1f.tar.xz
linux-770619a95106340230a72a725c958c037284ec1f.zip
dax: Create a dax device_type
Move the open coded release method and attribute groups to a 'struct device_type' instance. Cc: Ira Weiny <ira.weiny@intel.com> Cc: Vishal Verma <vishal.l.verma@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com> Reviewed-by: Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com> Link: https://lore.kernel.org/r/157309904365.1582359.5451327195246651379.stgit@dwillia2-desk3.amr.corp.intel.com
Diffstat (limited to 'drivers/dax')
-rw-r--r--drivers/dax/bus.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/dax/bus.c b/drivers/dax/bus.c
index 8fafbeab510a..f3e6e00ece40 100644
--- a/drivers/dax/bus.c
+++ b/drivers/dax/bus.c
@@ -373,6 +373,11 @@ static void dev_dax_release(struct device *dev)
kfree(dev_dax);
}
+static const struct device_type dev_dax_type = {
+ .release = dev_dax_release,
+ .groups = dax_attribute_groups,
+};
+
static void unregister_dev_dax(void *dev)
{
struct dev_dax *dev_dax = to_dev_dax(dev);
@@ -430,8 +435,7 @@ struct dev_dax *__devm_create_dev_dax(struct dax_region *dax_region, int id,
else
dev->class = dax_class;
dev->parent = parent;
- dev->groups = dax_attribute_groups;
- dev->release = dev_dax_release;
+ dev->type = &dev_dax_type;
dev_set_name(dev, "dax%d.%d", dax_region->id, id);
rc = device_add(dev);