coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
smu.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #ifndef AMD_BLOCK_SMU_H
4 #define AMD_BLOCK_SMU_H
5 
6 #include <types.h>
7 #include <soc/smu.h> /* SoC-dependent definitions for SMU access */
8 
9 /* Arguments indexed locations are contiguous; the number is SoC-dependent */
10 #define SMN_SMU_MESG_ARG(x) (SMN_SMU_MESG_ARGS_BASE + ((x) * sizeof(uint32_t)))
11 
12 struct smu_payload {
14 };
15 
16 /*
17  * Send a message and bi-directional payload to the SMU. The SMU's response, if any, is
18  * returned via *arg. Returns CB_SUCCESS if success or CB_ERR on failure.
19  */
20 enum cb_err send_smu_message(enum smu_message_id message_id, struct smu_payload *arg);
21 
22 #endif /* AMD_BLOCK_SMU_H */
cb_err
coreboot error codes
Definition: cb_err.h:15
#define SMU_NUM_ARGS
Definition: smu.h:11
smu_message_id
Definition: smu.h:13
enum cb_err send_smu_message(enum smu_message_id message_id, struct smu_payload *arg)
Definition: smu.c:40
struct bootblock_arg arg
Definition: decompressor.c:22
unsigned int uint32_t
Definition: stdint.h:14
uint32_t msg[SMU_NUM_ARGS]
Definition: smu.h:13