/linux-6.12.1/drivers/thermal/intel/ |
D | intel_hfi.c | 15 * constraints). On other processor models, there is a single HFI update 18 * This file provides functionality to process HFI updates and relay these 22 #define pr_fmt(fmt) "intel-hfi: " fmt 55 /* CPUID detection and enumeration definitions for HFI */ 79 * struct hfi_cpu_data - HFI capabilities per CPU 83 * Capabilities of a logical processor in the HFI table. These capabilities are 92 * struct hfi_hdr - Header of the HFI table 96 * Properties of the data in an HFI table. 104 * struct hfi_instance - Representation of an HFI instance (i.e., a table) 105 * @local_table: Base of the local copy of the HFI table [all …]
|
/linux-6.12.1/Documentation/arch/x86/ |
D | intel-hfi.rst | 10 Intel has described the Hardware Feedback Interface (HFI) in the Intel 64 and 14 The HFI gives the operating system a performance and energy efficiency 16 the HFI to influence task placement decisions. 34 reflected in the HFI. Likewise, if the system needs to be throttled due to 35 excessive heat, the HFI may reflect reduced performance on specific CPUs. 52 The thermal monitor may generate interrupts per CPU or per package. The HFI 54 via a set of machine-specific registers. Specifically, the HFI interrupt and 56 and IA32_PACKAGE_THERM_STATUS registers, respectively. There exists one HFI 60 The hardware issues an HFI interrupt after updating the HFI table and is ready 64 When servicing such interrupt, the HFI driver parses the updated table and [all …]
|
D | index.rst | 24 intel-hfi
|
/linux-6.12.1/drivers/media/platform/qcom/venus/ |
D | hfi_cmds.c | 29 struct hfi_enable *hfi = (struct hfi_enable *)&pkt->data[1]; in pkt_sys_idle_indicator() local 31 pkt->hdr.size = struct_size(pkt, data, 1) + sizeof(*hfi); in pkt_sys_idle_indicator() 35 hfi->enable = enable; in pkt_sys_idle_indicator() 41 struct hfi_debug_config *hfi; in pkt_sys_debug_config() local 43 pkt->hdr.size = struct_size(pkt, data, 1) + sizeof(*hfi); in pkt_sys_debug_config() 47 hfi = (struct hfi_debug_config *)&pkt->data[1]; in pkt_sys_debug_config() 48 hfi->config = config; in pkt_sys_debug_config() 49 hfi->mode = mode; in pkt_sys_debug_config() 61 void pkt_sys_ubwc_config(struct hfi_sys_set_property_pkt *pkt, const struct hfi_ubwc_config *hfi) in pkt_sys_ubwc_config() argument 63 pkt->hdr.size = struct_size(pkt, data, 1) + sizeof(*hfi); in pkt_sys_ubwc_config() [all …]
|
D | core.h | 17 #include "hfi.h" 153 * @done: a completion for sync HFI operations 154 * @error: an error returned during last HFI sync operations 163 * @priv: a private filed for HFI operations 164 * @ops: the core HFI operations 166 * @caps: an array of supported HFI capabilities 421 * @hfi_codec: current codec for this instance in HFI space 428 * @done: a completion for sync HFI operation 429 * @error: an error returned during last HFI sync operation 430 * @session_error: a flag rised by HFI interface in case of session error [all …]
|
D | hfi_venus_io.h | 34 /* HFI control status */ 45 /* HFI queue table info */ 48 /* HFI queue table address */
|
D | hfi.h | 51 /* HFI events */ 57 /* HFI event callback structure */
|
D | hfi_cmds.h | 9 #include "hfi.h" 259 void pkt_sys_ubwc_config(struct hfi_sys_set_property_pkt *pkt, const struct hfi_ubwc_config *hfi);
|
D | hfi_msgs.c | 13 #include "hfi.h" 363 struct hfi_profile_level *hfi; in session_get_prop_profile_level() local 372 hfi = (struct hfi_profile_level *)&pkt->data[0]; in session_get_prop_profile_level() 373 profile_level->profile = hfi->profile; in session_get_prop_profile_level() 374 profile_level->level = hfi->level; in session_get_prop_profile_level()
|
D | Makefile | 5 hfi_venus.o hfi_msgs.o hfi_cmds.o hfi.o \
|
/linux-6.12.1/Documentation/infiniband/ |
D | opa_vnic.rst | 7 the Ethernet packets between HFI nodes. 13 fabric topology. A subset of HFI nodes on the Omni-Path fabric are 16 abstractions achieved by configuring the HFI nodes on the fabric for 17 header generation and processing. In the simplest configuration all HFI 22 application. HFI nodes can have multiple VNICs each connected to a 24 of two virtual Ethernet switches with two HFI nodes:: 48 | HFI | | HFI |
|
/linux-6.12.1/drivers/infiniband/hw/hfi1/ |
D | debugfs.c | 15 #include "hfi.h" 487 int this_hfi, int hfi, u32 flag, const char *what) in check_dyn_flag() argument 491 mask = flag << (hfi ? CR_DYN_SHIFT : 0); in check_dyn_flag() 494 " 0x%08x - HFI%d %s in use, %s device\n", in check_dyn_flag() 495 mask, hfi, what, in check_dyn_flag() 496 this_hfi == hfi ? "this" : "other"); in check_dyn_flag() 531 /* check each dynamic flag on each HFI */ in asic_flags_read() 580 /* force write to be visible to other HFI on another OS */ in asic_flags_write() 724 /* Do an i2c write operation on the chain for the given HFI. */ 764 /* Do an i2c write operation on chain for HFI 0. */ [all …]
|
D | netdev.h | 10 #include "hfi.h" 16 * struct hfi1_netdev_rxq - Receive Queue for HFI 38 * struct hfi1_netdev_rx: data required to setup and run HFI netdev.
|
D | user_pages.c | 11 #include "hfi.h" 51 * Only allow 1/4 of the user's RLIMIT_MEMLOCK to be used for HFI in hfi1_can_pin_pages()
|
D | affinity.c | 11 #include "hfi.h" 30 /* Per NUMA node count of HFI devices */ 175 pr_err("HFI: Invalid PCI NUMA node. Performance may be affected\n"); in node_affinity_init() 176 pr_err("HFI: System BIOS may need to be upgraded\n"); in node_affinity_init() 1030 * For each user process that is opening a context on HFI Y: in hfi1_get_proc_affinity() 1036 * 1. Same NUMA node as HFI Y and not running an IRQ in hfi1_get_proc_affinity() 1038 * 2. Same NUMA node as HFI Y and running an IRQ handler in hfi1_get_proc_affinity() 1039 * 3. Different NUMA node to HFI Y and not running an IRQ in hfi1_get_proc_affinity() 1041 * 4. Different NUMA node to HFI Y and running an IRQ in hfi1_get_proc_affinity()
|
D | firmware.c | 11 #include "hfi.h" 170 /* SBus fabric SerDes addresses, one set per HFI */ 176 /* SBus PCIe SerDes addresses, one set per HFI */ 184 /* SBus PCIe PCS addresses, one set per HFI */ 192 /* SBus fabric SerDes broadcast addresses, one per HFI */ 196 /* SBus PCIe SerDes broadcast addresses, one per HFI */ 1114 * Reset all of the fabric serdes for this HFI in preparation to take the 1118 * the fabric serdes download to the other HFI on the ASIC will have turned 1119 * off the firmware validation on this HFI. This means we can't write to the 1406 /* return the given resource bit(s) as a mask for the given HFI */ [all …]
|
D | exp_rcv.h | 8 #include "hfi.h" 89 * of the WC performance improvements. The HFI will ignore this
|
D | efivar.h | 11 #include "hfi.h"
|
/linux-6.12.1/include/uapi/rdma/ |
D | rdma_user_ioctl.h | 38 #include <rdma/hfi/hfi1_ioctl.h> 57 /* HFI specific section */ 58 /* allocate HFI and context */
|
/linux-6.12.1/drivers/gpu/drm/msm/adreno/ |
D | a6xx_hfi.c | 134 "The HFI response queue is unexpectedly empty\n"); in a6xx_hfi_wait_for_ack() 735 * Let the GMU know that there won't be any more HFI messages until next in a6xx_hfi_start_v1() 785 DRM_DEV_ERROR(gmu->dev, "HFI queue %d is not empty\n", i); in a6xx_hfi_stop() 824 struct a6xx_gmu_bo *hfi = &gmu->hfi; in a6xx_hfi_init() local 825 struct a6xx_hfi_queue_table_header *table = hfi->virt; in a6xx_hfi_init() 826 struct a6xx_hfi_queue_header *headers = hfi->virt + sizeof(*table); in a6xx_hfi_init() 848 a6xx_hfi_queue_init(&gmu->queues[0], &headers[0], hfi->virt + offset, in a6xx_hfi_init() 849 hfi->iova + offset, 0); in a6xx_hfi_init() 853 a6xx_hfi_queue_init(&gmu->queues[1], &headers[1], hfi->virt + offset, in a6xx_hfi_init() 854 hfi->iova + offset, gmu->legacy ? 4 : 1); in a6xx_hfi_init()
|
D | a6xx_gmu.c | 252 DRM_DEV_ERROR(gmu->dev, "Unable to start the HFI queues\n"); in a6xx_gmu_hfi_start() 824 /* Write the iova of the HFI table */ in a6xx_gmu_fw_start() 825 gmu_write(gmu, REG_A6XX_GMU_HFI_QTBL_ADDR, gmu->hfi.iova); in a6xx_gmu_fw_start() 1173 /* Turn off HFI */ in a6xx_gmu_shutdown() 1221 msm_gem_kernel_put(gmu->hfi.obj, gmu->aspace); in a6xx_gmu_memory_free() 1737 /* HFI v1, has sptprac */ in a6xx_gmu_init() 1751 /* Allocate memory for for the HFI queues */ in a6xx_gmu_init() 1752 ret = a6xx_gmu_memory_alloc(gmu, &gmu->hfi, SZ_16K, 0, "hfi"); in a6xx_gmu_init() 1774 /* Get the HFI and GMU interrupts */ in a6xx_gmu_init() 1775 gmu->hfi_irq = a6xx_gmu_get_irq(gmu, pdev, "hfi", a6xx_hfi_irq); in a6xx_gmu_init() [all …]
|
D | a6xx_gmu.h | 66 struct a6xx_gmu_bo hfi; member 160 * band" means that the CPU talks to the GMU directly and not through HFI.
|
/linux-6.12.1/Documentation/devicetree/bindings/display/msm/ |
D | gmu.yaml | 49 - description: GMU HFI interrupt 54 - const: hfi 311 interrupt-names = "hfi", "gmu";
|
/linux-6.12.1/tools/power/x86/intel-speed-select/ |
D | hfi-events.c | 3 * Intel Speed Select -- Read HFI events for OOB 252 fprintf(stderr, "CPU Doesn't support HFI\n"); in hfi_main() 289 debug_printf("hfi is initialized\n"); in hfi_main()
|
D | Build | 1 intel-speed-select-y += isst-config.o isst-core.o isst-display.o isst-daemon.o hfi-events.o isst-c…
|