Home
last modified time | relevance | path

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

12345678910>>...16

/OK3568_Linux_fs/kernel/drivers/clk/
H A Dclk-devres.c50 struct clk_bulk_devres *devres = res; in devm_clk_bulk_release() local
52 clk_bulk_put(devres->num_clks, devres->clks); in devm_clk_bulk_release()
58 struct clk_bulk_devres *devres; in __devm_clk_bulk_get() local
61 devres = devres_alloc(devm_clk_bulk_release, in __devm_clk_bulk_get()
62 sizeof(*devres), GFP_KERNEL); in __devm_clk_bulk_get()
63 if (!devres) in __devm_clk_bulk_get()
71 devres->clks = clks; in __devm_clk_bulk_get()
72 devres->num_clks = num_clks; in __devm_clk_bulk_get()
73 devres_add(dev, devres); in __devm_clk_bulk_get()
75 devres_free(devres); in __devm_clk_bulk_get()
[all …]
/OK3568_Linux_fs/kernel/drivers/base/
H A Ddevres.c27 struct devres { struct
95 if (unlikely(check_add_overflow(sizeof(struct devres), in check_dr_size()
102 static __always_inline struct devres * alloc_dr(dr_release_t release, in alloc_dr()
106 struct devres *dr; in alloc_dr()
115 memset(dr, 0, offsetof(struct devres, data)); in alloc_dr()
141 struct devres *dr; in __devres_alloc_node()
167 struct devres *dr; in devres_alloc_node()
207 struct devres *dr = container_of(node, struct devres, node); in devres_for_each_res()
228 struct devres *dr = container_of(res, struct devres, data); in devres_free()
247 struct devres *dr = container_of(res, struct devres, data); in devres_add()
[all …]
H A DKconfig131 This option enables kernel parameter devres.log. If set to
132 non-zero, devres debug messages are printed. Select this if
133 you are having a problem with devres or want to debug
134 resource management for a managed device. devres.log can be
H A Dcore.c2366 union device_attr_group_devres *devres = res; in devm_attr_group_remove() local
2367 const struct attribute_group *group = devres->group; in devm_attr_group_remove()
2375 union device_attr_group_devres *devres = res; in devm_attr_groups_remove() local
2376 const struct attribute_group **groups = devres->groups; in devm_attr_groups_remove()
2394 union device_attr_group_devres *devres; in devm_device_add_group() local
2397 devres = devres_alloc(devm_attr_group_remove, in devm_device_add_group()
2398 sizeof(*devres), GFP_KERNEL); in devm_device_add_group()
2399 if (!devres) in devm_device_add_group()
2404 devres_free(devres); in devm_device_add_group()
2408 devres->group = grp; in devm_device_add_group()
[all …]
H A DMakefile6 cpu.o firmware.o init.o map.o devres.o \
/OK3568_Linux_fs/kernel/drivers/input/
H A Dinput-polldev.c181 struct input_polled_devres *devres = res; in devm_input_polldev_match() local
183 return devres->polldev == data; in devm_input_polldev_match()
188 struct input_polled_devres *devres = res; in devm_input_polldev_release() local
189 struct input_polled_dev *polldev = devres->polldev; in devm_input_polldev_release()
200 struct input_polled_devres *devres = res; in devm_input_polldev_unregister() local
201 struct input_polled_dev *polldev = devres->polldev; in devm_input_polldev_unregister()
237 struct input_polled_devres *devres; in devm_input_allocate_polled_device() local
239 devres = devres_alloc(devm_input_polldev_release, sizeof(*devres), in devm_input_allocate_polled_device()
241 if (!devres) in devm_input_allocate_polled_device()
246 devres_free(devres); in devm_input_allocate_polled_device()
[all …]
H A Dinput.c1853 struct input_devres *devres = res; in devm_input_device_match() local
1855 return devres->input == data; in devm_input_device_match()
1860 struct input_devres *devres = res; in devm_input_device_release() local
1861 struct input_dev *input = devres->input; in devm_input_device_release()
1889 struct input_devres *devres; in devm_input_allocate_device() local
1891 devres = devres_alloc(devm_input_device_release, in devm_input_allocate_device()
1892 sizeof(*devres), GFP_KERNEL); in devm_input_allocate_device()
1893 if (!devres) in devm_input_allocate_device()
1898 devres_free(devres); in devm_input_allocate_device()
1905 devres->input = input; in devm_input_allocate_device()
[all …]
/OK3568_Linux_fs/u-boot/drivers/core/
H A Ddevres.c29 struct devres { struct
41 static void set_node_dbginfo(struct devres *dr, const char *name, size_t size) in set_node_dbginfo() argument
47 static void devres_log(struct udevice *dev, struct devres *dr, in devres_log()
65 size_t tot_size = sizeof(struct devres) + size; in __devres_alloc()
66 struct devres *dr; in __devres_alloc()
82 struct devres *dr = container_of(res, struct devres, data); in devres_free()
91 struct devres *dr = container_of(res, struct devres, data); in devres_add()
102 struct devres *dr; in devres_find()
118 struct devres *new_dr = container_of(new_res, struct devres, data); in devres_get()
139 struct devres *dr = container_of(res, struct devres, data); in devres_remove()
[all …]
H A DMakefile8 obj-$(CONFIG_DEVRES) += devres.o
H A DKconfig156 Device resources managed by the devres framework are automatically
160 If this option is disabled, devres functions fall back to
168 If this option is enabled, devres debug messages are printed.
170 Select this if you are having a problem with devres or want to
/OK3568_Linux_fs/kernel/Documentation/driver-api/driver-model/
H 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
51 associated with a struct device. Each devres entry is associated with
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.
58 drivers using devres. For example, coherent DMA memory is acquired
133 devres. Complexity is shifted from less maintained low level drivers
148 Devres entries can be grouped using devres group. When a group is
[all …]
H A Dindex.rst13 devres
/OK3568_Linux_fs/kernel/drivers/regulator/
H A Ddevres.c125 struct regulator_bulk_devres *devres = res; in devm_regulator_bulk_release() local
127 regulator_bulk_free(devres->num_consumers, devres->consumers); in devm_regulator_bulk_release()
148 struct regulator_bulk_devres *devres; in devm_regulator_bulk_get() local
151 devres = devres_alloc(devm_regulator_bulk_release, in devm_regulator_bulk_get()
152 sizeof(*devres), GFP_KERNEL); in devm_regulator_bulk_get()
153 if (!devres) in devm_regulator_bulk_get()
158 devres->consumers = consumers; in devm_regulator_bulk_get()
159 devres->num_consumers = num_consumers; in devm_regulator_bulk_get()
160 devres_add(dev, devres); in devm_regulator_bulk_get()
162 devres_free(devres); in devm_regulator_bulk_get()
/OK3568_Linux_fs/kernel/drivers/hwtracing/intel_th/
H 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()
/OK3568_Linux_fs/kernel/Documentation/driver-api/firmware/
H 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
/OK3568_Linux_fs/kernel/Documentation/driver-api/phy/
H A Dphy.rst117 devm_phy_get associates the device with the PHY using devres on
119 the devres data and devres data is freed. phy_optional_get and
146 destroys the devres associated with this PHY.
157 Both these APIs destroy the PHY and devm_phy_destroy destroys the devres
/OK3568_Linux_fs/kernel/drivers/hid/
H A Dwacom_sys.c1231 struct wacom_sysfs_group_devres *devres = res; in wacom_devm_sysfs_group_release() local
1232 struct kobject *kobj = devres->root; in wacom_devm_sysfs_group_release()
1235 __func__, devres->group->name); in wacom_devm_sysfs_group_release()
1236 sysfs_remove_group(kobj, devres->group); in wacom_devm_sysfs_group_release()
1243 struct wacom_sysfs_group_devres *devres; in __wacom_devm_sysfs_create_group() local
1246 devres = devres_alloc(wacom_devm_sysfs_group_release, in __wacom_devm_sysfs_create_group()
1249 if (!devres) in __wacom_devm_sysfs_create_group()
1252 devres->group = group; in __wacom_devm_sysfs_create_group()
1253 devres->root = root; in __wacom_devm_sysfs_create_group()
1255 error = sysfs_create_group(devres->root, group); in __wacom_devm_sysfs_create_group()
[all …]
/OK3568_Linux_fs/kernel/Documentation/driver-api/gpio/
H A Dindex.rst43 .. kernel-doc:: drivers/gpio/gpiolib-devres.c
/OK3568_Linux_fs/kernel/kernel/irq/
H A DMakefile3 obj-y := irqdesc.o handle.o manage.o spurious.o resend.o chip.o dummychip.o devres.o
/OK3568_Linux_fs/kernel/drivers/gpio/
H A Dgpiolib-devres.c110 struct devres *dres; in devm_gpiod_get_index()
165 struct devres *dres; in devm_gpiod_get_from_of_node()
/OK3568_Linux_fs/u-boot/test/dm/
H A Dcmd_dm.c57 U_BOOT_CMD_MKENT(devres, 1, 1, do_dm_dump_devres, "", ""),
/OK3568_Linux_fs/kernel/drivers/s390/crypto/
H A Dap_bus.c604 int rc, card, queue, devres, drvres; in __ap_revise_reserved() local
610 devres = test_bit_inv(card, ap_perms.apm) in __ap_revise_reserved()
615 if (!!devres != !!drvres) { in __ap_revise_reserved()
674 int card, queue, devres, drvres, rc = -ENODEV; in ap_device_probe() local
689 devres = test_bit_inv(card, ap_perms.apm) in ap_device_probe()
693 if (!!devres != !!drvres) in ap_device_probe()
/OK3568_Linux_fs/kernel/drivers/extcon/
H A DMakefile7 extcon-core-objs += extcon.o devres.o
/OK3568_Linux_fs/kernel/Documentation/hwmon/
H A Dsubmitting-patches.rst95 * Use devres functions whenever possible to allocate resources. For rationale
96 and supported functions, please see Documentation/driver-api/driver-model/devres.rst.
97 If a function is not supported by devres, consider using devm_add_action().
/OK3568_Linux_fs/kernel/net/
H A DMakefile9 obj-$(CONFIG_NET) := devres.o socket.o core/

12345678910>>...16