blob: 8f9529aa11a192175893a5e6afd3bde904948493 [file] [log] [blame]
Nariman Poushin0ece80f2018-02-26 06:52:04 +00001/*
Tony K Nadackala81a3d92021-11-24 16:09:26 +00002 * Copyright (c) 2018-2023, ARM Limited and Contributors. All rights reserved.
Nariman Poushin0ece80f2018-02-26 06:52:04 +00003 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
Chandni Cherukuric8ef0452018-10-04 16:32:03 +05307#ifndef SGI_VARIANT_H
8#define SGI_VARIANT_H
Nariman Poushin0ece80f2018-02-26 06:52:04 +00009
10/* SSC_VERSION values for SGI575 */
Aditya Angadie6508952019-07-21 22:13:45 +053011#define SGI575_SSC_VER_PART_NUM 0x0783
Nariman Poushin0ece80f2018-02-26 06:52:04 +000012
Chandni Cherukuri346a7cc2019-02-27 13:59:11 +053013/* SID Version values for RD-N1E1-Edge */
14#define RD_N1E1_EDGE_SID_VER_PART_NUM 0x0786
15#define RD_E1_EDGE_CONFIG_ID 0x2
Chandni Cherukuric8ef0452018-10-04 16:32:03 +053016
Aditya Angadied339d82020-12-15 17:10:50 +053017/* SID Version values for RD-V1 */
18#define RD_V1_SID_VER_PART_NUM 0x078a
Aditya Angadie6508952019-07-21 22:13:45 +053019
Aditya Angadi503da712020-11-19 17:18:21 +053020/* SID Version values for RD-N2 */
21#define RD_N2_SID_VER_PART_NUM 0x07B7
22
Aditya Angadif894b9a2021-03-20 12:15:04 +053023/* SID Version values for RD-N2 variants */
24#define RD_N2_CFG1_SID_VER_PART_NUM 0x07B6
Tony K Nadackala81a3d92021-11-24 16:09:26 +000025#define RD_N2_CFG3_SID_VER_PART_NUM 0x07F1
Aditya Angadif894b9a2021-03-20 12:15:04 +053026
Joel Goddard38f35c82022-09-21 21:51:12 +053027/* SID Version values for RD-V2 */
28#define RD_V2_SID_VER_PART_NUM 0x07F2
29#define RD_V2_CONFIG_ID 0x1
Tony K Nadackale23ca812021-08-19 14:44:11 +010030
Chandni Cherukuric8ef0452018-10-04 16:32:03 +053031/* Structure containing SGI platform variant information */
32typedef struct sgi_platform_info {
33 unsigned int platform_id; /* Part Number of the platform */
34 unsigned int config_id; /* Config Id of the platform */
Vijayenthiran Subramaniam8af18432019-10-22 15:46:14 +053035 unsigned int chip_id; /* Chip Id or Node number */
36 unsigned int multi_chip_mode; /* Multi-chip mode availability */
Chandni Cherukuric8ef0452018-10-04 16:32:03 +053037} sgi_platform_info_t;
38
39extern sgi_platform_info_t sgi_plat_info;
40
Chandni Cherukuri3aa09f72018-11-28 11:31:51 +053041/* returns the part number of the platform*/
42unsigned int plat_arm_sgi_get_platform_id(void);
43
44/* returns the configuration id of the platform */
45unsigned int plat_arm_sgi_get_config_id(void);
46
Vijayenthiran Subramaniam8af18432019-10-22 15:46:14 +053047/* returns true if operating in multi-chip configuration */
48unsigned int plat_arm_sgi_get_multi_chip_mode(void);
49
Chandni Cherukuric8ef0452018-10-04 16:32:03 +053050#endif /* SGI_VARIANT_H */