Home
last modified time | relevance | path

Searched full:ats (Results 1 – 25 of 58) sorted by relevance

123

/kernel/linux/linux-5.10/drivers/pci/
Dats.c13 #include <linux/pci-ats.h>
34 * pci_ats_supported - check if the device can use ATS
37 * Returns true if the device supports ATS and is allowed to use it, false
50 * pci_enable_ats - enable the ATS capability
71 * Note that enabling ATS on a VF fails unless it's already enabled in pci_enable_ats()
91 * pci_disable_ats - disable the ATS capability
123 * pci_ats_queue_depth - query the ATS Invalidate Queue Depth
128 * The ATS spec uses 0 in the Invalidate Queue Depth field to
DMakefile22 obj-$(CONFIG_PCI_ATS) += ats.o
/kernel/linux/linux-5.10/Documentation/x86/
Dsva.rst17 PCIe Address Translation Services (ATS) along with Page Request Interface
20 specification Chapter 10: ATS Specification.
23 required to support the PCIe features ATS and PRI. ATS allows devices
26 sync. When an ATS lookup fails for a virtual address, the device should
28 CPU page tables. The device must use ATS again in order the fetch the
82 ATS. If the IOMMU responds with proper response that a page is not
230 use via Address Translation Service (ATS) requests. If the mapping exists
/kernel/linux/linux-5.10/include/uapi/linux/genwqe/
Dgenwqe_card.h272 * driver know where those addresses are by specifying the ATS field,
277 * Our hardware will refuse DDCB execution if the ATS field is not as
280 * will check that against the ATS field definition. Any invalid or
281 * unknown ATS content will lead to DDCB refusal.
356 #define DDCB_ASIV_LENGTH_ATS 96 /* ASIV in ATS architecture */
371 * Address Translation Specification (ATS) definitions
373 * Each 4 bit within the ATS 64-bit word specify the required address
382 * The first 4 entries in the ATS word are reserved. The following nibbles
433 __u64 ats; member
/kernel/linux/linux-5.10/drivers/net/ethernet/stmicro/stmmac/
Denh_desc.c385 static void enh_desc_get_timestamp(void *desc, u32 ats, u64 *ts) in enh_desc_get_timestamp() argument
389 if (ats) { in enh_desc_get_timestamp()
404 u32 ats) in enh_desc_get_rx_timestamp_status() argument
406 if (ats) { in enh_desc_get_rx_timestamp_status()
Ddwxgmac2_descs.c85 static inline void dwxgmac2_get_timestamp(void *desc, u32 ats, u64 *ts) in dwxgmac2_get_timestamp() argument
117 u32 ats) in dwxgmac2_get_rx_timestamp_status() argument
Dnorm_desc.c248 static void ndesc_get_timestamp(void *desc, u32 ats, u64 *ts) in ndesc_get_timestamp() argument
260 static int ndesc_get_rx_timestamp_status(void *desc, void *next_desc, u32 ats) in ndesc_get_rx_timestamp_status() argument
Ddwmac4_descs.c228 static inline void dwmac4_get_timestamp(void *desc, u32 ats, u64 *ts) in dwmac4_get_timestamp() argument
267 u32 ats) in dwmac4_wrback_get_rx_timestamp_status() argument
/kernel/linux/linux-5.10/drivers/misc/genwqe/
Dcard_ddcb.h39 #define ASIV_LENGTH 104 /* Old specification without ATS field */
40 #define ASIV_LENGTH_ATS 96 /* New specification with ATS field */
Dcard_dev.c431 * When we receive a DDCB execution request with the ATS bits set to
589 } else { /* setup DDCB for ATS architecture */ in do_flash_update()
602 req->ats = 0x4ULL << 44; in do_flash_update()
711 } else { /* setup DDCB for ATS architecture */ in do_flash_read()
720 cmd->ats = 0x5ULL << 44; in do_flash_read()
878 ats_flags = ATS_GET_FLAGS(cmd->ats, asiv_offs); in ddcb_cmd_fixups()
Dcard_ddcb.c849 * ATS field, which was introduced late. If the ATS field is in __genwqe_enqueue_ddcb()
851 * the ATS field is copied too, the code should do exactly in __genwqe_enqueue_ddcb()
852 * what it did before, but I wanted to make copying of the ATS in __genwqe_enqueue_ddcb()
860 pddcb->n.ats_64 = cpu_to_be64(req->cmd.ats); in __genwqe_enqueue_ddcb()
/kernel/linux/linux-5.10/Documentation/vm/
Dmmu_notifier.rst11 thing like ATS/PASID to get the IOMMU to walk the CPU page table to access a
33 Consider the following scenario (device use a feature similar to ATS/PASID):
/kernel/liteos_a/compat/posix/src/
Dtime.c476 static int PthreadGetCputime(clockid_t clockID, struct timespec *ats) in PthreadGetCputime() argument
495 ats->tv_sec = runtime / OS_SYS_NS_PER_SECOND; in PthreadGetCputime()
496 ats->tv_nsec = runtime % OS_SYS_NS_PER_SECOND; in PthreadGetCputime()
501 static int ProcessGetCputime(clockid_t clockID, struct timespec *ats) in ProcessGetCputime() argument
525 ats->tv_sec = runtime / OS_SYS_NS_PER_SECOND; in ProcessGetCputime()
526 ats->tv_nsec = runtime % OS_SYS_NS_PER_SECOND; in ProcessGetCputime()
/kernel/linux/linux-5.10/drivers/iommu/amd/
Diommu.c16 #include <linux/pci-ats.h>
1249 qdep = dev_data->ats.qdep; in device_flush_iotlb()
1290 if (dev_data->ats.enabled) in device_flush_dte()
1323 if (!dev_data->ats.enabled) in __domain_flush_pages()
1903 bool ats, bool ppr) in set_dte_entry() argument
1918 if (ats) in set_dte_entry()
1987 bool ats; in do_attach() local
1990 ats = dev_data->ats.enabled; in do_attach()
2003 ats, dev_data->iommu_v2); in do_attach()
2142 dev_data->ats.enabled = true; in attach_device()
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/iommu/
Darm,smmu-v3.yaml16 and event queues and adding support for the ATS and PRI components of
/kernel/linux/linux-5.10/drivers/gpu/drm/radeon/
Dbtc_dpm.c1707 pi->rlp = eg_pi->ats[idx].rlp; in btc_set_at_for_uvd()
1708 pi->rmp = eg_pi->ats[idx].rmp; in btc_set_at_for_uvd()
1709 pi->lhp = eg_pi->ats[idx].lhp; in btc_set_at_for_uvd()
1710 pi->lmp = eg_pi->ats[idx].lmp; in btc_set_at_for_uvd()
2623 eg_pi->ats[0].rlp = RV770_RLP_DFLT; in btc_dpm_init()
2624 eg_pi->ats[0].rmp = RV770_RMP_DFLT; in btc_dpm_init()
2625 eg_pi->ats[0].lhp = RV770_LHP_DFLT; in btc_dpm_init()
2626 eg_pi->ats[0].lmp = RV770_LMP_DFLT; in btc_dpm_init()
2628 eg_pi->ats[1].rlp = BTC_RLP_UVD_DFLT; in btc_dpm_init()
2629 eg_pi->ats[1].rmp = BTC_RMP_UVD_DFLT; in btc_dpm_init()
[all …]
Dcypress_dpm.h88 struct at ats[2]; member
/kernel/linux/linux-5.10/sound/soc/codecs/
Dak4458.c477 int ats; in ak4458_set_dai_mute() local
482 ats = (reg & AK4458_ATS_MASK) >> AK4458_ATS_SHIFT; in ak4458_set_dai_mute()
484 ndt = att_speed[ats] / (nfs / 1000); in ak4458_set_dai_mute()
/kernel/linux/linux-5.10/arch/arm/boot/dts/
Dsun7i-a20-pcduino3-nano.dts2 * Copyright 2015-2020 Adam Sampson <ats@offog.org>
/kernel/linux/linux-5.10/include/linux/
Damd-iommu.h141 #define AMD_IOMMU_DEVICE_FLAG_ATS_SUP 0x1 /* ATS feature supported */
/kernel/linux/patches/linux-4.19/prebuilts/usr/include/linux/genwqe/
Dgenwqe_card.h237 __u64 ats; member
/kernel/linux/linux-5.10/drivers/iommu/arm/arm-smmu-v3/
Darm-smmu-v3.c29 #include <linux/pci-ats.h>
1537 * In an ATS Invalidate Request, the address must be aligned on the in arm_smmu_atc_inv_to_cmd()
1603 * ATS was enabled at the PCI device before completion of the TLBI. in arm_smmu_atc_inv_domain()
2067 /* Don't enable ATS at the endpoint if it's not enabled in the STE */ in arm_smmu_enable_ats()
2078 dev_err(master->dev, "Failed to enable ATS (STU %zu)\n", stu); in arm_smmu_enable_ats()
2090 * Ensure ATS is disabled at the endpoint before we issue the in arm_smmu_disable_ats()
2359 * Note that PASID must be enabled before, and disabled after ATS: in arm_smmu_probe_device()
2360 * PCI Express Base 4.0r1.0 - 10.5.1.3 ATS Control Register in arm_smmu_probe_device()
3122 dev_err(smmu->dev, "failed to enable ATS check\n"); in arm_smmu_device_reset()
/kernel/linux/patches/linux-5.10/prebuilts/usr/include/linux/genwqe/
Dgenwqe_card.h244 __u64 ats; member
/kernel/linux/linux-5.10/drivers/gpu/drm/amd/amdkfd/
Dkfd_iommu.c83 "error required iommu flags ats %i, pri %i, pasid %i\n", in kfd_iommu_device_init()
/kernel/linux/linux-5.10/drivers/iommu/intel/
Dsvm.c16 #include <linux/pci-ats.h>
1027 * PCI ATS spec. in prq_event_thread()
1201 * additional VT-d requirement beyond PCI ATS spec. in intel_svm_page_response()

123