Home
last modified time | relevance | path

Searched refs:devres (Results 1 – 25 of 45) sorted by relevance

12

/linux/drivers/clk/
A Dclk-devres.c139 clk_bulk_put(devres->num_clks, devres->clks); in devm_clk_bulk_release()
150 if (!devres) in __devm_clk_bulk_get()
158 devres->clks = clks; in __devm_clk_bulk_get()
162 devres_free(devres); in __devm_clk_bulk_get()
186 clk_bulk_put_all(devres->num_clks, devres->clks); in devm_clk_bulk_release_all()
197 if (!devres) in devm_clk_bulk_get_all()
206 devres_free(devres); in devm_clk_bulk_get_all()
217 clk_bulk_disable_unprepare(devres->num_clks, devres->clks); in devm_clk_bulk_release_all_enable()
218 clk_bulk_put_all(devres->num_clks, devres->clks); in devm_clk_bulk_release_all_enable()
229 if (!devres) in devm_clk_bulk_get_all_enable()
[all …]
/linux/drivers/base/
A Ddevres.c26 struct devres { struct
114 struct devres *dr; in alloc_dr()
165 struct devres *dr; in __devres_alloc_node()
205 struct devres *dr = container_of(node, struct devres, node); in devres_for_each_res()
226 struct devres *dr = container_of(res, struct devres, data); in devres_free()
245 struct devres *dr = container_of(res, struct devres, data); in devres_add()
260 struct devres *dr = container_of(node, struct devres, node); in find_dr()
722 devres->action(devres->data); in devm_action_release()
741 if (!devres) in __devm_add_action()
1110 free_pages(devres->addr, devres->order); in devm_pages_release()
[all …]
A Dtrace.h19 DECLARE_EVENT_CLASS(devres,
41 DEFINE_EVENT(devres, devres_log,
A DMakefile6 cpu.o firmware.o init.o map.o devres.o \
A DKconfig145 This option enables kernel parameter devres.log. If set to
146 non-zero, devres debug messages are printed. Select this if
147 you are having a problem with devres or want to debug
148 resource management for a managed device. devres.log can be
/linux/drivers/interconnect/
A Dbulk.c126 struct icc_bulk_devres *devres = res; in devm_icc_bulk_release() local
128 icc_bulk_put(devres->num_paths, devres->paths); in devm_icc_bulk_release()
141 struct icc_bulk_devres *devres; in devm_of_icc_bulk_get() local
144 devres = devres_alloc(devm_icc_bulk_release, sizeof(*devres), GFP_KERNEL); in devm_of_icc_bulk_get()
145 if (!devres) in devm_of_icc_bulk_get()
150 devres->paths = paths; in devm_of_icc_bulk_get()
151 devres->num_paths = num_paths; in devm_of_icc_bulk_get()
152 devres_add(dev, devres); in devm_of_icc_bulk_get()
154 devres_free(devres); in devm_of_icc_bulk_get()
/linux/drivers/regulator/
A Ddevres.c245 regulator_bulk_free(devres->num_consumers, devres->consumers); in devm_regulator_bulk_release()
252 struct regulator_bulk_devres *devres; in _devm_regulator_bulk_get() local
256 sizeof(*devres), GFP_KERNEL); in _devm_regulator_bulk_get()
257 if (!devres) in _devm_regulator_bulk_get()
262 devres->consumers = consumers; in _devm_regulator_bulk_get()
264 devres_add(dev, devres); in _devm_regulator_bulk_get()
266 devres_free(devres); in _devm_regulator_bulk_get()
407 struct regulator_bulk_devres *devres; in devm_regulator_bulk_get_enable() local
411 devres = devm_kmalloc(dev, sizeof(*devres), GFP_KERNEL); in devm_regulator_bulk_get_enable()
412 if (!devres) in devm_regulator_bulk_get_enable()
[all …]
/linux/Documentation/driver-api/driver-model/
A Ddevres.rst13 3. Devres Group : Group devres'es and release them together
22 devres came up while trying to convert libata to use iomap. Each
50 devres is basically linked list of arbitrarily sized memory areas
52 a release function. A devres can be released in several ways. No
53 matter what, all devres entries are released on driver detach. On
55 devres entry is freed.
207 Lifetime of a devres entry begins on devres allocation and finishes
211 devres core guarantees atomicity to all basic devres operations and
212 has support for single-instance devres types (atomic
214 concurrent accesses to allocated devres data is caller's
[all …]
A Dindex.rst12 devres
/linux/Documentation/translations/zh_CN/driver-api/phy/
A Dphy.rst120 获取 PHY 后使用 devres 将设备与 PHY 关联。在驱动程序分离时,将在
121 devres 数据上调用 release 函数并释放 devres 数据。当 phy 是可选
177 联的 devres
/linux/drivers/hwtracing/intel_th/
A Dcore.c635 struct resource *devres = th->resource; in intel_th_subdevice_alloc() local
649 res[r].end = resource_size(&devres[bar]) - 1; in intel_th_subdevice_alloc()
653 res[r].start += devres[bar].start; in intel_th_subdevice_alloc()
654 res[r].end += devres[bar].start; in intel_th_subdevice_alloc()
865 struct resource *devres, unsigned int ndevres) in intel_th_alloc() argument
891 switch (devres[r].flags & IORESOURCE_TYPE_BITS) { in intel_th_alloc()
893 th->resource[nr_mmios++] = devres[r]; in intel_th_alloc()
896 err = devm_request_irq(dev, devres[r].start, in intel_th_alloc()
903 th->irq = devres[r].start; in intel_th_alloc()
908 devres[r].flags); in intel_th_alloc()
/linux/drivers/input/
A Dinput.c2021 struct input_devres *devres = res; in devm_input_device_match() local
2023 return devres->input == data; in devm_input_device_match()
2028 struct input_devres *devres = res; in devm_input_device_release() local
2057 struct input_devres *devres; in devm_input_allocate_device() local
2061 if (!devres) in devm_input_allocate_device()
2066 devres_free(devres); in devm_input_allocate_device()
2073 devres->input = input; in devm_input_allocate_device()
2074 devres_add(dev, devres); in devm_input_allocate_device()
2418 if (!devres) in input_register_device()
2421 devres->input = dev; in input_register_device()
[all …]
/linux/Documentation/driver-api/firmware/
A Dfirmware_cache.rst26 * The firmware cache is setup by adding a devres entry for each device that
36 criteria the firmware cache is setup by adding a devres entry for the
39 * The firmware devres entry is maintained throughout the lifetime of the
/linux/drivers/spmi/
A DMakefile5 obj-$(CONFIG_SPMI) += spmi.o spmi-devres.o
/linux/Documentation/driver-api/phy/
A Dphy.rst122 devm_phy_get associates the device with the PHY using devres on
124 the devres data and devres data is freed.
173 destroys the devres associated with this PHY.
184 Both these APIs destroy the PHY and devm_phy_destroy destroys the devres
/linux/Documentation/translations/zh_CN/driver-api/gpio/
A Dindex.rst59 drivers/gpio/gpiolib-devres.c
/linux/Documentation/driver-api/gpio/
A Dindex.rst42 .. kernel-doc:: drivers/gpio/gpiolib-devres.c
/linux/kernel/irq/
A DMakefile3 obj-y := irqdesc.o handle.o manage.o spurious.o resend.o chip.o dummychip.o devres.o
/linux/Documentation/driver-api/pci/
A Dpci.rst10 .. kernel-doc:: drivers/pci/devres.c
/linux/drivers/hid/
A Dwacom_sys.c1227 struct kobject *kobj = devres->root; in wacom_devm_sysfs_group_release()
1230 __func__, devres->group->name); in wacom_devm_sysfs_group_release()
1231 sysfs_remove_group(kobj, devres->group); in wacom_devm_sysfs_group_release()
1238 struct wacom_sysfs_group_devres *devres; in __wacom_devm_sysfs_create_group() local
1244 if (!devres) in __wacom_devm_sysfs_create_group()
1247 devres->group = group; in __wacom_devm_sysfs_create_group()
1248 devres->root = root; in __wacom_devm_sysfs_create_group()
1252 devres_free(devres); in __wacom_devm_sysfs_create_group()
1256 devres_add(&wacom->hdev->dev, devres); in __wacom_devm_sysfs_create_group()
1270 struct kfifo_rec_ptr_2 *devres = res; in wacom_devm_kfifo_release() local
[all …]
/linux/drivers/extcon/
A DMakefile7 extcon-core-objs += extcon.o devres.o
/linux/drivers/pci/
A DMakefile8 setup-bus.o vc.o mmap.o devres.o
/linux/Documentation/hwmon/
A Dsubmitting-patches.rst94 * Use devres functions whenever possible to allocate resources. For rationale
95 and supported functions, please see Documentation/driver-api/driver-model/devres.rst.
96 If a function is not supported by devres, consider using devm_add_action().
/linux/Documentation/wmi/
A Ddriver-development-guide.rst66 .remove = foo_remove, /* optional, devres is preferred */
78 to unregister interfaces to other kernel subsystems and release resources, devres should be used.
80 Documentation/driver-api/driver-model/devres.rst for details.
/linux/net/
A DMakefile9 obj-y := devres.o socket.o core/

Completed in 30 milliseconds

12