Lines Matching +full:step +full:- +full:up
1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * Copyright (c) 2019-2020 Intel Corporation
5 * Please see Documentation/driver-api/auxiliary_bus.rst for more information.
34 * the auxiliary_driver's probe function, up to the parent object, and then
41 * is up to the registering driver to manage (e.g. free or keep available) the
55 * struct auxiliary_device - auxiliary device object.
70 * Registering an auxiliary_device is a three-step process.
73 * sub-device desired. The name, id, dev.release, and dev.parent fields of
84 * be populated with a non-NULL pointer to successfully register the
94 * auxiliary_device struct and performs a device_initialize(). After this step
98 * The third and final step in registering an auxiliary_device is to perform a
102 * .. code-block:: c
110 * // Step 1:
111 * my_aux_dev->name = MY_DEVICE_NAME;
112 * my_aux_dev->id = my_unique_id_alloc(xxx);
113 * my_aux_dev->dev.release = my_aux_dev_release;
114 * my_aux_dev->dev.parent = my_dev;
116 * // Step 2:
120 * // Step 3:
129 * Unregistering an auxiliary_device is a two-step process to mirror the
133 * .. code-block:: c
135 * auxiliary_device_delete(my_dev->my_aux_dev);
136 * auxiliary_device_uninit(my_dev->my_aux_dev);
145 * struct auxiliary_driver - Definition of an auxiliary bus driver
148 * @shutdown: Called at shut-down time to quiesce the device.
164 * .. code-block:: c
193 return dev_get_drvdata(&auxdev->dev); in auxiliary_get_drvdata()
198 dev_set_drvdata(&auxdev->dev, data); in auxiliary_set_drvdata()
217 put_device(&auxdev->dev); in auxiliary_device_uninit()
222 device_del(&auxdev->dev); in auxiliary_device_delete()
233 * module_auxiliary_driver() - Helper macro for registering an auxiliary driver
240 * .. code-block:: c