brintos

brintos / linux-shallow public Read only

0
0
Text · 1.8 KiB · 53abffc Raw
63 lines · c
1/* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */2/*3 * Copyright 2017 IBM Corp.4 *5 * This program is free software; you can redistribute it and/or6 * modify it under the terms of the GNU General Public License7 * as published by the Free Software Foundation; either version8 * 2 of the License, or (at your option) any later version.9 */10 11#ifndef _UAPI_LINUX_ASPEED_LPC_CTRL_H12#define _UAPI_LINUX_ASPEED_LPC_CTRL_H13 14#include <linux/ioctl.h>15#include <linux/types.h>16 17/* Window types */18#define ASPEED_LPC_CTRL_WINDOW_FLASH	119#define ASPEED_LPC_CTRL_WINDOW_MEMORY	220 21/*22 * This driver provides a window for the host to access a BMC resource23 * across the BMC <-> Host LPC bus.24 *25 * window_type: The BMC resource that the host will access through the26 * window. BMC flash and BMC RAM.27 *28 * window_id: For each window type there may be multiple windows,29 * these are referenced by ID.30 *31 * flags: Reserved for future use, this field is expected to be32 * zeroed.33 *34 * addr: Address on the host LPC bus that the specified window should35 * be mapped. This address must be power of two aligned.36 *37 * offset: Offset into the BMC window that should be mapped to the38 * host (at addr). This must be a multiple of size.39 *40 * size: The size of the mapping. The smallest possible size is 64K.41 * This must be power of two aligned.42 *43 */44 45struct aspeed_lpc_ctrl_mapping {46	__u8	window_type;47	__u8	window_id;48	__u16	flags;49	__u32	addr;50	__u32	offset;51	__u32	size;52};53 54#define __ASPEED_LPC_CTRL_IOCTL_MAGIC	0xb255 56#define ASPEED_LPC_CTRL_IOCTL_GET_SIZE	_IOWR(__ASPEED_LPC_CTRL_IOCTL_MAGIC, \57		0x00, struct aspeed_lpc_ctrl_mapping)58 59#define ASPEED_LPC_CTRL_IOCTL_MAP	_IOW(__ASPEED_LPC_CTRL_IOCTL_MAGIC, \60		0x01, struct aspeed_lpc_ctrl_mapping)61 62#endif /* _UAPI_LINUX_ASPEED_LPC_CTRL_H */63