162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright (c) 2003-2022, Intel Corporation. All rights reserved. 462306a36Sopenharmony_ci * Intel Management Engine Interface (Intel MEI) Linux driver 562306a36Sopenharmony_ci */ 662306a36Sopenharmony_ci 762306a36Sopenharmony_ci#ifndef _MEI_MKHI_H_ 862306a36Sopenharmony_ci#define _MEI_MKHI_H_ 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci#include <linux/types.h> 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ci#define MKHI_FEATURE_PTT 0x10 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_ci#define MKHI_FWCAPS_GROUP_ID 0x3 1562306a36Sopenharmony_ci#define MKHI_FWCAPS_SET_OS_VER_APP_RULE_CMD 6 1662306a36Sopenharmony_ci#define MKHI_GEN_GROUP_ID 0xFF 1762306a36Sopenharmony_ci#define MKHI_GEN_GET_FW_VERSION_CMD 0x2 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci#define MKHI_GROUP_ID_GFX 0x30 2062306a36Sopenharmony_ci#define MKHI_GFX_RESET_WARN_CMD_REQ 0x0 2162306a36Sopenharmony_ci#define MKHI_GFX_MEMORY_READY_CMD_REQ 0x1 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ci/* Allow transition to PXP mode without approval */ 2462306a36Sopenharmony_ci#define MKHI_GFX_MEM_READY_PXP_ALLOWED 0x1 2562306a36Sopenharmony_ci 2662306a36Sopenharmony_cistruct mkhi_rule_id { 2762306a36Sopenharmony_ci __le16 rule_type; 2862306a36Sopenharmony_ci u8 feature_id; 2962306a36Sopenharmony_ci u8 reserved; 3062306a36Sopenharmony_ci} __packed; 3162306a36Sopenharmony_ci 3262306a36Sopenharmony_cistruct mkhi_fwcaps { 3362306a36Sopenharmony_ci struct mkhi_rule_id id; 3462306a36Sopenharmony_ci u8 len; 3562306a36Sopenharmony_ci u8 data[]; 3662306a36Sopenharmony_ci} __packed; 3762306a36Sopenharmony_ci 3862306a36Sopenharmony_cistruct mkhi_msg_hdr { 3962306a36Sopenharmony_ci u8 group_id; 4062306a36Sopenharmony_ci u8 command; 4162306a36Sopenharmony_ci u8 reserved; 4262306a36Sopenharmony_ci u8 result; 4362306a36Sopenharmony_ci} __packed; 4462306a36Sopenharmony_ci 4562306a36Sopenharmony_cistruct mkhi_msg { 4662306a36Sopenharmony_ci struct mkhi_msg_hdr hdr; 4762306a36Sopenharmony_ci u8 data[]; 4862306a36Sopenharmony_ci} __packed; 4962306a36Sopenharmony_ci 5062306a36Sopenharmony_cistruct mkhi_gfx_mem_ready { 5162306a36Sopenharmony_ci struct mkhi_msg_hdr hdr; 5262306a36Sopenharmony_ci u32 flags; 5362306a36Sopenharmony_ci} __packed; 5462306a36Sopenharmony_ci 5562306a36Sopenharmony_ci#endif /* _MEI_MKHI_H_ */ 56