summaryrefslogtreecommitdiff
path: root/Silicon/Intel/LewisburgPkg/Include/PchReservedResources.h
blob: d60125b7688102911adbb4bf05e82eee74a95095 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
/** @file

Copyright (c) 2018, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.

THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

**/

#ifndef _PCH_PRESERVED_RESOURCES_H_
#define _PCH_PRESERVED_RESOURCES_H_

/**
#ifdef SERVER_BIOS_FLAG
  SKX map:
#endif //SERVER_BIOS_FLAG
  PCH preserved MMIO range, 24 MB, from 0xFD000000 to 0xFE7FFFFF

  Detailed recommended static allocation
  +-------------------------------------------------------------------------+
  | Size        | Start       | End         | Usage                         |
  | 16 MB       | 0xFD000000  | 0xFDFFFFFF  | SBREG                         |
  | 64 KB       | 0xFE000000  | 0xFE00FFFF  | PMC MBAR                      |
  | 4 KB        | 0xFE010000  | 0xFE010FFF  | SPI BAR0                      |
  | 88 KB       | 0xFE020000  | 0xFE035FFF  | SerialIo BAR in ACPI mode     |
  | 24 KB       | 0xFE036000  | 0xFE03BFFF  | Unused                        |
  | 4 KB        | 0xFE03C000  | 0xFE03CFFF  | Thermal Device in ACPI mode   |
  | 524 KB      | 0xFE03D000  | 0xFE0BFFFF  | Unused                        |
  | 256 KB      | 0xFE0C0000  | 0xFE0FFFFF  | TraceHub FW BAR               |
  | 1 MB        | 0xFE100000  | 0xFE1FFFFF  | TraceHub MTB BAR              |
  | 2 MB        | 0xFE200000  | 0xFE3FFFFF  | TraceHub SW BAR               |
  | 64 KB       | 0xFE400000  | 0xFE40FFFF  | CIO2 MMIO BAR in ACPI mode    |
  | 2 MB - 64KB | 0xFE410000  | 0xFE5FFFFF  | Unused                        |
  | 2 MB        | 0xFE600000  | 0xFE7FFFFF  | Temp address                  |
  +-------------------------------------------------------------------------+

#ifdef SERVER_BIOS_FLAG
  HSX map:
    PCH preserved MMIO range, from 0xFC000000 to 0xFE7FFFFF

    Detailed recommended static allocation
    +-------------------------------------------------------------------------+
    | Size        | Start       | End         | Usage                         |
    | 256 KB      | 0xFC0C0000  | 0xFC0FFFFF  | TraceHub FW BAR               |
    | 1 MB        | 0xFC100000  | 0xFC1FFFFF  | TraceHub MTB BAR              |
    | 2 MB        | 0xFC200000  | 0xFC3FFFFF  | TraceHub SW BAR               |
    | 16 MB       | 0xFD000000  | 0xFDFFFFFF  | SBREG                         |
    | 64 KB       | 0xFE000000  | 0xFE00FFFF  | PMC MBAR                      |
    | 4 KB        | 0xFE010000  | 0xFE010FFF  | SPI BAR0                      |
    | 88 KB       | 0xFE020000  | 0xFE035FFF  | SerialIo BAR in ACPI mode     |
    | 24 KB       | 0xFE036000  | 0xFE03BFFF  | Unused                        |
    | 4 KB        | 0xFE03C000  | 0xFE03CFFF  | Thermal Device in ACPI mode   |
    | 524 KB      | 0xFE03D000  | 0xFE0BFFFF  | Unused                        |
    | 64 KB       | 0xFE400000  | 0xFE40FFFF  | CIO2 MMIO BAR in ACPI mode    |
    | 2 MB - 64KB | 0xFE410000  | 0xFE5FFFFF  | Unused                        |
    | 2 MB        | 0xFE600000  | 0xFE7FFFFF  | Temp address                  |
    +-------------------------------------------------------------------------+
#endif //SERVER_BIOS_FLAG
**/
#define PCH_PRESERVED_BASE_ADDRESS      0xFD000000     ///< Pch preserved MMIO base address
#define PCH_PRESERVED_MMIO_SIZE         0x01800000     ///< 24MB
#define PCH_PCR_BASE_ADDRESS            0xFD000000     ///< SBREG MMIO base address
#define PCH_PCR_MMIO_SIZE               0x01000000     ///< 16MB
#define PCH_PWRM_BASE_ADDRESS           0xFE000000     ///< PMC MBAR MMIO base address
#define PCH_PWRM_MMIO_SIZE              0x00010000     ///< 64KB
#define PCH_SPI_BASE_ADDRESS            0xFE010000     ///< SPI BAR0 MMIO base address
#define PCH_SPI_MMIO_SIZE               0x00001000     ///< 4KB
#define PCH_THERMAL_BASE_ADDRESS        0xFE03C000     ///< Thermal Device in ACPI mode
#define PCH_THERMAL_MMIO_SIZE           0x00001000     ///< 4KB

#define PCH_TRACE_HUB_FW_BASE_ADDRESS   0xFE0C0000     ///< TraceHub FW MMIO base address
#define PCH_TRACE_HUB_FW_MMIO_SIZE      0x00040000     ///< 256KB
#define PCH_TRACE_HUB_MTB_BASE_ADDRESS  0xFE100000     ///< TraceHub MTB MMIO base address
#define PCH_TRACE_HUB_MTB_MMIO_SIZE     0x00100000     ///< 1MB
#define PCH_TRACE_HUB_SW_BASE_ADDRESS   0xFE200000     ///< TraceHub SW MMIO base address
#define PCH_TRACE_HUB_SW_MMIO_SIZE      0x00200000     ///< 2MB
#define PCH_CIO2_BASE_ADDRESS           0xFE400000     ///< CIO2 MMIO BAR in ACPI mode
#define PCH_CIO2_MMIO_SIZE              0x00010000     ///< 64KB
#define PCH_TEMP_BASE_ADDRESS           0xFE600000     ///< preserved temp address for misc usage
#define PCH_TEMP_MMIO_SIZE              0x00200000     ///< 2MB

#endif // _PCH_PRESERVED_RESOURCES_H_