/openbmc/linux/drivers/iommu/intel/ |
H A D | cap_audit.c | 23 CHECK_FEATURE_MISMATCH(a, b, ecap, eim_support, ECAP_EIM_MASK); in check_irq_capabilities() 36 MINIMAL_FEATURE_IOMMU(b, ecap, ECAP_PSS_MASK); in check_dmar_capabilities() 37 MINIMAL_FEATURE_IOMMU(b, ecap, ECAP_MHMV_MASK); in check_dmar_capabilities() 38 MINIMAL_FEATURE_IOMMU(b, ecap, ECAP_IRO_MASK); in check_dmar_capabilities() 51 CHECK_FEATURE_MISMATCH(a, b, ecap, rps, ECAP_RPS_MASK); in check_dmar_capabilities() 52 CHECK_FEATURE_MISMATCH(a, b, ecap, smpwc, ECAP_SMPWC_MASK); in check_dmar_capabilities() 53 CHECK_FEATURE_MISMATCH(a, b, ecap, flts, ECAP_FLTS_MASK); in check_dmar_capabilities() 54 CHECK_FEATURE_MISMATCH(a, b, ecap, slts, ECAP_SLTS_MASK); in check_dmar_capabilities() 55 CHECK_FEATURE_MISMATCH(a, b, ecap, nwfs, ECAP_NWFS_MASK); in check_dmar_capabilities() 56 CHECK_FEATURE_MISMATCH(a, b, ecap, slads, ECAP_SLADS_MASK); in check_dmar_capabilities() [all …]
|
H A D | pasid.c | 131 if (!ecap_coherent(info->iommu->ecap)) in intel_pasid_alloc_table() 221 if (!ecap_coherent(info->iommu->ecap)) { in intel_pasid_get_entry() 468 if (!ecap_coherent(iommu->ecap)) in intel_pasid_tear_down_entry() 491 if (!ecap_coherent(iommu->ecap)) in pasid_flush_caches() 512 if (!ecap_flts(iommu->ecap)) { in intel_pasid_setup_first_level() 549 pasid_set_page_snoop(pte, !!ecap_smpwc(iommu->ecap)); in intel_pasid_setup_first_level() 598 if (!ecap_slts(iommu->ecap)) { in intel_pasid_setup_second_level() 632 pasid_set_page_snoop(pte, !!ecap_smpwc(iommu->ecap)); in intel_pasid_setup_second_level() 669 pasid_set_page_snoop(pte, !!ecap_smpwc(iommu->ecap)); in intel_pasid_setup_pass_through() 698 if (!ecap_coherent(iommu->ecap)) in intel_pasid_setup_page_snoop_control()
|
H A D | irq_remapping.c | 122 if (mask > ecap_max_handle_mask(iommu->ecap)) { in alloc_irte() 125 ecap_max_handle_mask(iommu->ecap)); in alloc_irte() 662 if (!ecap_ir_support(iommu->ecap)) in iommu_disable_irq_remapping() 703 if (ecap_ir_support(iommu->ecap)) { in intel_cleanup_irq_remapping() 745 if (!ecap_ir_support(iommu->ecap)) in intel_prepare_irq_remapping() 758 if (eim && !ecap_eim_support(iommu->ecap)) { in intel_prepare_irq_remapping() 985 if (!ecap_ir_support(iommu->ecap)) in parse_ioapics_under_ir() 1035 if (!ecap_ir_support(iommu->ecap)) in disable_irq_remapping() 1062 if (!ecap_ir_support(iommu->ecap)) in reenable_irq_remapping() 1450 if (eim && !ecap_eim_support(iommu->ecap)) { in dmar_ir_add() [all …]
|
H A D | dmar.c | 884 u64 cap, ecap; in dmar_validate_one_drhd() local 902 ecap = dmar_readq(addr + DMAR_ECAP_REG); in dmar_validate_one_drhd() 909 if (cap == (uint64_t)-1 && ecap == (uint64_t)-1) { in dmar_validate_one_drhd() 988 iommu->ecap = dmar_readq(iommu->reg + DMAR_ECAP_REG); in map_iommu() 990 if (iommu->cap == (uint64_t)-1 && iommu->ecap == (uint64_t)-1) { in map_iommu() 997 map_size = max_t(int, ecap_max_iotlb_offset(iommu->ecap), in map_iommu() 1072 (!ecap_smts(iommu->ecap) || ecap_slts(iommu->ecap))) { in alloc_iommu() 1102 pr_info("%s: reg_base_addr %llx ver %d:%d cap %llx ecap %llx\n", in alloc_iommu() 1107 (unsigned long long)iommu->ecap); in alloc_iommu() 1124 * A value of N in PSS field of eCap register indicates hardware in alloc_iommu() [all …]
|
H A D | debugfs.c | 63 IOMMU_REGSET_ENTRY(ECAP), 403 if (ecap_smts(iommu->ecap)) in invalidation_queue_entry_show() 411 if (ecap_smts(iommu->ecap)) in invalidation_queue_entry_show() 436 if (!qi || !ecap_qis(iommu->ecap)) in invalidation_queue_show() 520 if (!ecap_ir_support(iommu->ecap)) in ir_translation_struct_show()
|
H A D | Kconfig | 93 /sys/devices/virtual/iommu/dmar*/intel-iommu/ecap. If this option
|
H A D | iommu.c | 412 if (!sm_supported(iommu) || !ecap_flts(iommu->ecap)) in __iommu_calculate_sagaw() 416 if (!ecap_slts(iommu->ecap)) in __iommu_calculate_sagaw() 457 ecap_smpwc(iommu->ecap) : ecap_coherent(iommu->ecap); in iommu_paging_structure_coherency() 1310 int tlb_offset = ecap_iotlb_offset(iommu->ecap); in __iommu_flush_iotlb() 1749 if (ecap_prs(iommu->ecap)) in free_dmar_iommu() 2052 if (!ecap_coherent(iommu->ecap)) in domain_context_mapping_one() 2791 u32 temp = 2 << ecap_pss(iommu->ecap); in init_dmars() 2845 if (!ecap_pass_through(iommu->ecap)) in init_dmars() 2894 if (pasid_supported(iommu) && ecap_prs(iommu->ecap)) { in init_dmars() 3296 if (hw_pass_through && !ecap_pass_through(iommu->ecap)) { in intel_iommu_add() [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/pwm/ |
H A D | pwm-tiecap.yaml | 7 title: TI SOC ECAP based APWM controller 18 - const: ti,am3352-ecap 21 - ti,da850-ecap 22 - ti,am4372-ecap 23 - ti,dra746-ecap 24 - ti,k2g-ecap 25 - ti,am654-ecap 26 - ti,am64-ecap 27 - const: ti,am3352-ecap 57 ecap0: pwm@48300100 { /* ECAP on am33xx */ [all …]
|
H A D | pwm-tipwmss.txt | 17 3 set of child register maps present, ECAP register space, EQEP 29 ranges = <0x48300100 0x48300100 0x80 /* ECAP */ 42 ranges = <0x48300100 0x48300100 0x80 /* ECAP */
|
/openbmc/linux/Documentation/devicetree/bindings/counter/ |
H A D | ti,am62-ecap-capture.yaml | 4 $id: http://devicetree.org/schemas/counter/ti,am62-ecap-capture.yaml# 7 title: Texas Instruments Enhanced Capture (eCAP) Module 13 The eCAP module resources can be used to capture timestamps 18 const: ti,am62-ecap-capture 53 capture@23100000 { /* eCAP in capture mode on am62x */ 54 compatible = "ti,am62-ecap-capture";
|
/openbmc/u-boot/board/siemens/pxm2/ |
H A D | board.c | 335 struct pwmss_ecap_regs *ecap; in enable_pwm() local 339 ecap = (struct pwmss_ecap_regs *)AM33XX_ECAP0_BASE; in enable_pwm() 343 writel(0xdb9, &ecap->tsctr); in enable_pwm() 345 writel(ticks - 1, &ecap->cap3); in enable_pwm() 346 writel(ticks - 1, &ecap->cap1); in enable_pwm() 347 setbits_le16(&ecap->ecctl2, in enable_pwm() 350 writel(duty, &ecap->cap2); in enable_pwm() 351 writel(duty, &ecap->cap4); in enable_pwm() 353 setbits_le16(&ecap->ecctl2, ECTRL2_CTRSTP_FREERUN); in enable_pwm()
|
/openbmc/linux/drivers/pwm/ |
H A D | pwm-tiecap.c | 3 * ECAP PWM driver 17 /* ECAP registers and bits definitions */ 212 { .compatible = "ti,am3352-ecap" }, 213 { .compatible = "ti,am33xx-ecap" }, 231 if (of_device_is_compatible(np, "ti,am33xx-ecap")) { in ecap_pwm_probe() 322 .name = "ecap", 331 MODULE_DESCRIPTION("ECAP PWM driver");
|
/openbmc/linux/drivers/counter/ |
H A D | Kconfig | 125 tristate "TI eCAP capture driver" 131 (eCAP) driver in input mode. 134 on ECAP input signal. 137 will be called ti-ecap-capture.
|
H A D | ti-ecap-capture.c | 3 * ECAP Capture driver 21 #define ECAP_DRV_NAME "ecap" 23 /* ECAP event IDs */ 66 /* ECAP signals */ 556 /* If eCAP is running, stop capture then save timestamp counter */ in ecap_cnt_suspend() 589 /* If eCAP was running, restore timestamp counter then run capture */ in ecap_cnt_resume() 601 { .compatible = "ti,am62-ecap-capture" }, 610 .name = "ecap-capture", 617 MODULE_DESCRIPTION("ECAP Capture driver");
|
H A D | Makefile | 19 obj-$(CONFIG_TI_ECAP_CAPTURE) += ti-ecap-capture.o
|
/openbmc/linux/drivers/clk/davinci/ |
H A D | psc-da830.c | 77 LPSC_CLKDEV3(ecap_clkdev, "fck", "ecap.0", 78 "fck", "ecap.1", 79 "fck", "ecap.2"); 98 LPSC(20, 0, ecap, pll0_sysclk2, ecap_clkdev, 0),
|
H A D | psc-da850.c | 65 LPSC_CLKDEV3(ecap_clkdev, "fck", "ecap.0", 66 "fck", "ecap.1", 67 "fck", "ecap.2"); 124 LPSC(20, 0, ecap, async3, ecap_clkdev, 0),
|
/openbmc/u-boot/arch/arm/dts/ |
H A D | da850.dtsi | 550 ecap0: ecap@306000 { 551 compatible = "ti,da850-ecap", "ti,am3352-ecap", 552 "ti,am33xx-ecap"; 560 ecap1: ecap@307000 { 561 compatible = "ti,da850-ecap", "ti,am3352-ecap", 562 "ti,am33xx-ecap"; 570 ecap2: ecap@308000 { 571 compatible = "ti,da850-ecap", "ti,am3352-ecap", 572 "ti,am33xx-ecap";
|
H A D | am33xx.dtsi | 757 ranges = <0x48300100 0x48300100 0x80 /* ECAP */ 761 ecap0: ecap@48300100 { 762 compatible = "ti,am3352-ecap", 763 "ti,am33xx-ecap"; 791 ranges = <0x48302100 0x48302100 0x80 /* ECAP */ 795 ecap1: ecap@48302100 { 796 compatible = "ti,am3352-ecap", 797 "ti,am33xx-ecap"; 825 ranges = <0x48304100 0x48304100 0x80 /* ECAP */ 829 ecap2: ecap@48304100 { [all …]
|
H A D | am4372.dtsi | 585 ecap0: ecap@48300100 { 586 compatible = "ti,am4372-ecap","ti,am33xx-ecap"; 611 ecap1: ecap@48302100 { 612 compatible = "ti,am4372-ecap","ti,am33xx-ecap"; 637 ecap2: ecap@48304100 { 638 compatible = "ti,am4372-ecap","ti,am33xx-ecap";
|
H A D | dra7.dtsi | 1912 ecap0: ecap@4843e100 { 1913 compatible = "ti,dra746-ecap", 1914 "ti,am3352-ecap"; 1942 ecap1: ecap@48440100 { 1943 compatible = "ti,dra746-ecap", 1944 "ti,am3352-ecap"; 1972 ecap2: ecap@48442100 { 1973 compatible = "ti,dra746-ecap", 1974 "ti,am3352-ecap";
|
/openbmc/linux/drivers/vfio/pci/ |
H A D | vfio_pci_config.c | 1383 static int vfio_ext_cap_len(struct vfio_pci_core_device *vdev, u16 ecap, u16 epos) in vfio_ext_cap_len() argument 1390 switch (ecap) { in vfio_ext_cap_len() 1455 pci_warn(pdev, "%s: unknown length for PCI ecap %#x@%#x\n", in vfio_ext_cap_len() 1456 __func__, ecap, epos); in vfio_ext_cap_len() 1630 u16 ecap; in vfio_ecap_init() local 1638 ecap = PCI_EXT_CAP_ID(header); in vfio_ecap_init() 1640 if (ecap <= PCI_EXT_CAP_ID_MAX) { in vfio_ecap_init() 1641 len = pci_ext_cap_length[ecap]; in vfio_ecap_init() 1643 len = vfio_ext_cap_len(vdev, ecap, epos); in vfio_ecap_init() 1650 pci_dbg(pdev, "%s: hiding ecap %#x@%#x\n", in vfio_ecap_init() [all …]
|
/openbmc/linux/Documentation/ABI/testing/ |
H A D | sysfs-class-iommu-intel-iommu | 18 What: /sys/class/iommu/<iommu>/intel-iommu/ecap
|
/openbmc/linux/arch/arm/boot/dts/ti/davinci/ |
H A D | da850.dtsi | 594 compatible = "ti,da850-ecap", "ti,am3352-ecap"; 603 compatible = "ti,da850-ecap", "ti,am3352-ecap"; 612 compatible = "ti,da850-ecap", "ti,am3352-ecap";
|
/openbmc/linux/arch/arm/boot/dts/ti/keystone/ |
H A D | keystone-k2g.dtsi | 551 compatible = "ti,k2g-ecap", "ti,am3352-ecap"; 561 compatible = "ti,k2g-ecap", "ti,am3352-ecap";
|