1 /** @file
2   Register names for PCH LPC/eSPI device
3 
4   Conventions:
5 
6   - Prefixes:
7     Definitions beginning with "R_" are registers
8     Definitions beginning with "B_" are bits within registers
9     Definitions beginning with "V_" are meaningful values within the bits
10     Definitions beginning with "S_" are register sizes
11     Definitions beginning with "N_" are the bit position
12   - In general, PCH registers are denoted by "_PCH_" in register names
13   - Registers / bits that are different between PCH generations are denoted by
14     "_PCH_[generation_name]_" in register/bit names.
15   - Registers / bits that are specific to PCH-H denoted by "_H_" in register/bit names.
16     Registers / bits that are specific to PCH-LP denoted by "_LP_" in register/bit names.
17     e.g., "_PCH_H_", "_PCH_LP_"
18     Registers / bits names without _H_ or _LP_ apply for both H and LP.
19   - Registers / bits that are different between SKUs are denoted by "_[SKU_name]"
20     at the end of the register/bit names
21   - Registers / bits of new devices introduced in a PCH generation will be just named
22     as "_PCH_" without [generation_name] inserted.
23 
24   Copyright (c) 2019 - 2020 Intel Corporation. All rights reserved. <BR>
25 
26   SPDX-License-Identifier: BSD-2-Clause-Patent
27 **/
28 
29 #ifndef _PCH_REGS_LPC_CNL_H_
30 #define _PCH_REGS_LPC_CNL_H_
31 
32 #define V_LPC_CFG_DID_CNL_H                       0xA300
33 #define V_LPC_CFG_DID_CNL_LP                      0x9D80
34 #define V_LPC_CFG_DID_CML_LP                      0x0280
35 
36 //
37 // PCH-LP Device IDs
38 //
39 #define V_CNL_PCH_LP_LPC_CFG_DEVICE_ID_MB_SUPER_SKU   0x9D80          ///< PCH LP Mobile
40 #define V_CNL_PCH_LP_LPC_CFG_DEVICE_ID_MB_0           0x9D81          ///< PCH LP Mobile (U)
41 #define V_CNL_PCH_LP_LPC_CFG_DEVICE_ID_MB_1           0x9D82          ///< PCH LP Mobile Locked
42 #define V_CNL_PCH_LP_LPC_CFG_DEVICE_ID_MB_2           0x9D83          ///< PCH LP Mobile (Y)
43 #define V_CNL_PCH_LP_LPC_CFG_DEVICE_ID_MB_3           0x9D84          ///< PCH LP Mobile (U)
44 #define V_CNL_PCH_LP_LPC_CFG_DEVICE_ID_MB_4           0x9D85          ///< PCH LP Mobile (U)
45 #define V_CNL_PCH_LP_LPC_CFG_DEVICE_ID_MB_5           0x9D86          ///< PCH LP Mobile (Y)
46 
47 //
48 // PCH-H Desktop LPC Device IDs
49 //
50 #define V_CNL_PCH_H_LPC_CFG_DEVICE_ID_A300_SKU        0xA300          ///< LPC/eSPI Controller
51 #define V_CNL_PCH_H_LPC_CFG_DEVICE_ID_A303_SKU        0xA303          ///< PCH H Mobile H310
52 #define V_CNL_PCH_H_LPC_CFG_DEVICE_ID_A304_SKU        0xA304          ///< PCH H Mobile H370
53 #define V_CNL_PCH_H_LPC_CFG_DEVICE_ID_A305_SKU        0xA305          ///< PCH H Mobile Z390
54 #define V_CNL_PCH_H_LPC_CFG_DEVICE_ID_A306_SKU        0xA306          ///< PCH H Mobile Q370
55 #define V_CNL_PCH_H_LPC_CFG_DEVICE_ID_A309_SKU        0xA309          ///< PCH H Mobile C246
56 #define V_CNL_PCH_H_LPC_CFG_DEVICE_ID_A30A_SKU        0xA30A          ///< PCH H Mobile C242
57 #define V_CNL_PCH_H_LPC_CFG_DEVICE_ID_A30B_SKU        0xA30B          ///< PCH H Mobile X399
58 #define V_CNL_PCH_H_LPC_CFG_DEVICE_ID_A30C_SKU        0xA30C          ///< PCH H Mobile QM370
59 #define V_CNL_PCH_H_LPC_CFG_DEVICE_ID_A30D_SKU        0xA30D          ///< PCH H Mobile HM370
60 #define V_CNL_PCH_H_LPC_CFG_DEVICE_ID_A30E_SKU        0xA30E          ///< PCH H Mobile CM246
61 
62 #endif
63