Lines Matching +full:serial +full:- +full:number
1 /* SPDX-License-Identifier: GPL-2.0 */
3 * Copyright (c) 2017-2018, The Linux Foundation. All rights reserved.
11 /* Transfer mode supported by GENI Serial Engines */
18 /* Protocols supported by GENI Serial Engines */
42 * struct geni_se - GENI Serial Engine
43 * @base: Base Address of the Serial Engine's register block
44 * @dev: Pointer to the Serial Engine device
46 * @clk: Handle to the core serial engine clock
47 * @num_clk_levels: Number of valid clock levels in clk_perf_tbl
48 * @clk_perf_tbl: Table of clock frequency input to serial engine clock
251 /* QUP SE VERSION value for major number 2 and minor number 5 */
274 * geni_se_read_proto() - Read the protocol configured for a serial engine
275 * @se: Pointer to the concerned serial engine.
277 * Return: Protocol value as configured in the serial engine.
283 val = readl_relaxed(se->base + GENI_FW_REVISION_RO); in geni_se_read_proto()
289 * geni_se_setup_m_cmd() - Setup the primary sequencer
290 * @se: Pointer to the concerned serial engine.
302 writel(m_cmd, se->base + SE_GENI_M_CMD0); in geni_se_setup_m_cmd()
306 * geni_se_setup_s_cmd() - Setup the secondary sequencer
307 * @se: Pointer to the concerned serial engine.
318 s_cmd = readl_relaxed(se->base + SE_GENI_S_CMD0); in geni_se_setup_s_cmd()
322 writel(s_cmd, se->base + SE_GENI_S_CMD0); in geni_se_setup_s_cmd()
326 * geni_se_cancel_m_cmd() - Cancel the command configured in the primary
328 * @se: Pointer to the concerned serial engine.
335 writel_relaxed(M_GENI_CMD_CANCEL, se->base + SE_GENI_M_CMD_CTRL_REG); in geni_se_cancel_m_cmd()
339 * geni_se_cancel_s_cmd() - Cancel the command configured in the secondary
341 * @se: Pointer to the concerned serial engine.
348 writel_relaxed(S_GENI_CMD_CANCEL, se->base + SE_GENI_S_CMD_CTRL_REG); in geni_se_cancel_s_cmd()
352 * geni_se_abort_m_cmd() - Abort the command configured in the primary sequencer
353 * @se: Pointer to the concerned serial engine.
360 writel_relaxed(M_GENI_CMD_ABORT, se->base + SE_GENI_M_CMD_CTRL_REG); in geni_se_abort_m_cmd()
364 * geni_se_abort_s_cmd() - Abort the command configured in the secondary
366 * @se: Pointer to the concerned serial engine.
373 writel_relaxed(S_GENI_CMD_ABORT, se->base + SE_GENI_S_CMD_CTRL_REG); in geni_se_abort_s_cmd()
377 * geni_se_get_tx_fifo_depth() - Get the TX fifo depth of the serial engine
378 * @se: Pointer to the concerned serial engine.
380 * This function is used to get the depth i.e. number of elements in the
381 * TX fifo of the serial engine.
389 val = readl_relaxed(se->base + SE_HW_PARAM_0); in geni_se_get_tx_fifo_depth()
395 * geni_se_get_tx_fifo_width() - Get the TX fifo width of the serial engine
396 * @se: Pointer to the concerned serial engine.
399 * TX fifo of the serial engine.
407 val = readl_relaxed(se->base + SE_HW_PARAM_0); in geni_se_get_tx_fifo_width()
413 * geni_se_get_rx_fifo_depth() - Get the RX fifo depth of the serial engine
414 * @se: Pointer to the concerned serial engine.
416 * This function is used to get the depth i.e. number of elements in the
417 * RX fifo of the serial engine.
425 val = readl_relaxed(se->base + SE_HW_PARAM_1); in geni_se_get_rx_fifo_depth()