mirror of
https://codeberg.org/ziglang/zig.git
synced 2025-12-06 13:54:21 +00:00
* Add missing Linux headers. Closes #9837 * Update existing headers to latest Linux. * Consolidate headers that are the same for multiple Zig target CPU architectures. For example, Linux has only an x86 directory for both x86_64 and x86 CPU architectures. Now Zig only ships an x86 directory for Linux headers, and will emit the proper corresponding -isystem flags. * tools/update-linux-headers.zig is now available for upgrading to newer Linux headers, and the update process is now documented on the wiki.
56 lines
No EOL
1.3 KiB
C
Vendored
56 lines
No EOL
1.3 KiB
C
Vendored
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
|
/*
|
|
* Interfaces for vfio-ccw
|
|
*
|
|
* Copyright IBM Corp. 2017
|
|
*
|
|
* Author(s): Dong Jia Shi <bjsdjshi@linux.vnet.ibm.com>
|
|
*/
|
|
|
|
#ifndef _VFIO_CCW_H_
|
|
#define _VFIO_CCW_H_
|
|
|
|
#include <linux/types.h>
|
|
|
|
/* used for START SUBCHANNEL, always present */
|
|
struct ccw_io_region {
|
|
#define ORB_AREA_SIZE 12
|
|
__u8 orb_area[ORB_AREA_SIZE];
|
|
#define SCSW_AREA_SIZE 12
|
|
__u8 scsw_area[SCSW_AREA_SIZE];
|
|
#define IRB_AREA_SIZE 96
|
|
__u8 irb_area[IRB_AREA_SIZE];
|
|
__u32 ret_code;
|
|
} __attribute__((packed));
|
|
|
|
/*
|
|
* used for processing commands that trigger asynchronous actions
|
|
* Note: this is controlled by a capability
|
|
*/
|
|
#define VFIO_CCW_ASYNC_CMD_HSCH (1 << 0)
|
|
#define VFIO_CCW_ASYNC_CMD_CSCH (1 << 1)
|
|
struct ccw_cmd_region {
|
|
__u32 command;
|
|
__u32 ret_code;
|
|
} __attribute__((packed));
|
|
|
|
/*
|
|
* Used for processing commands that read the subchannel-information block
|
|
* Reading this region triggers a stsch() to hardware
|
|
* Note: this is controlled by a capability
|
|
*/
|
|
struct ccw_schib_region {
|
|
#define SCHIB_AREA_SIZE 52
|
|
__u8 schib_area[SCHIB_AREA_SIZE];
|
|
} __attribute__((packed));
|
|
|
|
/*
|
|
* Used for returning a Channel Report Word to userspace.
|
|
* Note: this is controlled by a capability
|
|
*/
|
|
struct ccw_crw_region {
|
|
__u32 crw;
|
|
__u32 pad;
|
|
} __attribute__((packed));
|
|
|
|
#endif |