TianoCore EDK2 master
Loading...
Searching...
No Matches
IpmiKcs.h File Reference

Go to the source code of this file.

Data Structures

struct  IPMI_KCS_REQUEST_HEADER
 
struct  IPMI_KCS_RESPONSE_HEADER
 

Macros

#define IPMI_KCS_STATUS_REGISTER_OFFSET   1
 
#define IPMI_KCS_COMMAND_REGISTER_OFFSET   1
 
#define IPMI_KCS_DATA_OUT_REGISTER_OFFSET   0
 
#define IPMI_KCS_DATA_IN_REGISTER_OFFSET   0
 
#define IPMI_KCS_OBF   BIT0
 
#define IPMI_KCS_IBF   BIT1
 
#define IPMI_KCS_SMS_ATN   BIT2
 
#define IPMI_KCS_COMMAND_DATA   BIT3
 
#define IPMI_KCS_OEM1   BIT4
 
#define IPMI_KCS_OEM2   BIT5
 
#define IPMI_KCS_S0   BIT6
 
#define IPMI_KCS_S1   BIT7
 
#define IPMI_KCS_CONTROL_CODE_GET_STATUS_ABORT   0x60
 
#define IPMI_KCS_CONTROL_CODE_WRITE_START   0x61
 
#define IPMI_KCS_CONTROL_CODE_WRITE_END   0x62
 
#define IPMI_KCS_CONTROL_CODE_READ   0x68
 
#define IPMI_KCS_STATUS_NO_ERROR   0x00
 
#define IPMI_KCS_STATUS_ABORT   0x01
 
#define IPMI_KCS_STATUS_ILLEGAL   0x02
 
#define IPMI_KCS_STATUS_LENGTH_ERROR   0x06
 
#define IPMI_KCS_STATUS_UNSPECIFIED   0xFF
 

Enumerations

enum  IPMI_KCS_STATE { IpmiKcsIdleState = 0 , IpmiKcsReadState , IpmiKcsWriteState , IpmiKcsErrorState }
 

Detailed Description

IPMI KCS Register Definitions

Copyright (C) 2023 Advanced Micro Devices, Inc. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Revision Reference:
IPMI Specification Version 2.0, Rev. 1.1 https://www.intel.com/content/www/us/en/products/docs/servers/ipmi/ipmi-second-gen-interface-spec-v2-rev1-1.html

Definition in file IpmiKcs.h.

Macro Definition Documentation

◆ IPMI_KCS_COMMAND_DATA

#define IPMI_KCS_COMMAND_DATA   BIT3

Definition at line 27 of file IpmiKcs.h.

◆ IPMI_KCS_COMMAND_REGISTER_OFFSET

#define IPMI_KCS_COMMAND_REGISTER_OFFSET   1

Definition at line 17 of file IpmiKcs.h.

◆ IPMI_KCS_CONTROL_CODE_GET_STATUS_ABORT

#define IPMI_KCS_CONTROL_CODE_GET_STATUS_ABORT   0x60

IPMI KCS Interface Control Codes

Definition at line 36 of file IpmiKcs.h.

◆ IPMI_KCS_CONTROL_CODE_READ

#define IPMI_KCS_CONTROL_CODE_READ   0x68

Definition at line 39 of file IpmiKcs.h.

◆ IPMI_KCS_CONTROL_CODE_WRITE_END

#define IPMI_KCS_CONTROL_CODE_WRITE_END   0x62

Definition at line 38 of file IpmiKcs.h.

◆ IPMI_KCS_CONTROL_CODE_WRITE_START

#define IPMI_KCS_CONTROL_CODE_WRITE_START   0x61

Definition at line 37 of file IpmiKcs.h.

◆ IPMI_KCS_DATA_IN_REGISTER_OFFSET

#define IPMI_KCS_DATA_IN_REGISTER_OFFSET   0

Definition at line 19 of file IpmiKcs.h.

◆ IPMI_KCS_DATA_OUT_REGISTER_OFFSET

#define IPMI_KCS_DATA_OUT_REGISTER_OFFSET   0

Definition at line 18 of file IpmiKcs.h.

◆ IPMI_KCS_IBF

#define IPMI_KCS_IBF   BIT1

Definition at line 25 of file IpmiKcs.h.

◆ IPMI_KCS_OBF

#define IPMI_KCS_OBF   BIT0

IPMI KCS Interface Status Bits

Definition at line 24 of file IpmiKcs.h.

◆ IPMI_KCS_OEM1

#define IPMI_KCS_OEM1   BIT4

Definition at line 28 of file IpmiKcs.h.

◆ IPMI_KCS_OEM2

#define IPMI_KCS_OEM2   BIT5

Definition at line 29 of file IpmiKcs.h.

◆ IPMI_KCS_S0

#define IPMI_KCS_S0   BIT6

Definition at line 30 of file IpmiKcs.h.

◆ IPMI_KCS_S1

#define IPMI_KCS_S1   BIT7

Definition at line 31 of file IpmiKcs.h.

◆ IPMI_KCS_SMS_ATN

#define IPMI_KCS_SMS_ATN   BIT2

Definition at line 26 of file IpmiKcs.h.

◆ IPMI_KCS_STATUS_ABORT

#define IPMI_KCS_STATUS_ABORT   0x01

Definition at line 45 of file IpmiKcs.h.

◆ IPMI_KCS_STATUS_ILLEGAL

#define IPMI_KCS_STATUS_ILLEGAL   0x02

Definition at line 46 of file IpmiKcs.h.

◆ IPMI_KCS_STATUS_LENGTH_ERROR

#define IPMI_KCS_STATUS_LENGTH_ERROR   0x06

Definition at line 47 of file IpmiKcs.h.

◆ IPMI_KCS_STATUS_NO_ERROR

#define IPMI_KCS_STATUS_NO_ERROR   0x00

Status Codes

Definition at line 44 of file IpmiKcs.h.

◆ IPMI_KCS_STATUS_REGISTER_OFFSET

#define IPMI_KCS_STATUS_REGISTER_OFFSET   1

Definition at line 16 of file IpmiKcs.h.

◆ IPMI_KCS_STATUS_UNSPECIFIED

#define IPMI_KCS_STATUS_UNSPECIFIED   0xFF

Definition at line 48 of file IpmiKcs.h.

Enumeration Type Documentation

◆ IPMI_KCS_STATE

KCS Interface State Bit

Definition at line 53 of file IpmiKcs.h.