mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-25 22:20:45 +00:00
bb416465fd
Intel MID platforms have few microcontrollers inside SoC, one of them is so called System Controller Unit (SCU). Here is the driver to communicate with microcontroller. Signed-off-by: Vincent Tinelli <vincent.tinelli@intel.com> Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Simon Glass <sjg@chromium.org>
28 lines
723 B
C
28 lines
723 B
C
/*
|
|
* Copyright (c) 2017 Intel Corporation
|
|
*
|
|
* SPDX-License-Identifier: GPL-2.0+
|
|
*/
|
|
#ifndef _X86_ASM_SCU_IPC_H_
|
|
#define _X86_ASM_SCU_IPC_H_
|
|
|
|
/* IPC defines the following message types */
|
|
#define IPCMSG_WARM_RESET 0xf0
|
|
#define IPCMSG_COLD_RESET 0xf1
|
|
#define IPCMSG_SOFT_RESET 0xf2
|
|
#define IPCMSG_COLD_BOOT 0xf3
|
|
#define IPCMSG_GET_FW_REVISION 0xf4
|
|
#define IPCMSG_WATCHDOG_TIMER 0xf8 /* Set Kernel Watchdog Threshold */
|
|
|
|
struct ipc_ifwi_version {
|
|
u16 minor;
|
|
u8 major;
|
|
u8 hardware_id;
|
|
u32 reserved[3];
|
|
};
|
|
|
|
/* Issue commands to the SCU with or without data */
|
|
int scu_ipc_simple_command(u32 cmd, u32 sub);
|
|
int scu_ipc_command(u32 cmd, u32 sub, u32 *in, int inlen, u32 *out, int outlen);
|
|
|
|
#endif /* _X86_ASM_SCU_IPC_H_ */
|