/** @file Register names for PCH Integrated Sensor Hub (ISH3.0) Conventions: - Register definition format: Prefix_[GenerationName]_[ComponentName]_SubsystemName_RegisterSpace_RegisterName - Prefix: Definitions beginning with "R_" are registers Definitions beginning with "B_" are bits within registers Definitions beginning with "V_" are meaningful values within the bits Definitions beginning with "S_" are register size Definitions beginning with "N_" are the bit position - [GenerationName]: Three letter acronym of the generation is used . Register name without GenerationName applies to all generations. - [ComponentName]: This field indicates the component name that the register belongs to (e.g. PCH, SA etc.) Register name without ComponentName applies to all components. Register that is specific to -H denoted by "_PCH_H_" in component name. Register that is specific to -LP denoted by "_PCH_LP_" in component name. - SubsystemName: This field indicates the subsystem name of the component that the register belongs to (e.g. PCIE, USB, SATA, GPIO, PMC etc.). - RegisterSpace: MEM - MMIO space register of subsystem. IO - IO space register of subsystem. PCR - Private configuration register of subsystem. CFG - PCI configuration space register of subsystem. - RegisterName: Full register name. Copyright (c) 2019 Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent **/ #ifndef _PCH_REGS_ISH_H_ #define _PCH_REGS_ISH_H_ // // ISH Controller Registers // // D19:F0 #define PCI_DEVICE_NUMBER_PCH_ISH 19 #define PCI_FUNCTION_NUMBER_PCH_ISH 0 // PCI Configuration Space Registers #define R_ISH_CFG_BAR0_LOW 0x10 #define R_ISH_CFG_BAR0_HIGH 0x14 #define V_ISH_CFG_BAR0_SIZE 0x100000 #define N_ISH_CFG_BAR0_ALIGNMENT 20 #define R_ISH_CFG_BAR1_LOW 0x18 #define R_ISH_CFG_BAR1_HIGH 0x1C #define V_ISH_CFG_BAR1_SIZE 0x1000 #define N_ISH_CFG_BAR1_ALIGNMENT 12 // // ISH Private Configuration Space Registers (IOSF2OCP) // (PID:ISH) // #define R_ISH_PCR_PMCTL 0x1D0 ///< Power Management #define R_ISH_PCR_PCICFGCTRL 0x200 ///< PCI Configuration Control #define B_ISH_PCR_PCICFGCTR_PCI_IRQ 0x0FF00000 ///< PCI IRQ number #define N_ISH_PCR_PCICFGCTR_PCI_IRQ 20 #define B_ISH_PCR_PCICFGCTR_ACPI_IRQ 0x000FF000 ///< ACPI IRQ number #define N_ISH_PCR_PCICFGCTR_ACPI_IRQ 12 #define B_ISH_PCR_PCICFGCTR_IPIN1 (BIT11 | BIT10 | BIT9 | BIT8) ///< Interrupt Pin #define N_ISH_PCR_PCICFGCTR_IPIN1 8 #define B_ISH_PCR_PCICFGCTRL_BAR1DIS BIT7 ///< BAR1 Disable // // Number of pins used by ISH controllers // #define PCH_ISH_PINS_PER_I2C_CONTROLLER 2 #define PCH_ISH_PINS_PER_UART_CONTROLLER 4 #define PCH_ISH_PINS_PER_SPI_CONTROLLER 4 #endif