]> git.proxmox.com Git - mirror_edk2.git/blame - Vlv2TbltDevicePkg/Library/I2CLibPei/I2CAccess.h
ArmPkg/CompilerIntrinsicsLib: Add uread, uwrite GCC assembly sources
[mirror_edk2.git] / Vlv2TbltDevicePkg / Library / I2CLibPei / I2CAccess.h
CommitLineData
4e522096
DW
1/** @file\r
2 Misc Registers Definition.\r
3 \r
4 Copyright (c) 2011 - 2015, Intel Corporation. All rights reserved.<BR>\r
5 \r
9dc8036d 6 SPDX-License-Identifier: BSD-2-Clause-Patent\r
4e522096
DW
7 \r
8--*/\r
9\r
10#ifndef _I2C_ACCESS_H_\r
11#define _I2C_ACCESS_H_\r
12\r
13#include "I2CIoLibPei.h"\r
14\r
15#define DEFAULT_PCI_BUS_NUMBER_PCH 0\r
16\r
17#define PCI_DEVICE_NUMBER_PCH_LPC 31\r
18#define PCI_FUNCTION_NUMBER_PCH_LPC 0\r
19\r
20#define R_PCH_LPC_ACPI_BASE 0x40 // ABASE, 16bit\r
21#define R_PCH_LPC_ACPI_BASEADR 0x400 // ABASE, 16bit\r
22#define B_PCH_LPC_ACPI_BASE_EN BIT1 // Enable Bit\r
23#define B_PCH_LPC_ACPI_BASE_BAR 0x0000FF80 // Base Address, 128 Bytes\r
24#define V_PCH_ACPI_PM1_TMR_MAX_VAL 0x1000000 // The timer is 24 bit overflow\r
25#define B_PCH_ACPI_PM1_TMR_VAL 0xFFFFFF // The timer value mask\r
26\r
27#define R_PCH_ACPI_PM1_TMR 0x08 // Power Management 1 Timer\r
28#define V_PCH_ACPI_PM1_TMR_FREQUENCY 3579545 // Timer Frequency\r
29\r
30\r
31#define PchLpcPciCfg8(Register) I2CLibPeiMmioRead8 (MmPciAddress (0, DEFAULT_PCI_BUS_NUMBER_PCH, PCI_DEVICE_NUMBER_PCH_LPC, 0, Register))\r
32\r
33#define PCIEX_BASE_ADDRESS 0xE0000000\r
34#define PCI_EXPRESS_BASE_ADDRESS ((VOID *) (UINTN) PCIEX_BASE_ADDRESS)\r
35\r
36#define MmPciAddress( Segment, Bus, Device, Function, Register ) \\r
37 ( (UINTN)PCI_EXPRESS_BASE_ADDRESS + \\r
38 (UINTN)(Bus << 20) + \\r
39 (UINTN)(Device << 15) + \\r
40 (UINTN)(Function << 12) + \\r
41 (UINTN)(Register) \\r
42 )\r
43#endif\r
44\r