mirror of
https://github.com/projectacrn/acrn-hypervisor.git
synced 2025-12-17 18:32:40 +00:00
Signature of RTCT ACPI table maybe "PTCT"(v1) or "RTCT"(v2). and the MAGIC number in CRL header is also changed from "PTCM" to "RTCM". This patch refine the code to detect RTCT table for both v1 and v2. Tracked-On: #6020 Signed-off-by: Yonghua Huang <yonghua.huang@intel.com>
34 lines
744 B
C
34 lines
744 B
C
/*
|
|
* Copyright (C) 2020 Intel Corporation. All rights reserved.
|
|
*
|
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
*/
|
|
|
|
#ifndef RTCM_H
|
|
#define RTCM_H
|
|
|
|
#include <asm/rtct.h>
|
|
|
|
#define MSABI __attribute__((ms_abi))
|
|
|
|
typedef int32_t MSABI(*rtcm_abi_func)(uint32_t command, void *command_struct);
|
|
|
|
#define RTCM_CMD_INIT_SOFTWARE_SRAM (int32_t)1U
|
|
#define RTCM_CMD_CPUID (int32_t)2U
|
|
#define RTCM_CMD_RDMSR (int32_t)3U
|
|
#define RTCM_CMD_WRMSR (int32_t)4U
|
|
|
|
#define RTCM_MAGIC 0x5054434dU
|
|
#define RTCM_MAGIC_V2 0x5254434dU
|
|
|
|
struct rtcm_header {
|
|
uint32_t magic;
|
|
uint32_t version;
|
|
uint64_t command_offset;
|
|
} __packed;
|
|
|
|
bool init_software_sram(bool is_bsp);
|
|
void set_rtct_tbl(void *rtct_tbl_addr);
|
|
bool is_software_sram_enabled(void);
|
|
#endif /* RTCM_H */
|