Lines Matching +full:signal +full:- +full:id

6  * SPDX-License-Identifier:	GPL-2.0+
16 * A clock is a hardware signal that oscillates autonomously at a specific
18 * signal to drive their operation. Clock signals are typically generated
35 * struct clk - A handle to (allowing control of) a single clock.
40 * other clock APIs to identify which clock signal to operate upon.
42 * @dev: The device which implements the clock signal.
43 * @id: The clock signal ID within the provider.
45 * Currently, the clock API assumes that a single integer ID is enough to
46 * identify and configure any clock signal for any clock provider. If this
49 * information, or (b) replace the id field with an opaque pointer, which the
57 * Written by of_xlate. We assume a single id is enough for now. In the
60 unsigned long id; member
64 * struct clk_bulk - A handle to (allowing control of) a bulk of clocks.
86 * clock_get_by_index - Get/request a clock by integer index.
91 * device clock indices to provider clocks may be via device-tree properties,
92 * board-provided mapping tables, or some other mechanism.
103 * clock_get_bulk - Get/request all clocks of a device.
108 * device clock indices to provider clocks may be via device-tree properties,
109 * board-provided mapping tables, or some other mechanism.
118 * clock_get_by_name - Get/request a clock by name.
123 * device clock names to provider clocks may be via device-tree properties,
124 * board-provided mapping tables, or some other mechanism.
135 * clk_release_all() - Disable (turn off)/Free an array of previously
144 * @return zero on success, or -ve error code.
152 return -ENOSYS; in clk_get_by_index()
157 return -ENOSYS; in clk_get_bulk()
163 return -ENOSYS; in clk_get_by_name()
168 return -ENOSYS; in clk_release_all()
175 * clk_set_defaults - Process 'assigned-{clocks/clock-parents/clock-rates}'
190 * clk_release_bulk() - Disable (turn off)/Free an array of previously
198 * @return zero on success, or -ve error code.
202 return clk_release_all(bulk->clks, bulk->count); in clk_release_bulk()
206 * clk_request - Request a clock by provider-specific ID.
208 * This requests a clock using a provider-specific ID. Generally, this function
211 * However, this function may be useful in core SoC-specific code.
222 * clock_free - Free a previously requested clock.
231 * clk_get_rate() - Get current clock rate.
235 * @return clock rate in Hz, or -ve error code.
240 * clk_set_rate() - Set current clock rate.
245 * @return new rate, or -ve error code.
250 * clk_get_phase() - Get the phase shift of a clock signal.
255 * -ve error code.
260 * clk_set_rate() - Adjust the phase shift of a clock signal.
264 * @degrees: Numberof degrees the signal is shifted.
265 * @return 0 on success, or -ve error code.
270 * clk_set_parent() - Set current clock parent.
276 * @return new rate, or -ve error code.
281 * clk_enable() - Enable (turn on) a clock.
285 * @return zero on success, or -ve error code.
290 * clk_enable_bulk() - Enable (turn on) all clocks in a clock bulk struct.
294 * @return zero on success, or -ve error code.
299 * clk_disable() - Disable (turn off) a clock.
303 * @return zero on success, or -ve error code.
308 * clk_disable_bulk() - Disable (turn off) all clocks in a clock bulk struct.
312 * @return zero on success, or -ve error code.
321 * clk_valid() - check if clk is valid
328 return !!clk->dev; in clk_valid()