Home
last modified time | relevance | path

Searched +full:tcs +full:- +full:wait (Results 1 – 25 of 46) sorted by relevance

12

/linux/drivers/soc/qcom/
H A Drpmh-internal.h1 /* SPDX-License-Identifier: GPL-2.0 */
3 * Copyright (c) 2016-2018, The Linux Foundation. All rights reserved.
11 #include <linux/wait.h>
12 #include <soc/qcom/tcs.h>
23 * struct tcs_group: group of Trigger Command Sets (TCS) to send state requests
27 * @type: Type of the TCS in this group - active, sleep, wake.
29 * @offset: Start of the TCS group relative to the TCSes in the RSC.
31 * @ncpt: Number of commands in each TCS.
32 * @req: Requests that are sent from the TCS; only used for ACTIVE_ONLY
33 * transfers (could be on a wake/sleep TCS if we are borrowing for
[all …]
H A Drpmh-rsc.c1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (c) 2016-2018, The Linux Foundation. All rights reserved.
4 * Copyright (c) 2023-2024, Qualcomm Innovation Center, Inc. All rights reserved.
28 #include <linux/wait.h>
31 #include <soc/qcom/cmd-db.h>
32 #include <soc/qcom/tcs.h>
33 #include <dt-bindings/soc/qcom,rpmh-rsc.h>
35 #include "rpmh-internal.h"
38 #include "trace-rpmh.h"
71 /* DRV TCS Configuration Information Register */
[all …]
H A Drpmh.c1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (c) 2016-2018, The Linux Foundation. All rights reserved.
19 #include <linux/wait.h>
23 #include "rpmh-internal.h"
59 * struct batch_cache_req - An entry in our batch catch
74 struct rsc_drv *drv = dev_get_drvdata(dev->parent); in get_rpmh_ctrlr()
76 return &drv->client; in get_rpmh_ctrlr()
83 struct completion *compl = rpm_msg->completion; in rpmh_tx_done()
84 bool free = rpm_msg->needs_free; in rpmh_tx_done()
101 list_for_each_entry(p, &ctrlr->cache, list) { in __find_req()
[all …]
/linux/Documentation/devicetree/bindings/interconnect/
H A Dqcom,bcm-voter.yaml1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/interconnect/qcom,bcm-voter.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Qualcomm BCM-Voter Interconnect
10 - Georgi Djakov <georgi.djakov@linaro.org>
22 - qcom,bcm-voter
24 qcom,tcs-wait:
26 Optional mask of which TCSs (Triggered Command Sets) wait for completion
27 upon triggering. If not specified, then the AMC and WAKE sets wait for
[all …]
/linux/include/soc/qcom/
H A Dtcs.h1 /* SPDX-License-Identifier: GPL-2.0 */
3 * Copyright (c) 2016-2019, The Linux Foundation. All rights reserved.
36 * @wait: ensure that this command is complete before returning.
37 * Setting "wait" here only makes sense during rpmh_write_batch() for
38 * active-only transfers, this is because:
39 * rpmh_write() - Always waits.
41 * rpmh_write_async() - Never waits.
47 u32 wait; member
51 * struct tcs_request: A set of tcs_cmds sent together in a TCS
54 * @wait_for_compl: wait until we get a response from the h/w accelerator
[all …]
/linux/drivers/interconnect/qcom/
H A Dbcm-voter.c1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (c) 2020-2021, The Linux Foundation. All rights reserved.
7 #include <linux/interconnect-provider.h>
14 #include <soc/qcom/tcs.h>
16 #include "bcm-voter.h"
17 #include "icc-rpmh.h"
23 * struct bcm_voter - Bus Clock Manager voter
30 * @tcs_wait: mask for which buckets require TCS completion
47 return bcm_a->aux_data.vcd - bcm_b->aux_data.vcd; in cmp_vcd()
61 /* BCMs with enable_mask use one-hot-encoding for on/off signaling */
[all …]
/linux/drivers/scsi/aic94xx/
H A Daic94xx_tmf.c1 // SPDX-License-Identifier: GPL-2.0-only
15 /* ---------- Internal enqueue ---------- */
24 ascb->tasklet_complete = tasklet_complete; in asd_enqueue_internal()
25 ascb->uldd_timer = 1; in asd_enqueue_internal()
27 ascb->timer.function = timed_out; in asd_enqueue_internal()
28 ascb->timer.expires = jiffies + AIC94XX_SCB_TIMEOUT; in asd_enqueue_internal()
30 add_timer(&ascb->timer); in asd_enqueue_internal()
32 res = asd_post_ascb_list(ascb->ha, ascb, 1); in asd_enqueue_internal()
34 timer_delete(&ascb->timer); in asd_enqueue_internal()
38 /* ---------- CLEAR NEXUS ---------- */
[all …]
/linux/drivers/staging/gpib/tms9914/
H A Dtms9914.c1 // SPDX-License-Identifier: GPL-2.0
41 // busy wait until ATN is asserted in tms9914_take_control()
48 return -ETIMEDOUT; in tms9914_take_control()
50 clear_bit(WRITE_READY_BN, &priv->state); in tms9914_take_control()
57 * The agilent 82350B has a buggy implementation of tcs which interferes with the
60 * manual describes tcs as putting the controller into a CWAS
62 * functioning tca is far more important than tcs, we work around the
63 * problem by never issuing tcs.
68 * directly (which does issue tcs).
74 return -ETIMEDOUT; in tms9914_take_control_workaround()
[all …]
/linux/drivers/net/ethernet/intel/ixgbe/
H A Dixgbe_lib.c1 // SPDX-License-Identifier: GPL-2.0
2 /* Copyright(c) 1999 - 2024 Intel Corporation. */
9 * ixgbe_cache_ring_dcb_sriov - Descriptor ring to register mapping for SR-IOV
12 * Cache the descriptor ring offsets for SR-IOV to the assigned rings. It
20 struct ixgbe_ring_feature *fcoe = &adapter->ring_feature[RING_F_FCOE]; in ixgbe_cache_ring_dcb_sriov()
22 struct ixgbe_ring_feature *vmdq = &adapter->ring_feature[RING_F_VMDQ]; in ixgbe_cache_ring_dcb_sriov()
25 u8 tcs = adapter->hw_tcs; in ixgbe_cache_ring_dcb_sriov() local
28 if (tcs <= 1) in ixgbe_cache_ring_dcb_sriov()
32 if (!(adapter->flags & IXGBE_FLAG_SRIOV_ENABLED)) in ixgbe_cache_ring_dcb_sriov()
35 /* start at VMDq register offset for SR-IOV enabled setups */ in ixgbe_cache_ring_dcb_sriov()
[all …]
/linux/tools/testing/selftests/drivers/net/mlxsw/
H A Dsch_ets.sh2 # SPDX-License-Identifier: GPL-2.0
28 # Set the ingress quota high and use the three egress TCs to limit the
56 # Note: sch_ets_core.sh uses VLAN ingress-qos-map to assign packet
57 # priorities at $swp1 based on their 802.1p headers. ingress-qos-map is
59 # 1:1, which is the mapping currently hard-coded by the driver.
65 local -a streams=("$@")
68 # Wait for qdisc counter update so that we don't get it mid-way through.
/linux/arch/mips/kernel/
H A Drtlx-mt.c12 #include <linux/wait.h>
75 return -ENODEV; in rtlx_module_init()
79 pr_warn("No TCs reserved for AP/SP, not initializing RTLX.\n" in rtlx_module_init()
82 return -ENODEV; in rtlx_module_init()
91 /* initialise the wait queues */ in rtlx_module_init()
101 while (i--) in rtlx_module_init()
117 pr_err("APRP RTLX init on non-vectored-interrupt processor\n"); in rtlx_module_init()
118 err = -ENODEV; in rtlx_module_init()
H A Dsmp.c1 // SPDX-License-Identifier: GPL-2.0-or-later
34 #include <asm/r4k-timer.h>
35 #include <asm/mips-cps.h>
47 /* Number of TCs (or siblings in Intel speak) per CPU core */
51 /* representing the TCs (or siblings in Intel speak) of each logical CPU */
55 /* representing the core map of multi-core chips of each logical CPU */
144 /* Re-calculate the mask */ in calculate_cpu_foreign_map()
365 mp_ops->init_secondary(); in start_secondary()
407 * irq will be enabled in ->smp_finish(), enabling it too early in start_secondary()
411 mp_ops->smp_finish(); in start_secondary()
[all …]
/linux/tools/testing/selftests/drivers/net/hw/
H A Ddevlink_rate_tc_bw.py2 # SPDX-License-Identifier: GPL-2.0
8 This test suite verifies the functionality of devlink-rate traffic class (TC)
14 ----------------
15 - Creates 1 VF
16 - Establishes a bridge connecting the VF representor and the uplink representor
17 - Sets up 2 VLAN interfaces on the VF with different VLAN IDs (101, 102)
18 - Configures different traffic classes (TC3 and TC4) for each VLAN
21 ----------
23 - Verifies that without TC mapping, bandwidth is NOT distributed according to
25 - This test should fail if bandwidth matches the 80/20 split without TC
[all …]
/linux/drivers/staging/gpib/common/
H A Diblib.c1 // SPDX-License-Identifier: GPL-2.0
20 * If sync is non-zero, attempt to take control synchronously.
21 * If fallback_to_async is non-zero, try to take control asynchronously
30 return -EINVAL; in ibcac()
37 * tcs (take control synchronously) can only possibly work when in ibcac()
38 * controller is listener. Error code also needs to be -ETIMEDOUT in ibcac()
41 retval = -ETIMEDOUT; in ibcac()
43 retval = board->interface->take_control(board, sync); in ibcac()
46 if (sync && retval == -ETIMEDOUT) in ibcac()
47 retval = board->interface->take_control(board, 0); in ibcac()
[all …]
/linux/drivers/net/ethernet/intel/i40e/
H A Di40e_main.c1 // SPDX-License-Identifier: GPL-2.0
2 /* Copyright(c) 2013 - 2021 Intel Corporation. */
32 static const char i40e_copyright[] = "Copyright (c) 2013 - 2019 Intel Corporation.";
58 /* i40e_pci_tbl - PCI Device ID Table
98 static int debug = -1;
118 if (is_unicast_ether_addr(f->macaddr) || is_link_local_ether_addr(f->macaddr)) in netdev_hw_addr_refcnt()
119 ha_list = &netdev->uc; in netdev_hw_addr_refcnt()
121 ha_list = &netdev->mc; in netdev_hw_addr_refcnt()
124 if (ether_addr_equal(ha->addr, f->macaddr)) { in netdev_hw_addr_refcnt()
125 ha->refcount += delta; in netdev_hw_addr_refcnt()
[all …]
/linux/drivers/net/ethernet/intel/fm10k/
H A Dfm10k_ethtool.c1 // SPDX-License-Identifier: GPL-2.0
2 /* Copyright(c) 2013 - 2019 Intel Corporation. */
103 /* per-queue ring statistics */
168 if (interface->hw.mac.type != fm10k_mac_vf) in fm10k_get_stat_strings()
171 for (i = 0; i < interface->hw.mac.max_queues; i++) { in fm10k_get_stat_strings()
201 struct fm10k_hw *hw = &interface->hw; in fm10k_get_sset_count()
208 stats_len += hw->mac.max_queues * 2 * FM10K_QUEUE_STATS_LEN; in fm10k_get_sset_count()
210 if (hw->mac.type != fm10k_mac_vf) in fm10k_get_sset_count()
217 return -EOPNOTSUPP; in fm10k_get_sset_count()
266 struct net_device_stats *net_stats = &netdev->stats; in fm10k_get_ethtool_stats()
[all …]
/linux/drivers/mtd/nand/raw/
H A Dmarvell_nand.c1 // SPDX-License-Identifier: GPL-2.0
6 * Author: Miquel RAYNAL <miquel.raynal@free-electrons.com>
17 * The ECC layouts are depicted in details in Marvell AN-379, but here
28 * +-------------------------------------------------------------+
30 * +-------------------------------------------------------------+
39 * +-----------------------------------------
41 * +-----------------------------------------
43 * -------------------------------------------
45 * -------------------------------------------
47 * --------------------------------------------+
[all …]
H A Dstm32_fmc2_nand.c1 // SPDX-License-Identifier: GPL-2.0
10 #include <linux/dma-mapping.h>
294 struct stm32_fmc2_nfc *nfc = to_stm32_nfc(chip->controller); in stm32_fmc2_nfc_timings_init()
296 struct stm32_fmc2_timings *timings = &nand->timings; in stm32_fmc2_nfc_timings_init()
300 regmap_update_bits(nfc->regmap, FMC2_PCR, in stm32_fmc2_nfc_timings_init()
302 FIELD_PREP(FMC2_PCR_TCLR, timings->tclr) | in stm32_fmc2_nfc_timings_init()
303 FIELD_PREP(FMC2_PCR_TAR, timings->tar)); in stm32_fmc2_nfc_timings_init()
306 pmem = FIELD_PREP(FMC2_PMEM_MEMSET, timings->tset_mem); in stm32_fmc2_nfc_timings_init()
307 pmem |= FIELD_PREP(FMC2_PMEM_MEMWAIT, timings->twait); in stm32_fmc2_nfc_timings_init()
308 pmem |= FIELD_PREP(FMC2_PMEM_MEMHOLD, timings->thold_mem); in stm32_fmc2_nfc_timings_init()
[all …]
H A Dsunxi_nand.c1 // SPDX-License-Identifier: GPL-2.0+
6 * https://github.com/yuq/sunxi-nfc-mtd
9 * https://github.com/hno/Allwinner-Info
16 #include <linux/dma-mapping.h>
70 #define NFC_PAGE_SHIFT(x) (((x) < 10 ? 0 : (x) - 10) << 8)
107 #define NFC_ADR_NUM(x) (((x) - 1) << 16)
161 * struct sunxi_nand_chip_sel - stores information related to NAND Chip Select
164 * @rb: the Ready/Busy pin ID. -1 means no R/B pin connected to the NFC
172 * struct sunxi_nand_hw_ecc - stores information related to HW ECC support
181 * struct sunxi_nand_chip - stores NAND chip device related information
[all …]
/linux/drivers/gpu/drm/xe/
H A Dxe_device.c1 // SPDX-License-Identifier: MIT
10 #include <linux/fault-inject.h>
79 int ret = -ENOMEM; in xe_file_open()
92 xef->drm = file; in xe_file_open()
93 xef->client = client; in xe_file_open()
94 xef->xe = xe; in xe_file_open()
96 mutex_init(&xef->vm.lock); in xe_file_open()
97 xa_init_flags(&xef->vm.xa, XA_FLAGS_ALLOC1); in xe_file_open()
99 mutex_init(&xef->exec_queue.lock); in xe_file_open()
100 xa_init_flags(&xef->exec_queue.xa, XA_FLAGS_ALLOC1); in xe_file_open()
[all …]
/linux/drivers/gpu/drm/msm/registers/adreno/
H A Dadreno_pm4.xml1 <?xml version="1.0" encoding="UTF-8"?>
3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4 xsi:schemaLocation="https://gitlab.freedesktop.org/freedreno/ rules-fd.xsd">
10 <value name="PS_DEALLOC" value="1" variants="A2XX-A6XX"/>
19 <value name="CACHE_FLUSH" value="6" variants="A2XX-A4XX"/>
21 <value name="HLSQ_FLUSH" value="7" variants="A3XX-A4XX"/>
24 <value name="WRITE_PRIMITIVE_COUNTS" value="9" variants="A6XX-"/>
25 <value name="START_PRIMITIVE_CTRS" value="11" variants="A6XX-"/>
26 <value name="STOP_PRIMITIVE_CTRS" value="12" variants="A6XX-"/>
27 <!-- Not sure that these 4 events don't have the same meaning as on A5XX+ -->
[all …]
/linux/drivers/gpu/drm/msm/adreno/
H A Da6xx_hfi.c1 // SPDX-License-Identifier: GPL-2.0
2 /* Copyright (c) 2017-2018 The Linux Foundation. All rights reserved. */
8 #include <soc/qcom/cmd-db.h>
9 #include <soc/qcom/tcs.h>
32 struct a6xx_hfi_queue_header *header = queue->header; in a6xx_hfi_queue_read()
33 u32 i, hdr, index = header->read_index; in a6xx_hfi_queue_read()
35 if (header->read_index == header->write_index) { in a6xx_hfi_queue_read()
36 header->rx_request = 1; in a6xx_hfi_queue_read()
40 hdr = queue->data[index]; in a6xx_hfi_queue_read()
42 queue->history[(queue->history_idx++) % HFI_HISTORY_SZ] = index; in a6xx_hfi_queue_read()
[all …]
H A Da6xx_gmu.c1 // SPDX-License-Identifier: GPL-2.0
2 /* Copyright (c) 2017-2019 The Linux Foundation. All rights reserved. */
11 #include <soc/qcom/cmd-db.h>
12 #include <soc/qcom/tcs.h>
24 struct adreno_gpu *adreno_gpu = &a6xx_gpu->base; in a6xx_gmu_fault()
25 struct msm_gpu *gpu = &adreno_gpu->base; in a6xx_gmu_fault()
28 gmu->hung = true; in a6xx_gmu_fault()
31 timer_delete(&gpu->hangcheck_timer); in a6xx_gmu_fault()
34 kthread_queue_work(gpu->worker, &gpu->recover_work); in a6xx_gmu_fault()
46 dev_err_ratelimited(gmu->dev, "GMU watchdog expired\n"); in a6xx_gmu_irq()
[all …]
/linux/drivers/scsi/isci/
H A Dremote_device.c7 * Copyright(c) 2008 - 2011 Intel Corporation. All rights reserved.
20 * Foundation, Inc., 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
26 * Copyright(c) 2008 - 2011 Intel Corporation. All rights reserved.
78 return sci_remote_node_context_suspend(&idev->rnc, reason, in sci_remote_device_suspend()
83 * isci_remote_device_ready() - This function is called by the ihost when the
92 dev_dbg(&ihost->pdev->dev, in isci_remote_device_ready()
95 clear_bit(IDEV_IO_NCQERROR, &idev->flags); in isci_remote_device_ready()
96 set_bit(IDEV_IO_READY, &idev->flags); in isci_remote_device_ready()
97 if (test_and_clear_bit(IDEV_START_PENDING, &idev->flags)) in isci_remote_device_ready()
98 wake_up(&ihost->eventq); in isci_remote_device_ready()
[all …]
/linux/drivers/net/ethernet/intel/ice/
H A Dice.h1 /* SPDX-License-Identifier: GPL-2.0 */
19 #include <linux/dma-mapping.h>
22 #include <linux/wait.h>
121 #define ICE_MAX_MTU (ICE_AQ_SET_MAC_FRAME_SIZE_MAX - ICE_ETH_PKT_HDR_PAD)
129 #define ICE_TX_DESC(R, i) (&(((struct ice_tx_desc *)((R)->desc))[i]))
130 #define ICE_RX_DESC(R, i) (&(((union ice_32b_rx_flex_desc *)((R)->desc))[i]))
131 #define ICE_TX_CTX_DESC(R, i) (&(((struct ice_tx_ctx_desc *)((R)->desc))[i]))
132 #define ICE_TX_FDIRDESC(R, i) (&(((struct ice_fltr_desc *)((R)->desc))[i]))
158 for ((i) = 0; (i) < (pf)->num_alloc_vsi; (i)++)
162 for ((i) = 0; (i) < (vsi)->num_txq; (i)++)
[all …]

12