Home
last modified time | relevance | path

Searched refs:dev_dax (Results 1 – 8 of 8) sorted by relevance

/openbmc/linux/drivers/dax/
H A Dbus.c62 struct dev_dax *dev_dax = to_dev_dax(dev); in dax_match_type() local
64 if (dev_dax->region->res.flags & IORESOURCE_DAX_KMEM) in dax_match_type()
172 bool static_dev_dax(struct dev_dax *dev_dax) in static_dev_dax() argument
174 return is_static(dev_dax->region); in static_dev_dax()
178 static u64 dev_dax_size(struct dev_dax *dev_dax) in dev_dax_size() argument
183 device_lock_assert(&dev_dax->dev); in dev_dax_size()
185 for (i = 0; i < dev_dax->nr_range; i++) in dev_dax_size()
186 size += range_len(&dev_dax->ranges[i].range); in dev_dax_size()
194 struct dev_dax *dev_dax = to_dev_dax(dev); in dax_bus_probe() local
195 struct dax_region *dax_region = dev_dax->region; in dax_bus_probe()
[all …]
H A Ddevice.c17 static int check_vma(struct dev_dax *dev_dax, struct vm_area_struct *vma, in check_vma() argument
20 struct device *dev = &dev_dax->dev; in check_vma()
23 if (!dax_alive(dev_dax->dax_dev)) in check_vma()
34 mask = dev_dax->align - 1; in check_vma()
54 __weak phys_addr_t dax_pgoff_to_phys(struct dev_dax *dev_dax, pgoff_t pgoff, in dax_pgoff_to_phys() argument
59 for (i = 0; i < dev_dax->nr_range; i++) { in dax_pgoff_to_phys()
60 struct dev_dax_range *dax_range = &dev_dax->ranges[i]; in dax_pgoff_to_phys()
81 struct dev_dax *dev_dax = filp->private_data; in dax_set_mapping() local
85 if (dev_dax->pgmap->vmemmap_shift) in dax_set_mapping()
103 static vm_fault_t __dev_dax_pte_fault(struct dev_dax *dev_dax, in __dev_dax_pte_fault() argument
[all …]
H A Dkmem.c30 static int dax_kmem_range(struct dev_dax *dev_dax, int i, struct range *r) in dax_kmem_range() argument
32 struct dev_dax_range *dax_range = &dev_dax->ranges[i]; in dax_kmem_range()
53 static int dev_dax_kmem_probe(struct dev_dax *dev_dax) in dev_dax_kmem_probe() argument
55 struct device *dev = &dev_dax->dev; in dev_dax_kmem_probe()
67 numa_node = dev_dax->target_node; in dev_dax_kmem_probe()
74 for (i = 0; i < dev_dax->nr_range; i++) { in dev_dax_kmem_probe()
77 rc = dax_kmem_range(dev_dax, i, &range); in dev_dax_kmem_probe()
94 data = kzalloc(struct_size(data, res, dev_dax->nr_range), GFP_KERNEL); in dev_dax_kmem_probe()
107 for (i = 0; i < dev_dax->nr_range; i++) { in dev_dax_kmem_probe()
111 rc = dax_kmem_range(dev_dax, i, &range); in dev_dax_kmem_probe()
[all …]
H A Dbus.h8 struct dev_dax;
28 struct dev_dax *devm_create_dev_dax(struct dev_dax_data *data);
39 int (*probe)(struct dev_dax *dev);
40 void (*remove)(struct dev_dax *dev);
48 void kill_dev_dax(struct dev_dax *dev_dax);
49 bool static_dev_dax(struct dev_dax *dev_dax);
H A Ddax-private.h63 struct dev_dax { struct
88 static inline struct dev_dax *to_dev_dax(struct device *dev) in to_dev_dax() argument
90 return container_of(dev, struct dev_dax, dev); in to_dev_dax()
98 phys_addr_t dax_pgoff_to_phys(struct dev_dax *dev_dax, pgoff_t pgoff, unsigned long size);
H A Dpmem.c10 static struct dev_dax *__dax_pmem_probe(struct device *dev) in __dax_pmem_probe()
/openbmc/linux/tools/testing/nvdimm/
H A Ddax-dev.c9 phys_addr_t dax_pgoff_to_phys(struct dev_dax *dev_dax, pgoff_t pgoff, in dax_pgoff_to_phys() argument
14 for (i = 0; i < dev_dax->nr_range; i++) { in dax_pgoff_to_phys()
15 struct dev_dax_range *dax_range = &dev_dax->ranges[i]; in dax_pgoff_to_phys()
28 if (dev_dax->region->align > PAGE_SIZE) in dax_pgoff_to_phys()
/openbmc/linux/mm/
H A DKconfig517 # to enable the feature of HugeTLB/dev_dax vmemmap optimization.