uvdevice.h (ea9d97163523d299022fc78258eccc466d92102a) | uvdevice.h (44567ca21aaf6f60cb5dcde180b1f6aab9da33dd) |
---|---|
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2/* 3 * Copyright IBM Corp. 2022 4 * Author(s): Steffen Eiden <seiden@linux.ibm.com> 5 */ 6#ifndef __S390_ASM_UVDEVICE_H 7#define __S390_ASM_UVDEVICE_H 8 --- 55 unchanged lines hidden (view full) --- 64 * However, they do not represent the maximum the Ultravisor allows which is 65 * often way smaller. By allowing larger buffer sizes we hopefully do not need 66 * to update the code with every machine update. It is therefore possible for 67 * userspace to request more memory than actually used by kernel/UV. 68 */ 69#define UVIO_ATT_ARCB_MAX_LEN 0x100000 70#define UVIO_ATT_MEASUREMENT_MAX_LEN 0x8000 71#define UVIO_ATT_ADDITIONAL_MAX_LEN 0x8000 | 1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2/* 3 * Copyright IBM Corp. 2022 4 * Author(s): Steffen Eiden <seiden@linux.ibm.com> 5 */ 6#ifndef __S390_ASM_UVDEVICE_H 7#define __S390_ASM_UVDEVICE_H 8 --- 55 unchanged lines hidden (view full) --- 64 * However, they do not represent the maximum the Ultravisor allows which is 65 * often way smaller. By allowing larger buffer sizes we hopefully do not need 66 * to update the code with every machine update. It is therefore possible for 67 * userspace to request more memory than actually used by kernel/UV. 68 */ 69#define UVIO_ATT_ARCB_MAX_LEN 0x100000 70#define UVIO_ATT_MEASUREMENT_MAX_LEN 0x8000 71#define UVIO_ATT_ADDITIONAL_MAX_LEN 0x8000 |
72#define UVIO_ADD_SECRET_MAX_LEN 0x100000 |
|
72 73#define UVIO_DEVICE_NAME "uv" 74#define UVIO_TYPE_UVC 'u' 75 76enum UVIO_IOCTL_NR { 77 UVIO_IOCTL_UVDEV_INFO_NR = 0x00, 78 UVIO_IOCTL_ATT_NR, | 73 74#define UVIO_DEVICE_NAME "uv" 75#define UVIO_TYPE_UVC 'u' 76 77enum UVIO_IOCTL_NR { 78 UVIO_IOCTL_UVDEV_INFO_NR = 0x00, 79 UVIO_IOCTL_ATT_NR, |
80 UVIO_IOCTL_ADD_SECRET_NR, |
|
79 /* must be the last entry */ 80 UVIO_IOCTL_NUM_IOCTLS 81}; 82 83#define UVIO_IOCTL(nr) _IOWR(UVIO_TYPE_UVC, nr, struct uvio_ioctl_cb) 84#define UVIO_IOCTL_UVDEV_INFO UVIO_IOCTL(UVIO_IOCTL_UVDEV_INFO_NR) 85#define UVIO_IOCTL_ATT UVIO_IOCTL(UVIO_IOCTL_ATT_NR) | 81 /* must be the last entry */ 82 UVIO_IOCTL_NUM_IOCTLS 83}; 84 85#define UVIO_IOCTL(nr) _IOWR(UVIO_TYPE_UVC, nr, struct uvio_ioctl_cb) 86#define UVIO_IOCTL_UVDEV_INFO UVIO_IOCTL(UVIO_IOCTL_UVDEV_INFO_NR) 87#define UVIO_IOCTL_ATT UVIO_IOCTL(UVIO_IOCTL_ATT_NR) |
88#define UVIO_IOCTL_ADD_SECRET UVIO_IOCTL(UVIO_IOCTL_ADD_SECRET_NR) |
|
86 87#define UVIO_SUPP_CALL(nr) (1ULL << (nr)) 88#define UVIO_SUPP_UDEV_INFO UVIO_SUPP_CALL(UVIO_IOCTL_UDEV_INFO_NR) 89#define UVIO_SUPP_ATT UVIO_SUPP_CALL(UVIO_IOCTL_ATT_NR) | 89 90#define UVIO_SUPP_CALL(nr) (1ULL << (nr)) 91#define UVIO_SUPP_UDEV_INFO UVIO_SUPP_CALL(UVIO_IOCTL_UDEV_INFO_NR) 92#define UVIO_SUPP_ATT UVIO_SUPP_CALL(UVIO_IOCTL_ATT_NR) |
93#define UVIO_SUPP_ADD_SECRET UVIO_SUPP_CALL(UVIO_IOCTL_ADD_SECRET_NR) |
|
90 91#endif /* __S390_ASM_UVDEVICE_H */ | 94 95#endif /* __S390_ASM_UVDEVICE_H */ |