Linux 5.3-rc3
-----BEGIN PGP SIGNATURE----- iQFSBAABCAA8FiEEq68RxlopcLEwq+PEeb4+QwBBGIYFAl1HiQMeHHRvcnZhbGRz QGxpbnV4LWZvdW5kYXRpb24ub3JnAAoJEHm+PkMAQRiGFaIIAIM7UI5LXf7FMsVl zVemD9uDuCqNijycIfFoXvVvDt8y1PnyFJd5C/hRtXjsHyCPB49CRULE05q9ZOh6 68jDa9VYOrnZoDlhMT4kuLf74x78RP19gVgQOLok8n0V3VKt7Yqrow5FKNOYVEfq 0Rd2DqZMU5yGxo6iwG4y1PjCwvwDQ/tcaAGjc9RtOlmYl9KX9MoVHuwn4EEqO8pC 3BN5GL0c/ebiCyNKG2n+y6vJGj5Y9rekyRYrtmtvhHsfs4iBirbnssMatyGm3gNz klysGhbQO98+DoVq3qqclVP5eK0XPdIBCAkF624tBhUN8gczRoQqVRBFuKCUCrD2 h9wT8dE= =k65Y -----END PGP SIGNATURE----- Merge tag 'v5.3-rc3' into drm-next-5.4 Linux 5.3-rc3 Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
commit
3f61fd41f3
16417 changed files with 553000 additions and 428306 deletions
|
|
@ -1,14 +1,14 @@
|
|||
# SPDX-License-Identifier: GPL-2.0
|
||||
ifeq ($(wildcard $(srctree)/arch/$(SRCARCH)/include/uapi/asm/a.out.h),)
|
||||
no-export-headers += a.out.h
|
||||
no-export-headers += linux/a.out.h
|
||||
endif
|
||||
|
||||
ifeq ($(wildcard $(srctree)/arch/$(SRCARCH)/include/uapi/asm/kvm.h),)
|
||||
no-export-headers += kvm.h
|
||||
no-export-headers += linux/kvm.h
|
||||
endif
|
||||
|
||||
ifeq ($(wildcard $(srctree)/arch/$(SRCARCH)/include/uapi/asm/kvm_para.h),)
|
||||
ifeq ($(wildcard $(objtree)/arch/$(SRCARCH)/include/generated/uapi/asm/kvm_para.h),)
|
||||
no-export-headers += kvm_para.h
|
||||
no-export-headers += linux/kvm_para.h
|
||||
endif
|
||||
endif
|
||||
|
|
@ -19,15 +19,18 @@
|
|||
#define MAP_TYPE 0x0f /* Mask for type of mapping */
|
||||
#define MAP_FIXED 0x10 /* Interpret addr exactly */
|
||||
#define MAP_ANONYMOUS 0x20 /* don't use a file */
|
||||
#ifdef CONFIG_MMAP_ALLOW_UNINITIALIZED
|
||||
# define MAP_UNINITIALIZED 0x4000000 /* For anonymous mmap, memory could be uninitialized */
|
||||
#else
|
||||
# define MAP_UNINITIALIZED 0x0 /* Don't support this flag */
|
||||
#endif
|
||||
|
||||
/* 0x0100 - 0x80000 flags are defined in asm-generic/mman.h */
|
||||
/* 0x0100 - 0x4000 flags are defined in asm-generic/mman.h */
|
||||
#define MAP_POPULATE 0x008000 /* populate (prefault) pagetables */
|
||||
#define MAP_NONBLOCK 0x010000 /* do not block on IO */
|
||||
#define MAP_STACK 0x020000 /* give out an address that is best suited for process/thread stacks */
|
||||
#define MAP_HUGETLB 0x040000 /* create a huge page mapping */
|
||||
#define MAP_SYNC 0x080000 /* perform synchronous page faults for the mapping */
|
||||
#define MAP_FIXED_NOREPLACE 0x100000 /* MAP_FIXED which doesn't unmap underlying mapping */
|
||||
|
||||
#define MAP_UNINITIALIZED 0x4000000 /* For anonymous mmap, memory could be
|
||||
* uninitialized */
|
||||
|
||||
/*
|
||||
* Flags for mlock
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -9,13 +9,11 @@
|
|||
#define MAP_EXECUTABLE 0x1000 /* mark it as an executable */
|
||||
#define MAP_LOCKED 0x2000 /* pages are locked */
|
||||
#define MAP_NORESERVE 0x4000 /* don't check for reservations */
|
||||
#define MAP_POPULATE 0x8000 /* populate (prefault) pagetables */
|
||||
#define MAP_NONBLOCK 0x10000 /* do not block on IO */
|
||||
#define MAP_STACK 0x20000 /* give out an address that is best suited for process/thread stacks */
|
||||
#define MAP_HUGETLB 0x40000 /* create a huge page mapping */
|
||||
#define MAP_SYNC 0x80000 /* perform synchronous page faults for the mapping */
|
||||
|
||||
/* Bits [26:31] are reserved, see mman-common.h for MAP_HUGETLB usage */
|
||||
/*
|
||||
* Bits [26:31] are reserved, see asm-generic/hugetlb_encode.h
|
||||
* for MAP_HUGETLB usage
|
||||
*/
|
||||
|
||||
#define MCL_CURRENT 1 /* lock all current mappings */
|
||||
#define MCL_FUTURE 2 /* lock all future mappings */
|
||||
|
|
|
|||
|
|
@ -117,6 +117,8 @@
|
|||
#define SO_RCVTIMEO_NEW 66
|
||||
#define SO_SNDTIMEO_NEW 67
|
||||
|
||||
#define SO_DETACH_REUSEPORT_BPF 68
|
||||
|
||||
#if !defined(__KERNEL__)
|
||||
|
||||
#if __BITS_PER_LONG == 64 || (defined(__x86_64__) && defined(__ILP32__))
|
||||
|
|
|
|||
|
|
@ -844,9 +844,15 @@ __SYSCALL(__NR_fsconfig, sys_fsconfig)
|
|||
__SYSCALL(__NR_fsmount, sys_fsmount)
|
||||
#define __NR_fspick 433
|
||||
__SYSCALL(__NR_fspick, sys_fspick)
|
||||
#define __NR_pidfd_open 434
|
||||
__SYSCALL(__NR_pidfd_open, sys_pidfd_open)
|
||||
#ifdef __ARCH_WANT_SYS_CLONE3
|
||||
#define __NR_clone3 435
|
||||
__SYSCALL(__NR_clone3, sys_clone3)
|
||||
#endif
|
||||
|
||||
#undef __NR_syscalls
|
||||
#define __NR_syscalls 434
|
||||
#define __NR_syscalls 436
|
||||
|
||||
/*
|
||||
* 32 bit systems traditionally used different
|
||||
|
|
|
|||
|
|
@ -891,13 +891,11 @@ struct drm_vmw_shader_arg {
|
|||
* surface.
|
||||
* @drm_vmw_surface_flag_create_buffer: Create a backup buffer if none is
|
||||
* given.
|
||||
* @drm_vmw_surface_flag_coherent: Back surface with coherent memory.
|
||||
*/
|
||||
enum drm_vmw_surface_flags {
|
||||
drm_vmw_surface_flag_shareable = (1 << 0),
|
||||
drm_vmw_surface_flag_scanout = (1 << 1),
|
||||
drm_vmw_surface_flag_create_buffer = (1 << 2),
|
||||
drm_vmw_surface_flag_coherent = (1 << 3),
|
||||
drm_vmw_surface_flag_create_buffer = (1 << 2)
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -29,17 +29,17 @@ struct adfs_discrecord {
|
|||
__u8 log2sharesize:4;
|
||||
__u8 unused40:4;
|
||||
__u8 big_flag:1;
|
||||
__u8 unused41:1;
|
||||
__u8 unused41:7;
|
||||
__u8 nzones_high;
|
||||
__u8 reserved43;
|
||||
__le32 format_version;
|
||||
__le32 root_size;
|
||||
__u8 unused52[60 - 52];
|
||||
};
|
||||
} __attribute__((packed, aligned(4)));
|
||||
|
||||
#define ADFS_DISCRECORD (0xc00)
|
||||
#define ADFS_DR_OFFSET (0x1c0)
|
||||
#define ADFS_DR_SIZE 60
|
||||
#define ADFS_DR_SIZE_BITS (ADFS_DR_SIZE << 3)
|
||||
|
||||
|
||||
#endif /* _UAPI_ADFS_FS_H */
|
||||
|
|
|
|||
|
|
@ -281,6 +281,7 @@
|
|||
#define AUDIT_OBJ_GID 110
|
||||
#define AUDIT_FIELD_COMPARE 111
|
||||
#define AUDIT_EXE 112
|
||||
#define AUDIT_SADDR_FAM 113
|
||||
|
||||
#define AUDIT_ARG0 200
|
||||
#define AUDIT_ARG1 (AUDIT_ARG0+1)
|
||||
|
|
|
|||
|
|
@ -107,12 +107,20 @@ enum batadv_icmp_packettype {
|
|||
* @BATADV_MCAST_WANT_ALL_UNSNOOPABLES: we want all packets destined for
|
||||
* 224.0.0.0/24 or ff02::1
|
||||
* @BATADV_MCAST_WANT_ALL_IPV4: we want all IPv4 multicast packets
|
||||
* (both link-local and routable ones)
|
||||
* @BATADV_MCAST_WANT_ALL_IPV6: we want all IPv6 multicast packets
|
||||
* (both link-local and routable ones)
|
||||
* @BATADV_MCAST_WANT_NO_RTR4: we have no IPv4 multicast router and therefore
|
||||
* only need routable IPv4 multicast packets we signed up for explicitly
|
||||
* @BATADV_MCAST_WANT_NO_RTR6: we have no IPv6 multicast router and therefore
|
||||
* only need routable IPv6 multicast packets we signed up for explicitly
|
||||
*/
|
||||
enum batadv_mcast_flags {
|
||||
BATADV_MCAST_WANT_ALL_UNSNOOPABLES = 1UL << 0,
|
||||
BATADV_MCAST_WANT_ALL_IPV4 = 1UL << 1,
|
||||
BATADV_MCAST_WANT_ALL_IPV6 = 1UL << 2,
|
||||
BATADV_MCAST_WANT_NO_RTR4 = 1UL << 3,
|
||||
BATADV_MCAST_WANT_NO_RTR6 = 1UL << 4,
|
||||
};
|
||||
|
||||
/* tt data subtypes */
|
||||
|
|
|
|||
|
|
@ -170,6 +170,7 @@ enum bpf_prog_type {
|
|||
BPF_PROG_TYPE_FLOW_DISSECTOR,
|
||||
BPF_PROG_TYPE_CGROUP_SYSCTL,
|
||||
BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE,
|
||||
BPF_PROG_TYPE_CGROUP_SOCKOPT,
|
||||
};
|
||||
|
||||
enum bpf_attach_type {
|
||||
|
|
@ -192,6 +193,10 @@ enum bpf_attach_type {
|
|||
BPF_LIRC_MODE2,
|
||||
BPF_FLOW_DISSECTOR,
|
||||
BPF_CGROUP_SYSCTL,
|
||||
BPF_CGROUP_UDP4_RECVMSG,
|
||||
BPF_CGROUP_UDP6_RECVMSG,
|
||||
BPF_CGROUP_GETSOCKOPT,
|
||||
BPF_CGROUP_SETSOCKOPT,
|
||||
__MAX_BPF_ATTACH_TYPE
|
||||
};
|
||||
|
||||
|
|
@ -260,6 +265,24 @@ enum bpf_attach_type {
|
|||
*/
|
||||
#define BPF_F_ANY_ALIGNMENT (1U << 1)
|
||||
|
||||
/* BPF_F_TEST_RND_HI32 is used in BPF_PROG_LOAD command for testing purpose.
|
||||
* Verifier does sub-register def/use analysis and identifies instructions whose
|
||||
* def only matters for low 32-bit, high 32-bit is never referenced later
|
||||
* through implicit zero extension. Therefore verifier notifies JIT back-ends
|
||||
* that it is safe to ignore clearing high 32-bit for these instructions. This
|
||||
* saves some back-ends a lot of code-gen. However such optimization is not
|
||||
* necessary on some arches, for example x86_64, arm64 etc, whose JIT back-ends
|
||||
* hence hasn't used verifier's analysis result. But, we really want to have a
|
||||
* way to be able to verify the correctness of the described optimization on
|
||||
* x86_64 on which testsuites are frequently exercised.
|
||||
*
|
||||
* So, this flag is introduced. Once it is set, verifier will randomize high
|
||||
* 32-bit for those instructions who has been identified as safe to ignore them.
|
||||
* Then, if verifier is not doing correct analysis, such randomization will
|
||||
* regress tests to expose bugs.
|
||||
*/
|
||||
#define BPF_F_TEST_RND_HI32 (1U << 2)
|
||||
|
||||
/* When BPF ldimm64's insn[0].src_reg != 0 then this can have
|
||||
* two extensions:
|
||||
*
|
||||
|
|
@ -783,7 +806,7 @@ union bpf_attr {
|
|||
* based on a user-provided identifier for all traffic coming from
|
||||
* the tasks belonging to the related cgroup. See also the related
|
||||
* kernel documentation, available from the Linux sources in file
|
||||
* *Documentation/cgroup-v1/net_cls.txt*.
|
||||
* *Documentation/admin-guide/cgroup-v1/net_cls.rst*.
|
||||
*
|
||||
* The Linux kernel has two versions for cgroups: there are
|
||||
* cgroups v1 and cgroups v2. Both are available to users, who can
|
||||
|
|
@ -1548,8 +1571,11 @@ union bpf_attr {
|
|||
* but this is only implemented for native XDP (with driver
|
||||
* support) as of this writing).
|
||||
*
|
||||
* All values for *flags* are reserved for future usage, and must
|
||||
* be left at zero.
|
||||
* The lower two bits of *flags* are used as the return code if
|
||||
* the map lookup fails. This is so that the return value can be
|
||||
* one of the XDP program return codes up to XDP_TX, as chosen by
|
||||
* the caller. Any higher bits in the *flags* argument must be
|
||||
* unset.
|
||||
*
|
||||
* When used to redirect packets to net devices, this helper
|
||||
* provides a high performance increase over **bpf_redirect**\ ().
|
||||
|
|
@ -1744,6 +1770,7 @@ union bpf_attr {
|
|||
* * **BPF_SOCK_OPS_RTO_CB_FLAG** (retransmission time out)
|
||||
* * **BPF_SOCK_OPS_RETRANS_CB_FLAG** (retransmission)
|
||||
* * **BPF_SOCK_OPS_STATE_CB_FLAG** (TCP state change)
|
||||
* * **BPF_SOCK_OPS_RTT_CB_FLAG** (every RTT)
|
||||
*
|
||||
* Therefore, this function can be used to clear a callback flag by
|
||||
* setting the appropriate bit to zero. e.g. to disable the RTO
|
||||
|
|
@ -2672,6 +2699,20 @@ union bpf_attr {
|
|||
* 0 on success.
|
||||
*
|
||||
* **-ENOENT** if the bpf-local-storage cannot be found.
|
||||
*
|
||||
* int bpf_send_signal(u32 sig)
|
||||
* Description
|
||||
* Send signal *sig* to the current task.
|
||||
* Return
|
||||
* 0 on success or successfully queued.
|
||||
*
|
||||
* **-EBUSY** if work queue under nmi is full.
|
||||
*
|
||||
* **-EINVAL** if *sig* is invalid.
|
||||
*
|
||||
* **-EPERM** if no permission to send the *sig*.
|
||||
*
|
||||
* **-EAGAIN** if bpf program can try again.
|
||||
*/
|
||||
#define __BPF_FUNC_MAPPER(FN) \
|
||||
FN(unspec), \
|
||||
|
|
@ -2782,7 +2823,8 @@ union bpf_attr {
|
|||
FN(strtol), \
|
||||
FN(strtoul), \
|
||||
FN(sk_storage_get), \
|
||||
FN(sk_storage_delete),
|
||||
FN(sk_storage_delete), \
|
||||
FN(send_signal),
|
||||
|
||||
/* integer value in 'imm' field of BPF_CALL instruction selects which helper
|
||||
* function eBPF program intends to call
|
||||
|
|
@ -3031,6 +3073,12 @@ struct bpf_tcp_sock {
|
|||
* sum(delta(snd_una)), or how many bytes
|
||||
* were acked.
|
||||
*/
|
||||
__u32 dsack_dups; /* RFC4898 tcpEStatsStackDSACKDups
|
||||
* total number of DSACK blocks received
|
||||
*/
|
||||
__u32 delivered; /* Total data packets delivered incl. rexmits */
|
||||
__u32 delivered_ce; /* Like the above but only ECE marked packets */
|
||||
__u32 icsk_retransmits; /* Number of unrecovered [RTO] timeouts */
|
||||
};
|
||||
|
||||
struct bpf_sock_tuple {
|
||||
|
|
@ -3050,6 +3098,10 @@ struct bpf_sock_tuple {
|
|||
};
|
||||
};
|
||||
|
||||
struct bpf_xdp_sock {
|
||||
__u32 queue_id;
|
||||
};
|
||||
|
||||
#define XDP_PACKET_HEADROOM 256
|
||||
|
||||
/* User return codes for XDP prog type.
|
||||
|
|
@ -3141,6 +3193,7 @@ struct bpf_prog_info {
|
|||
char name[BPF_OBJ_NAME_LEN];
|
||||
__u32 ifindex;
|
||||
__u32 gpl_compatible:1;
|
||||
__u32 :31; /* alignment pad */
|
||||
__u64 netns_dev;
|
||||
__u64 netns_ino;
|
||||
__u32 nr_jited_ksyms;
|
||||
|
|
@ -3195,7 +3248,7 @@ struct bpf_sock_addr {
|
|||
__u32 user_ip4; /* Allows 1,2,4-byte read and 4-byte write.
|
||||
* Stored in network byte order.
|
||||
*/
|
||||
__u32 user_ip6[4]; /* Allows 1,2,4-byte read an 4-byte write.
|
||||
__u32 user_ip6[4]; /* Allows 1,2,4,8-byte read and 4,8-byte write.
|
||||
* Stored in network byte order.
|
||||
*/
|
||||
__u32 user_port; /* Allows 4-byte read and write.
|
||||
|
|
@ -3204,12 +3257,13 @@ struct bpf_sock_addr {
|
|||
__u32 family; /* Allows 4-byte read, but no write */
|
||||
__u32 type; /* Allows 4-byte read, but no write */
|
||||
__u32 protocol; /* Allows 4-byte read, but no write */
|
||||
__u32 msg_src_ip4; /* Allows 1,2,4-byte read an 4-byte write.
|
||||
__u32 msg_src_ip4; /* Allows 1,2,4-byte read and 4-byte write.
|
||||
* Stored in network byte order.
|
||||
*/
|
||||
__u32 msg_src_ip6[4]; /* Allows 1,2,4-byte read an 4-byte write.
|
||||
__u32 msg_src_ip6[4]; /* Allows 1,2,4,8-byte read and 4,8-byte write.
|
||||
* Stored in network byte order.
|
||||
*/
|
||||
__bpf_md_ptr(struct bpf_sock *, sk);
|
||||
};
|
||||
|
||||
/* User bpf_sock_ops struct to access socket values and specify request ops
|
||||
|
|
@ -3261,13 +3315,15 @@ struct bpf_sock_ops {
|
|||
__u32 sk_txhash;
|
||||
__u64 bytes_received;
|
||||
__u64 bytes_acked;
|
||||
__bpf_md_ptr(struct bpf_sock *, sk);
|
||||
};
|
||||
|
||||
/* Definitions for bpf_sock_ops_cb_flags */
|
||||
#define BPF_SOCK_OPS_RTO_CB_FLAG (1<<0)
|
||||
#define BPF_SOCK_OPS_RETRANS_CB_FLAG (1<<1)
|
||||
#define BPF_SOCK_OPS_STATE_CB_FLAG (1<<2)
|
||||
#define BPF_SOCK_OPS_ALL_CB_FLAGS 0x7 /* Mask of all currently
|
||||
#define BPF_SOCK_OPS_RTT_CB_FLAG (1<<3)
|
||||
#define BPF_SOCK_OPS_ALL_CB_FLAGS 0xF /* Mask of all currently
|
||||
* supported cb flags
|
||||
*/
|
||||
|
||||
|
|
@ -3322,6 +3378,8 @@ enum {
|
|||
BPF_SOCK_OPS_TCP_LISTEN_CB, /* Called on listen(2), right after
|
||||
* socket transition to LISTEN state.
|
||||
*/
|
||||
BPF_SOCK_OPS_RTT_CB, /* Called on every RTT.
|
||||
*/
|
||||
};
|
||||
|
||||
/* List of TCP states. There is a build check in net/ipv4/tcp.c to detect
|
||||
|
|
@ -3376,8 +3434,8 @@ struct bpf_raw_tracepoint_args {
|
|||
/* DIRECT: Skip the FIB rules and go to FIB table associated with device
|
||||
* OUTPUT: Do lookup from egress perspective; default is ingress
|
||||
*/
|
||||
#define BPF_FIB_LOOKUP_DIRECT BIT(0)
|
||||
#define BPF_FIB_LOOKUP_OUTPUT BIT(1)
|
||||
#define BPF_FIB_LOOKUP_DIRECT (1U << 0)
|
||||
#define BPF_FIB_LOOKUP_OUTPUT (1U << 1)
|
||||
|
||||
enum {
|
||||
BPF_FIB_LKUP_RET_SUCCESS, /* lookup successful */
|
||||
|
|
@ -3500,4 +3558,15 @@ struct bpf_sysctl {
|
|||
*/
|
||||
};
|
||||
|
||||
struct bpf_sockopt {
|
||||
__bpf_md_ptr(struct bpf_sock *, sk);
|
||||
__bpf_md_ptr(void *, optval);
|
||||
__bpf_md_ptr(void *, optval_end);
|
||||
|
||||
__s32 level;
|
||||
__s32 optname;
|
||||
__s32 optlen;
|
||||
__s32 retval;
|
||||
};
|
||||
|
||||
#endif /* _UAPI__LINUX_BPF_H__ */
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _UAPI_LINUX_BPFILTER_H
|
||||
#define _UAPI_LINUX_BPFILTER_H
|
||||
|
||||
|
|
|
|||
|
|
@ -866,6 +866,8 @@ enum btrfs_raid_types {
|
|||
#define BTRFS_BLOCK_GROUP_RAID56_MASK (BTRFS_BLOCK_GROUP_RAID5 | \
|
||||
BTRFS_BLOCK_GROUP_RAID6)
|
||||
|
||||
#define BTRFS_BLOCK_GROUP_RAID1_MASK (BTRFS_BLOCK_GROUP_RAID1)
|
||||
|
||||
/*
|
||||
* We need a bit for restriper to be able to tell when chunks of type
|
||||
* SINGLE are available. This "extended" profile format is used in
|
||||
|
|
|
|||
|
|
@ -144,6 +144,7 @@ static inline void cec_msg_set_reply_to(struct cec_msg *msg,
|
|||
|
||||
/* cec_msg flags field */
|
||||
#define CEC_MSG_FL_REPLY_TO_FOLLOWERS (1 << 0)
|
||||
#define CEC_MSG_FL_RAW (1 << 1)
|
||||
|
||||
/* cec_msg tx/rx_status field */
|
||||
#define CEC_TX_STATUS_OK (1 << 0)
|
||||
|
|
|
|||
|
|
@ -86,10 +86,6 @@ typedef unsigned long long u_quad_t;
|
|||
|
||||
#define inline
|
||||
|
||||
struct timespec {
|
||||
long ts_sec;
|
||||
long ts_nsec;
|
||||
};
|
||||
#else /* DJGPP but not KERNEL */
|
||||
#include <sys/time.h>
|
||||
typedef unsigned long long u_quad_t;
|
||||
|
|
@ -110,13 +106,6 @@ typedef unsigned long long u_quad_t;
|
|||
#define cdev_t dev_t
|
||||
#endif
|
||||
|
||||
#ifdef __CYGWIN32__
|
||||
struct timespec {
|
||||
time_t tv_sec; /* seconds */
|
||||
long tv_nsec; /* nanoseconds */
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifndef __BIT_TYPES_DEFINED__
|
||||
#define __BIT_TYPES_DEFINED__
|
||||
typedef signed char int8_t;
|
||||
|
|
@ -211,6 +200,11 @@ struct CodaFid {
|
|||
*/
|
||||
enum coda_vtype { C_VNON, C_VREG, C_VDIR, C_VBLK, C_VCHR, C_VLNK, C_VSOCK, C_VFIFO, C_VBAD };
|
||||
|
||||
struct coda_timespec {
|
||||
int64_t tv_sec; /* seconds */
|
||||
long tv_nsec; /* nanoseconds */
|
||||
};
|
||||
|
||||
struct coda_vattr {
|
||||
long va_type; /* vnode type (for create) */
|
||||
u_short va_mode; /* files access mode and type */
|
||||
|
|
@ -220,9 +214,9 @@ struct coda_vattr {
|
|||
long va_fileid; /* file id */
|
||||
u_quad_t va_size; /* file size in bytes */
|
||||
long va_blocksize; /* blocksize preferred for i/o */
|
||||
struct timespec va_atime; /* time of last access */
|
||||
struct timespec va_mtime; /* time of last modification */
|
||||
struct timespec va_ctime; /* time file changed */
|
||||
struct coda_timespec va_atime; /* time of last access */
|
||||
struct coda_timespec va_mtime; /* time of last modification */
|
||||
struct coda_timespec va_ctime; /* time file changed */
|
||||
u_long va_gen; /* generation number of file */
|
||||
u_long va_flags; /* flags defined for file */
|
||||
cdev_t va_rdev; /* device special file represents */
|
||||
|
|
@ -277,7 +271,8 @@ struct coda_statfs {
|
|||
#define CODA_STATFS 34
|
||||
#define CODA_STORE 35
|
||||
#define CODA_RELEASE 36
|
||||
#define CODA_NCALLS 37
|
||||
#define CODA_ACCESS_INTENT 37
|
||||
#define CODA_NCALLS 38
|
||||
|
||||
#define DOWNCALL(opcode) (opcode >= CODA_REPLACE && opcode <= CODA_PURGEFID)
|
||||
|
||||
|
|
@ -287,7 +282,12 @@ struct coda_statfs {
|
|||
|
||||
#define CIOC_KERNEL_VERSION _IOWR('c', 10, size_t)
|
||||
|
||||
#define CODA_KERNEL_VERSION 3 /* 128-bit file identifiers */
|
||||
// CODA_KERNEL_VERSION 0 /* don't care about kernel version number */
|
||||
// CODA_KERNEL_VERSION 1 /* The old venus 4.6 compatible interface */
|
||||
// CODA_KERNEL_VERSION 2 /* venus_lookup gets an extra parameter */
|
||||
// CODA_KERNEL_VERSION 3 /* 128-bit file identifiers */
|
||||
// CODA_KERNEL_VERSION 4 /* 64-bit timespec */
|
||||
#define CODA_KERNEL_VERSION 5 /* access intent support */
|
||||
|
||||
/*
|
||||
* Venus <-> Coda RPC arguments
|
||||
|
|
@ -295,8 +295,8 @@ struct coda_statfs {
|
|||
struct coda_in_hdr {
|
||||
u_int32_t opcode;
|
||||
u_int32_t unique; /* Keep multiple outstanding msgs distinct */
|
||||
pid_t pid;
|
||||
pid_t pgid;
|
||||
__kernel_pid_t pid;
|
||||
__kernel_pid_t pgid;
|
||||
vuid_t uid;
|
||||
};
|
||||
|
||||
|
|
@ -642,6 +642,25 @@ struct coda_statfs_out {
|
|||
struct coda_statfs stat;
|
||||
};
|
||||
|
||||
#define CODA_ACCESS_TYPE_READ 1
|
||||
#define CODA_ACCESS_TYPE_WRITE 2
|
||||
#define CODA_ACCESS_TYPE_MMAP 3
|
||||
#define CODA_ACCESS_TYPE_READ_FINISH 4
|
||||
#define CODA_ACCESS_TYPE_WRITE_FINISH 5
|
||||
|
||||
/* coda_access_intent: NO_OUT */
|
||||
struct coda_access_intent_in {
|
||||
struct coda_in_hdr ih;
|
||||
struct CodaFid VFid;
|
||||
int count;
|
||||
int pos;
|
||||
int type;
|
||||
};
|
||||
|
||||
struct coda_access_intent_out {
|
||||
struct coda_out_hdr out;
|
||||
};
|
||||
|
||||
/*
|
||||
* Occasionally, we don't cache the fid returned by CODA_LOOKUP.
|
||||
* For instance, if the fid is inconsistent.
|
||||
|
|
@ -673,6 +692,7 @@ union inputArgs {
|
|||
struct coda_open_by_fd_in coda_open_by_fd;
|
||||
struct coda_open_by_path_in coda_open_by_path;
|
||||
struct coda_statfs_in coda_statfs;
|
||||
struct coda_access_intent_in coda_access_intent;
|
||||
};
|
||||
|
||||
union outputArgs {
|
||||
|
|
|
|||
|
|
@ -1,28 +0,0 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _UAPI__CODA_PSDEV_H
|
||||
#define _UAPI__CODA_PSDEV_H
|
||||
|
||||
#include <linux/magic.h>
|
||||
|
||||
#define CODA_PSDEV_MAJOR 67
|
||||
#define MAX_CODADEVS 5 /* how many do we allow */
|
||||
|
||||
|
||||
/* messages between coda filesystem in kernel and Venus */
|
||||
struct upc_req {
|
||||
struct list_head uc_chain;
|
||||
caddr_t uc_data;
|
||||
u_short uc_flags;
|
||||
u_short uc_inSize; /* Size is at most 5000 bytes */
|
||||
u_short uc_outSize;
|
||||
u_short uc_opcode; /* copied from data to save lookup */
|
||||
int uc_unique;
|
||||
wait_queue_head_t uc_sleep; /* process' wait queue */
|
||||
};
|
||||
|
||||
#define CODA_REQ_ASYNC 0x1
|
||||
#define CODA_REQ_READ 0x2
|
||||
#define CODA_REQ_WRITE 0x4
|
||||
#define CODA_REQ_ABORT 0x8
|
||||
|
||||
#endif /* _UAPI__CODA_PSDEV_H */
|
||||
|
|
@ -104,6 +104,8 @@ enum devlink_command {
|
|||
DEVLINK_CMD_HEALTH_REPORTER_DUMP_CLEAR,
|
||||
|
||||
DEVLINK_CMD_FLASH_UPDATE,
|
||||
DEVLINK_CMD_FLASH_UPDATE_END, /* notification only */
|
||||
DEVLINK_CMD_FLASH_UPDATE_STATUS, /* notification only */
|
||||
|
||||
/* add new commands above here */
|
||||
__DEVLINK_CMD_MAX,
|
||||
|
|
@ -167,6 +169,14 @@ enum devlink_port_flavour {
|
|||
DEVLINK_PORT_FLAVOUR_DSA, /* Distributed switch architecture
|
||||
* interconnect port.
|
||||
*/
|
||||
DEVLINK_PORT_FLAVOUR_PCI_PF, /* Represents eswitch port for
|
||||
* the PCI PF. It is an internal
|
||||
* port that faces the PCI PF.
|
||||
*/
|
||||
DEVLINK_PORT_FLAVOUR_PCI_VF, /* Represents eswitch port
|
||||
* for the PCI VF. It is an internal
|
||||
* port that faces the PCI VF.
|
||||
*/
|
||||
};
|
||||
|
||||
enum devlink_param_cmode {
|
||||
|
|
@ -331,6 +341,12 @@ enum devlink_attr {
|
|||
|
||||
DEVLINK_ATTR_FLASH_UPDATE_FILE_NAME, /* string */
|
||||
DEVLINK_ATTR_FLASH_UPDATE_COMPONENT, /* string */
|
||||
DEVLINK_ATTR_FLASH_UPDATE_STATUS_MSG, /* string */
|
||||
DEVLINK_ATTR_FLASH_UPDATE_STATUS_DONE, /* u64 */
|
||||
DEVLINK_ATTR_FLASH_UPDATE_STATUS_TOTAL, /* u64 */
|
||||
|
||||
DEVLINK_ATTR_PORT_PCI_PF_NUMBER, /* u16 */
|
||||
DEVLINK_ATTR_PORT_PCI_VF_NUMBER, /* u16 */
|
||||
|
||||
/* add new attributes above here, update the policy in devlink.c */
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,8 @@
|
|||
/* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */
|
||||
/*
|
||||
* audio.h
|
||||
* audio.h - DEPRECATED MPEG-TS audio decoder API
|
||||
*
|
||||
* NOTE: should not be used on future drivers
|
||||
*
|
||||
* Copyright (C) 2000 Ralph Metzler <ralph@convergence.de>
|
||||
* & Marcus Metzler <marcus@convergence.de>
|
||||
|
|
@ -52,7 +54,7 @@ typedef enum {
|
|||
typedef struct audio_mixer {
|
||||
unsigned int volume_left;
|
||||
unsigned int volume_right;
|
||||
// what else do we need? bass, pass-through, ...
|
||||
/* what else do we need? bass, pass-through, ... */
|
||||
} audio_mixer_t;
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,8 @@
|
|||
/* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */
|
||||
/*
|
||||
* osd.h
|
||||
* osd.h - DEPRECATED On Screen Display API
|
||||
*
|
||||
* NOTE: should not be used on future drivers
|
||||
*
|
||||
* Copyright (C) 2001 Ralph Metzler <ralph@convergence.de>
|
||||
* & Marcus Metzler <marcus@convergence.de>
|
||||
|
|
@ -28,74 +30,108 @@
|
|||
#include <linux/compiler.h>
|
||||
|
||||
typedef enum {
|
||||
// All functions return -2 on "not open"
|
||||
OSD_Close=1, // ()
|
||||
// Disables OSD and releases the buffers
|
||||
// returns 0 on success
|
||||
OSD_Open, // (x0,y0,x1,y1,BitPerPixel[2/4/8](color&0x0F),mix[0..15](color&0xF0))
|
||||
// Opens OSD with this size and bit depth
|
||||
// returns 0 on success, -1 on DRAM allocation error, -2 on "already open"
|
||||
OSD_Show, // ()
|
||||
// enables OSD mode
|
||||
// returns 0 on success
|
||||
OSD_Hide, // ()
|
||||
// disables OSD mode
|
||||
// returns 0 on success
|
||||
OSD_Clear, // ()
|
||||
// Sets all pixel to color 0
|
||||
// returns 0 on success
|
||||
OSD_Fill, // (color)
|
||||
// Sets all pixel to color <col>
|
||||
// returns 0 on success
|
||||
OSD_SetColor, // (color,R{x0},G{y0},B{x1},opacity{y1})
|
||||
// set palette entry <num> to <r,g,b>, <mix> and <trans> apply
|
||||
// R,G,B: 0..255
|
||||
// R=Red, G=Green, B=Blue
|
||||
// opacity=0: pixel opacity 0% (only video pixel shows)
|
||||
// opacity=1..254: pixel opacity as specified in header
|
||||
// opacity=255: pixel opacity 100% (only OSD pixel shows)
|
||||
// returns 0 on success, -1 on error
|
||||
OSD_SetPalette, // (firstcolor{color},lastcolor{x0},data)
|
||||
// Set a number of entries in the palette
|
||||
// sets the entries "firstcolor" through "lastcolor" from the array "data"
|
||||
// data has 4 byte for each color:
|
||||
// R,G,B, and a opacity value: 0->transparent, 1..254->mix, 255->pixel
|
||||
OSD_SetTrans, // (transparency{color})
|
||||
// Sets transparency of mixed pixel (0..15)
|
||||
// returns 0 on success
|
||||
OSD_SetPixel, // (x0,y0,color)
|
||||
// sets pixel <x>,<y> to color number <col>
|
||||
// returns 0 on success, -1 on error
|
||||
OSD_GetPixel, // (x0,y0)
|
||||
// returns color number of pixel <x>,<y>, or -1
|
||||
OSD_SetRow, // (x0,y0,x1,data)
|
||||
// fills pixels x0,y through x1,y with the content of data[]
|
||||
// returns 0 on success, -1 on clipping all pixel (no pixel drawn)
|
||||
OSD_SetBlock, // (x0,y0,x1,y1,increment{color},data)
|
||||
// fills pixels x0,y0 through x1,y1 with the content of data[]
|
||||
// inc contains the width of one line in the data block,
|
||||
// inc<=0 uses blockwidth as linewidth
|
||||
// returns 0 on success, -1 on clipping all pixel
|
||||
OSD_FillRow, // (x0,y0,x1,color)
|
||||
// fills pixels x0,y through x1,y with the color <col>
|
||||
// returns 0 on success, -1 on clipping all pixel
|
||||
OSD_FillBlock, // (x0,y0,x1,y1,color)
|
||||
// fills pixels x0,y0 through x1,y1 with the color <col>
|
||||
// returns 0 on success, -1 on clipping all pixel
|
||||
OSD_Line, // (x0,y0,x1,y1,color)
|
||||
// draw a line from x0,y0 to x1,y1 with the color <col>
|
||||
// returns 0 on success
|
||||
OSD_Query, // (x0,y0,x1,y1,xasp{color}}), yasp=11
|
||||
// fills parameters with the picture dimensions and the pixel aspect ratio
|
||||
// returns 0 on success
|
||||
OSD_Test, // ()
|
||||
// draws a test picture. for debugging purposes only
|
||||
// returns 0 on success
|
||||
// TODO: remove "test" in final version
|
||||
OSD_Text, // (x0,y0,size,color,text)
|
||||
OSD_SetWindow, // (x0) set window with number 0<x0<8 as current
|
||||
OSD_MoveWindow, // move current window to (x0, y0)
|
||||
OSD_OpenRaw, // Open other types of OSD windows
|
||||
/* All functions return -2 on "not open" */
|
||||
OSD_Close = 1, /* () */
|
||||
/*
|
||||
* Disables OSD and releases the buffers
|
||||
* returns 0 on success
|
||||
*/
|
||||
OSD_Open, /* (x0,y0,x1,y1,BitPerPixel[2/4/8](color&0x0F),mix[0..15](color&0xF0)) */
|
||||
/*
|
||||
* Opens OSD with this size and bit depth
|
||||
* returns 0 on success, -1 on DRAM allocation error, -2 on "already open"
|
||||
*/
|
||||
OSD_Show, /* () */
|
||||
/*
|
||||
* enables OSD mode
|
||||
* returns 0 on success
|
||||
*/
|
||||
OSD_Hide, /* () */
|
||||
/*
|
||||
* disables OSD mode
|
||||
* returns 0 on success
|
||||
*/
|
||||
OSD_Clear, /* () */
|
||||
/*
|
||||
* Sets all pixel to color 0
|
||||
* returns 0 on success
|
||||
*/
|
||||
OSD_Fill, /* (color) */
|
||||
/*
|
||||
* Sets all pixel to color <col>
|
||||
* returns 0 on success
|
||||
*/
|
||||
OSD_SetColor, /* (color,R{x0},G{y0},B{x1},opacity{y1}) */
|
||||
/*
|
||||
* set palette entry <num> to <r,g,b>, <mix> and <trans> apply
|
||||
* R,G,B: 0..255
|
||||
* R=Red, G=Green, B=Blue
|
||||
* opacity=0: pixel opacity 0% (only video pixel shows)
|
||||
* opacity=1..254: pixel opacity as specified in header
|
||||
* opacity=255: pixel opacity 100% (only OSD pixel shows)
|
||||
* returns 0 on success, -1 on error
|
||||
*/
|
||||
OSD_SetPalette, /* (firstcolor{color},lastcolor{x0},data) */
|
||||
/*
|
||||
* Set a number of entries in the palette
|
||||
* sets the entries "firstcolor" through "lastcolor" from the array "data"
|
||||
* data has 4 byte for each color:
|
||||
* R,G,B, and a opacity value: 0->transparent, 1..254->mix, 255->pixel
|
||||
*/
|
||||
OSD_SetTrans, /* (transparency{color}) */
|
||||
/*
|
||||
* Sets transparency of mixed pixel (0..15)
|
||||
* returns 0 on success
|
||||
*/
|
||||
OSD_SetPixel, /* (x0,y0,color) */
|
||||
/*
|
||||
* sets pixel <x>,<y> to color number <col>
|
||||
* returns 0 on success, -1 on error
|
||||
*/
|
||||
OSD_GetPixel, /* (x0,y0) */
|
||||
/* returns color number of pixel <x>,<y>, or -1 */
|
||||
OSD_SetRow, /* (x0,y0,x1,data) */
|
||||
/*
|
||||
* fills pixels x0,y through x1,y with the content of data[]
|
||||
* returns 0 on success, -1 on clipping all pixel (no pixel drawn)
|
||||
*/
|
||||
OSD_SetBlock, /* (x0,y0,x1,y1,increment{color},data) */
|
||||
/*
|
||||
* fills pixels x0,y0 through x1,y1 with the content of data[]
|
||||
* inc contains the width of one line in the data block,
|
||||
* inc<=0 uses blockwidth as linewidth
|
||||
* returns 0 on success, -1 on clipping all pixel
|
||||
*/
|
||||
OSD_FillRow, /* (x0,y0,x1,color) */
|
||||
/*
|
||||
* fills pixels x0,y through x1,y with the color <col>
|
||||
* returns 0 on success, -1 on clipping all pixel
|
||||
*/
|
||||
OSD_FillBlock, /* (x0,y0,x1,y1,color) */
|
||||
/*
|
||||
* fills pixels x0,y0 through x1,y1 with the color <col>
|
||||
* returns 0 on success, -1 on clipping all pixel
|
||||
*/
|
||||
OSD_Line, /* (x0,y0,x1,y1,color) */
|
||||
/*
|
||||
* draw a line from x0,y0 to x1,y1 with the color <col>
|
||||
* returns 0 on success
|
||||
*/
|
||||
OSD_Query, /* (x0,y0,x1,y1,xasp{color}}), yasp=11 */
|
||||
/*
|
||||
* fills parameters with the picture dimensions and the pixel aspect ratio
|
||||
* returns 0 on success
|
||||
*/
|
||||
OSD_Test, /* () */
|
||||
/*
|
||||
* draws a test picture. for debugging purposes only
|
||||
* returns 0 on success
|
||||
* TODO: remove "test" in final version
|
||||
*/
|
||||
OSD_Text, /* (x0,y0,size,color,text) */
|
||||
OSD_SetWindow, /* (x0) set window with number 0<x0<8 as current */
|
||||
OSD_MoveWindow, /* move current window to (x0, y0) */
|
||||
OSD_OpenRaw, /* Open other types of OSD windows */
|
||||
} OSD_Command;
|
||||
|
||||
typedef struct osd_cmd_s {
|
||||
|
|
|
|||
|
|
@ -1,6 +1,8 @@
|
|||
/* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */
|
||||
/*
|
||||
* video.h
|
||||
* video.h - DEPRECATED MPEG-TS video decoder API
|
||||
*
|
||||
* NOTE: should not be used on future drivers
|
||||
*
|
||||
* Copyright (C) 2000 Marcus Metzler <marcus@convergence.de>
|
||||
* & Ralph Metzler <ralph@convergence.de>
|
||||
|
|
|
|||
|
|
@ -1483,6 +1483,8 @@ enum ethtool_link_mode_bit_indices {
|
|||
ETHTOOL_LINK_MODE_200000baseLR4_ER4_FR4_Full_BIT = 64,
|
||||
ETHTOOL_LINK_MODE_200000baseDR4_Full_BIT = 65,
|
||||
ETHTOOL_LINK_MODE_200000baseCR4_Full_BIT = 66,
|
||||
ETHTOOL_LINK_MODE_100baseT1_Full_BIT = 67,
|
||||
ETHTOOL_LINK_MODE_1000baseT1_Full_BIT = 68,
|
||||
|
||||
/* must be last entry */
|
||||
__ETHTOOL_LINK_MODE_MASK_NBITS
|
||||
|
|
|
|||
|
|
@ -1,59 +0,0 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
/*
|
||||
* Copyright (C) 2002-2003 David McCullough <davidm@snapgear.com>
|
||||
* Copyright (C) 1998 Kenneth Albanowski <kjahds@kjahds.com>
|
||||
* The Silver Hammer Group, Ltd.
|
||||
*
|
||||
* This file provides the definitions and structures needed to
|
||||
* support uClinux flat-format executables.
|
||||
*/
|
||||
|
||||
#ifndef _UAPI_LINUX_FLAT_H
|
||||
#define _UAPI_LINUX_FLAT_H
|
||||
|
||||
|
||||
#define FLAT_VERSION 0x00000004L
|
||||
|
||||
#ifdef CONFIG_BINFMT_SHARED_FLAT
|
||||
#define MAX_SHARED_LIBS (4)
|
||||
#else
|
||||
#define MAX_SHARED_LIBS (1)
|
||||
#endif
|
||||
|
||||
/*
|
||||
* To make everything easier to port and manage cross platform
|
||||
* development, all fields are in network byte order.
|
||||
*/
|
||||
|
||||
struct flat_hdr {
|
||||
char magic[4];
|
||||
unsigned long rev; /* version (as above) */
|
||||
unsigned long entry; /* Offset of first executable instruction
|
||||
with text segment from beginning of file */
|
||||
unsigned long data_start; /* Offset of data segment from beginning of
|
||||
file */
|
||||
unsigned long data_end; /* Offset of end of data segment
|
||||
from beginning of file */
|
||||
unsigned long bss_end; /* Offset of end of bss segment from beginning
|
||||
of file */
|
||||
|
||||
/* (It is assumed that data_end through bss_end forms the bss segment.) */
|
||||
|
||||
unsigned long stack_size; /* Size of stack, in bytes */
|
||||
unsigned long reloc_start; /* Offset of relocation records from
|
||||
beginning of file */
|
||||
unsigned long reloc_count; /* Number of relocation records */
|
||||
unsigned long flags;
|
||||
unsigned long build_date; /* When the program/library was built */
|
||||
unsigned long filler[5]; /* Reservered, set to zero */
|
||||
};
|
||||
|
||||
#define FLAT_FLAG_RAM 0x0001 /* load program entirely into RAM */
|
||||
#define FLAT_FLAG_GOTPIC 0x0002 /* program is PIC with GOT */
|
||||
#define FLAT_FLAG_GZIP 0x0004 /* all but the header is compressed */
|
||||
#define FLAT_FLAG_GZDATA 0x0008 /* only data/relocs are compressed (for XIP) */
|
||||
#define FLAT_FLAG_KTRACE 0x0010 /* output useful kernel trace for debugging */
|
||||
|
||||
|
||||
|
||||
#endif /* _UAPI_LINUX_FLAT_H */
|
||||
|
|
@ -91,6 +91,7 @@
|
|||
#define ETH_P_802_EX1 0x88B5 /* 802.1 Local Experimental 1. */
|
||||
#define ETH_P_PREAUTH 0x88C7 /* 802.11 Preauthentication */
|
||||
#define ETH_P_TIPC 0x88CA /* TIPC */
|
||||
#define ETH_P_LLDP 0x88CC /* Link Layer Discovery Protocol */
|
||||
#define ETH_P_MACSEC 0x88E5 /* 802.1ae MACsec */
|
||||
#define ETH_P_8021AH 0x88E7 /* 802.1ah Backbone Service Tag */
|
||||
#define ETH_P_MVRP 0x88F5 /* 802.1Q MVRP */
|
||||
|
|
|
|||
|
|
@ -636,6 +636,7 @@ enum {
|
|||
IFLA_BOND_AD_USER_PORT_KEY,
|
||||
IFLA_BOND_AD_ACTOR_SYSTEM,
|
||||
IFLA_BOND_TLB_DYNAMIC_LB,
|
||||
IFLA_BOND_PEER_NOTIF_DELAY,
|
||||
__IFLA_BOND_MAX,
|
||||
};
|
||||
|
||||
|
|
@ -694,6 +695,7 @@ enum {
|
|||
IFLA_VF_IB_NODE_GUID, /* VF Infiniband node GUID */
|
||||
IFLA_VF_IB_PORT_GUID, /* VF Infiniband port GUID */
|
||||
IFLA_VF_VLAN_LIST, /* nested list of vlans, option for QinQ */
|
||||
IFLA_VF_BROADCAST, /* VF broadcast */
|
||||
__IFLA_VF_MAX,
|
||||
};
|
||||
|
||||
|
|
@ -704,6 +706,10 @@ struct ifla_vf_mac {
|
|||
__u8 mac[32]; /* MAX_ADDR_LEN */
|
||||
};
|
||||
|
||||
struct ifla_vf_broadcast {
|
||||
__u8 broadcast[32];
|
||||
};
|
||||
|
||||
struct ifla_vf_vlan {
|
||||
__u32 vf;
|
||||
__u32 vlan; /* 0 - 4095, 0 disables VLAN filter */
|
||||
|
|
|
|||
|
|
@ -123,7 +123,7 @@ struct tpacket_auxdata {
|
|||
/* Rx and Tx ring - header status */
|
||||
#define TP_STATUS_TS_SOFTWARE (1 << 29)
|
||||
#define TP_STATUS_TS_SYS_HARDWARE (1 << 30) /* deprecated, never set */
|
||||
#define TP_STATUS_TS_RAW_HARDWARE (1 << 31)
|
||||
#define TP_STATUS_TS_RAW_HARDWARE (1U << 31)
|
||||
|
||||
/* Rx ring - feature request bits */
|
||||
#define TP_FT_REQ_FILL_RXHASH 0x1
|
||||
|
|
|
|||
|
|
@ -46,6 +46,7 @@ struct xdp_mmap_offsets {
|
|||
#define XDP_UMEM_FILL_RING 5
|
||||
#define XDP_UMEM_COMPLETION_RING 6
|
||||
#define XDP_STATISTICS 7
|
||||
#define XDP_OPTIONS 8
|
||||
|
||||
struct xdp_umem_reg {
|
||||
__u64 addr; /* Start of packet data area */
|
||||
|
|
@ -60,6 +61,13 @@ struct xdp_statistics {
|
|||
__u64 tx_invalid_descs; /* Dropped due to invalid descriptor */
|
||||
};
|
||||
|
||||
struct xdp_options {
|
||||
__u32 flags;
|
||||
};
|
||||
|
||||
/* Flags for the flags field of struct xdp_options */
|
||||
#define XDP_OPTIONS_ZEROCOPY (1 << 0)
|
||||
|
||||
/* Pgoff for mmaping the rings */
|
||||
#define XDP_PGOFF_RX_RING 0
|
||||
#define XDP_PGOFF_TX_RING 0x80000000
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@ struct io_uring_sqe {
|
|||
__u32 fsync_flags;
|
||||
__u16 poll_events;
|
||||
__u32 sync_range_flags;
|
||||
__u32 msg_flags;
|
||||
};
|
||||
__u64 user_data; /* data to be passed back at completion time */
|
||||
union {
|
||||
|
|
@ -40,6 +41,7 @@ struct io_uring_sqe {
|
|||
*/
|
||||
#define IOSQE_FIXED_FILE (1U << 0) /* use fixed fileset */
|
||||
#define IOSQE_IO_DRAIN (1U << 1) /* issue after inflight IO */
|
||||
#define IOSQE_IO_LINK (1U << 2) /* links next sqe */
|
||||
|
||||
/*
|
||||
* io_uring_setup() flags
|
||||
|
|
@ -57,6 +59,8 @@ struct io_uring_sqe {
|
|||
#define IORING_OP_POLL_ADD 6
|
||||
#define IORING_OP_POLL_REMOVE 7
|
||||
#define IORING_OP_SYNC_FILE_RANGE 8
|
||||
#define IORING_OP_SENDMSG 9
|
||||
#define IORING_OP_RECVMSG 10
|
||||
|
||||
/*
|
||||
* sqe->fsync_flags
|
||||
|
|
|
|||
155
include/uapi/linux/iommu.h
Normal file
155
include/uapi/linux/iommu.h
Normal file
|
|
@ -0,0 +1,155 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
/*
|
||||
* IOMMU user API definitions
|
||||
*/
|
||||
|
||||
#ifndef _UAPI_IOMMU_H
|
||||
#define _UAPI_IOMMU_H
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
#define IOMMU_FAULT_PERM_READ (1 << 0) /* read */
|
||||
#define IOMMU_FAULT_PERM_WRITE (1 << 1) /* write */
|
||||
#define IOMMU_FAULT_PERM_EXEC (1 << 2) /* exec */
|
||||
#define IOMMU_FAULT_PERM_PRIV (1 << 3) /* privileged */
|
||||
|
||||
/* Generic fault types, can be expanded IRQ remapping fault */
|
||||
enum iommu_fault_type {
|
||||
IOMMU_FAULT_DMA_UNRECOV = 1, /* unrecoverable fault */
|
||||
IOMMU_FAULT_PAGE_REQ, /* page request fault */
|
||||
};
|
||||
|
||||
enum iommu_fault_reason {
|
||||
IOMMU_FAULT_REASON_UNKNOWN = 0,
|
||||
|
||||
/* Could not access the PASID table (fetch caused external abort) */
|
||||
IOMMU_FAULT_REASON_PASID_FETCH,
|
||||
|
||||
/* PASID entry is invalid or has configuration errors */
|
||||
IOMMU_FAULT_REASON_BAD_PASID_ENTRY,
|
||||
|
||||
/*
|
||||
* PASID is out of range (e.g. exceeds the maximum PASID
|
||||
* supported by the IOMMU) or disabled.
|
||||
*/
|
||||
IOMMU_FAULT_REASON_PASID_INVALID,
|
||||
|
||||
/*
|
||||
* An external abort occurred fetching (or updating) a translation
|
||||
* table descriptor
|
||||
*/
|
||||
IOMMU_FAULT_REASON_WALK_EABT,
|
||||
|
||||
/*
|
||||
* Could not access the page table entry (Bad address),
|
||||
* actual translation fault
|
||||
*/
|
||||
IOMMU_FAULT_REASON_PTE_FETCH,
|
||||
|
||||
/* Protection flag check failed */
|
||||
IOMMU_FAULT_REASON_PERMISSION,
|
||||
|
||||
/* access flag check failed */
|
||||
IOMMU_FAULT_REASON_ACCESS,
|
||||
|
||||
/* Output address of a translation stage caused Address Size fault */
|
||||
IOMMU_FAULT_REASON_OOR_ADDRESS,
|
||||
};
|
||||
|
||||
/**
|
||||
* struct iommu_fault_unrecoverable - Unrecoverable fault data
|
||||
* @reason: reason of the fault, from &enum iommu_fault_reason
|
||||
* @flags: parameters of this fault (IOMMU_FAULT_UNRECOV_* values)
|
||||
* @pasid: Process Address Space ID
|
||||
* @perm: requested permission access using by the incoming transaction
|
||||
* (IOMMU_FAULT_PERM_* values)
|
||||
* @addr: offending page address
|
||||
* @fetch_addr: address that caused a fetch abort, if any
|
||||
*/
|
||||
struct iommu_fault_unrecoverable {
|
||||
__u32 reason;
|
||||
#define IOMMU_FAULT_UNRECOV_PASID_VALID (1 << 0)
|
||||
#define IOMMU_FAULT_UNRECOV_ADDR_VALID (1 << 1)
|
||||
#define IOMMU_FAULT_UNRECOV_FETCH_ADDR_VALID (1 << 2)
|
||||
__u32 flags;
|
||||
__u32 pasid;
|
||||
__u32 perm;
|
||||
__u64 addr;
|
||||
__u64 fetch_addr;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct iommu_fault_page_request - Page Request data
|
||||
* @flags: encodes whether the corresponding fields are valid and whether this
|
||||
* is the last page in group (IOMMU_FAULT_PAGE_REQUEST_* values)
|
||||
* @pasid: Process Address Space ID
|
||||
* @grpid: Page Request Group Index
|
||||
* @perm: requested page permissions (IOMMU_FAULT_PERM_* values)
|
||||
* @addr: page address
|
||||
* @private_data: device-specific private information
|
||||
*/
|
||||
struct iommu_fault_page_request {
|
||||
#define IOMMU_FAULT_PAGE_REQUEST_PASID_VALID (1 << 0)
|
||||
#define IOMMU_FAULT_PAGE_REQUEST_LAST_PAGE (1 << 1)
|
||||
#define IOMMU_FAULT_PAGE_REQUEST_PRIV_DATA (1 << 2)
|
||||
__u32 flags;
|
||||
__u32 pasid;
|
||||
__u32 grpid;
|
||||
__u32 perm;
|
||||
__u64 addr;
|
||||
__u64 private_data[2];
|
||||
};
|
||||
|
||||
/**
|
||||
* struct iommu_fault - Generic fault data
|
||||
* @type: fault type from &enum iommu_fault_type
|
||||
* @padding: reserved for future use (should be zero)
|
||||
* @event: fault event, when @type is %IOMMU_FAULT_DMA_UNRECOV
|
||||
* @prm: Page Request message, when @type is %IOMMU_FAULT_PAGE_REQ
|
||||
* @padding2: sets the fault size to allow for future extensions
|
||||
*/
|
||||
struct iommu_fault {
|
||||
__u32 type;
|
||||
__u32 padding;
|
||||
union {
|
||||
struct iommu_fault_unrecoverable event;
|
||||
struct iommu_fault_page_request prm;
|
||||
__u8 padding2[56];
|
||||
};
|
||||
};
|
||||
|
||||
/**
|
||||
* enum iommu_page_response_code - Return status of fault handlers
|
||||
* @IOMMU_PAGE_RESP_SUCCESS: Fault has been handled and the page tables
|
||||
* populated, retry the access. This is "Success" in PCI PRI.
|
||||
* @IOMMU_PAGE_RESP_FAILURE: General error. Drop all subsequent faults from
|
||||
* this device if possible. This is "Response Failure" in PCI PRI.
|
||||
* @IOMMU_PAGE_RESP_INVALID: Could not handle this fault, don't retry the
|
||||
* access. This is "Invalid Request" in PCI PRI.
|
||||
*/
|
||||
enum iommu_page_response_code {
|
||||
IOMMU_PAGE_RESP_SUCCESS = 0,
|
||||
IOMMU_PAGE_RESP_INVALID,
|
||||
IOMMU_PAGE_RESP_FAILURE,
|
||||
};
|
||||
|
||||
/**
|
||||
* struct iommu_page_response - Generic page response information
|
||||
* @version: API version of this structure
|
||||
* @flags: encodes whether the corresponding fields are valid
|
||||
* (IOMMU_FAULT_PAGE_RESPONSE_* values)
|
||||
* @pasid: Process Address Space ID
|
||||
* @grpid: Page Request Group Index
|
||||
* @code: response code from &enum iommu_page_response_code
|
||||
*/
|
||||
struct iommu_page_response {
|
||||
#define IOMMU_PAGE_RESP_VERSION_1 1
|
||||
__u32 version;
|
||||
#define IOMMU_PAGE_RESP_PASID_VALID (1 << 0)
|
||||
__u32 flags;
|
||||
__u32 pasid;
|
||||
__u32 grpid;
|
||||
__u32 code;
|
||||
};
|
||||
|
||||
#endif /* _UAPI_IOMMU_H */
|
||||
|
|
@ -128,9 +128,15 @@
|
|||
enum {
|
||||
IP_VS_CONN_F_TUNNEL_TYPE_IPIP = 0, /* IPIP */
|
||||
IP_VS_CONN_F_TUNNEL_TYPE_GUE, /* GUE */
|
||||
IP_VS_CONN_F_TUNNEL_TYPE_GRE, /* GRE */
|
||||
IP_VS_CONN_F_TUNNEL_TYPE_MAX,
|
||||
};
|
||||
|
||||
/* Tunnel encapsulation flags */
|
||||
#define IP_VS_TUNNEL_ENCAP_FLAG_NOCSUM (0)
|
||||
#define IP_VS_TUNNEL_ENCAP_FLAG_CSUM (1 << 0)
|
||||
#define IP_VS_TUNNEL_ENCAP_FLAG_REMCSUM (1 << 1)
|
||||
|
||||
/*
|
||||
* The struct ip_vs_service_user and struct ip_vs_dest_user are
|
||||
* used to set IPVS rules through setsockopt.
|
||||
|
|
@ -403,6 +409,8 @@ enum {
|
|||
|
||||
IPVS_DEST_ATTR_TUN_PORT, /* tunnel port */
|
||||
|
||||
IPVS_DEST_ATTR_TUN_FLAGS, /* tunnel flags */
|
||||
|
||||
__IPVS_DEST_ATTR_MAX,
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
/*
|
||||
* Copyright (c) 2015-2018, Intel Corporation.
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -1,144 +0,0 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
/* $Id: isdn.h,v 1.125.2.3 2004/02/10 01:07:14 keil Exp $
|
||||
*
|
||||
* Main header for the Linux ISDN subsystem (linklevel).
|
||||
*
|
||||
* Copyright 1994,95,96 by Fritz Elfert (fritz@isdn4linux.de)
|
||||
* Copyright 1995,96 by Thinking Objects Software GmbH Wuerzburg
|
||||
* Copyright 1995,96 by Michael Hipp (Michael.Hipp@student.uni-tuebingen.de)
|
||||
*
|
||||
* This software may be used and distributed according to the terms
|
||||
* of the GNU General Public License, incorporated herein by reference.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef _UAPI__ISDN_H__
|
||||
#define _UAPI__ISDN_H__
|
||||
|
||||
#include <linux/ioctl.h>
|
||||
#include <linux/tty.h>
|
||||
|
||||
#define ISDN_MAX_DRIVERS 32
|
||||
#define ISDN_MAX_CHANNELS 64
|
||||
|
||||
/* New ioctl-codes */
|
||||
#define IIOCNETAIF _IO('I',1)
|
||||
#define IIOCNETDIF _IO('I',2)
|
||||
#define IIOCNETSCF _IO('I',3)
|
||||
#define IIOCNETGCF _IO('I',4)
|
||||
#define IIOCNETANM _IO('I',5)
|
||||
#define IIOCNETDNM _IO('I',6)
|
||||
#define IIOCNETGNM _IO('I',7)
|
||||
#define IIOCGETSET _IO('I',8) /* no longer supported */
|
||||
#define IIOCSETSET _IO('I',9) /* no longer supported */
|
||||
#define IIOCSETVER _IO('I',10)
|
||||
#define IIOCNETHUP _IO('I',11)
|
||||
#define IIOCSETGST _IO('I',12)
|
||||
#define IIOCSETBRJ _IO('I',13)
|
||||
#define IIOCSIGPRF _IO('I',14)
|
||||
#define IIOCGETPRF _IO('I',15)
|
||||
#define IIOCSETPRF _IO('I',16)
|
||||
#define IIOCGETMAP _IO('I',17)
|
||||
#define IIOCSETMAP _IO('I',18)
|
||||
#define IIOCNETASL _IO('I',19)
|
||||
#define IIOCNETDIL _IO('I',20)
|
||||
#define IIOCGETCPS _IO('I',21)
|
||||
#define IIOCGETDVR _IO('I',22)
|
||||
#define IIOCNETLCR _IO('I',23) /* dwabc ioctl for LCR from isdnlog */
|
||||
#define IIOCNETDWRSET _IO('I',24) /* dwabc ioctl to reset abc-values to default on a net-interface */
|
||||
|
||||
#define IIOCNETALN _IO('I',32)
|
||||
#define IIOCNETDLN _IO('I',33)
|
||||
|
||||
#define IIOCNETGPN _IO('I',34)
|
||||
|
||||
#define IIOCDBGVAR _IO('I',127)
|
||||
|
||||
#define IIOCDRVCTL _IO('I',128)
|
||||
|
||||
/* cisco hdlck device private ioctls */
|
||||
#define SIOCGKEEPPERIOD (SIOCDEVPRIVATE + 0)
|
||||
#define SIOCSKEEPPERIOD (SIOCDEVPRIVATE + 1)
|
||||
#define SIOCGDEBSERINT (SIOCDEVPRIVATE + 2)
|
||||
#define SIOCSDEBSERINT (SIOCDEVPRIVATE + 3)
|
||||
|
||||
/* Packet encapsulations for net-interfaces */
|
||||
#define ISDN_NET_ENCAP_ETHER 0
|
||||
#define ISDN_NET_ENCAP_RAWIP 1
|
||||
#define ISDN_NET_ENCAP_IPTYP 2
|
||||
#define ISDN_NET_ENCAP_CISCOHDLC 3 /* Without SLARP and keepalive */
|
||||
#define ISDN_NET_ENCAP_SYNCPPP 4
|
||||
#define ISDN_NET_ENCAP_UIHDLC 5
|
||||
#define ISDN_NET_ENCAP_CISCOHDLCK 6 /* With SLARP and keepalive */
|
||||
#define ISDN_NET_ENCAP_X25IFACE 7 /* Documentation/networking/x25-iface.txt */
|
||||
#define ISDN_NET_ENCAP_MAX_ENCAP ISDN_NET_ENCAP_X25IFACE
|
||||
|
||||
/* Facility which currently uses an ISDN-channel */
|
||||
#define ISDN_USAGE_NONE 0
|
||||
#define ISDN_USAGE_RAW 1
|
||||
#define ISDN_USAGE_MODEM 2
|
||||
#define ISDN_USAGE_NET 3
|
||||
#define ISDN_USAGE_VOICE 4
|
||||
#define ISDN_USAGE_FAX 5
|
||||
#define ISDN_USAGE_MASK 7 /* Mask to get plain usage */
|
||||
#define ISDN_USAGE_DISABLED 32 /* This bit is set, if channel is disabled */
|
||||
#define ISDN_USAGE_EXCLUSIVE 64 /* This bit is set, if channel is exclusive */
|
||||
#define ISDN_USAGE_OUTGOING 128 /* This bit is set, if channel is outgoing */
|
||||
|
||||
#define ISDN_MODEM_NUMREG 24 /* Number of Modem-Registers */
|
||||
#define ISDN_LMSNLEN 255 /* Length of tty's Listen-MSN string */
|
||||
#define ISDN_CMSGLEN 50 /* Length of CONNECT-Message to add for Modem */
|
||||
|
||||
#define ISDN_MSNLEN 32
|
||||
#define NET_DV 0x06 /* Data version for isdn_net_ioctl_cfg */
|
||||
#define TTY_DV 0x06 /* Data version for iprofd etc. */
|
||||
|
||||
#define INF_DV 0x01 /* Data version for /dev/isdninfo */
|
||||
|
||||
typedef struct {
|
||||
char drvid[25];
|
||||
unsigned long arg;
|
||||
} isdn_ioctl_struct;
|
||||
|
||||
typedef struct {
|
||||
char name[10];
|
||||
char phone[ISDN_MSNLEN];
|
||||
int outgoing;
|
||||
} isdn_net_ioctl_phone;
|
||||
|
||||
typedef struct {
|
||||
char name[10]; /* Name of interface */
|
||||
char master[10]; /* Name of Master for Bundling */
|
||||
char slave[10]; /* Name of Slave for Bundling */
|
||||
char eaz[256]; /* EAZ/MSN */
|
||||
char drvid[25]; /* DriverId for Bindings */
|
||||
int onhtime; /* Hangup-Timeout */
|
||||
int charge; /* Charge-Units */
|
||||
int l2_proto; /* Layer-2 protocol */
|
||||
int l3_proto; /* Layer-3 protocol */
|
||||
int p_encap; /* Encapsulation */
|
||||
int exclusive; /* Channel, if bound exclusive */
|
||||
int dialmax; /* Dial Retry-Counter */
|
||||
int slavedelay; /* Delay until slave starts up */
|
||||
int cbdelay; /* Delay before Callback */
|
||||
int chargehup; /* Flag: Charge-Hangup */
|
||||
int ihup; /* Flag: Hangup-Timeout on incoming line */
|
||||
int secure; /* Flag: Secure */
|
||||
int callback; /* Flag: Callback */
|
||||
int cbhup; /* Flag: Reject Call before Callback */
|
||||
int pppbind; /* ippp device for bindings */
|
||||
int chargeint; /* Use fixed charge interval length */
|
||||
int triggercps; /* BogoCPS needed for triggering slave */
|
||||
int dialtimeout; /* Dial-Timeout */
|
||||
int dialwait; /* Time to wait after failed dial */
|
||||
int dialmode; /* Flag: off / on / auto */
|
||||
} isdn_net_ioctl_cfg;
|
||||
|
||||
#define ISDN_NET_DIALMODE_MASK 0xC0 /* bits for status */
|
||||
#define ISDN_NET_DM_OFF 0x00 /* this interface is stopped */
|
||||
#define ISDN_NET_DM_MANUAL 0x40 /* this interface is on (manual) */
|
||||
#define ISDN_NET_DM_AUTO 0x80 /* this interface is autodial */
|
||||
#define ISDN_NET_DIALMODE(x) ((&(x))->flags & ISDN_NET_DIALMODE_MASK)
|
||||
|
||||
|
||||
#endif /* _UAPI__ISDN_H__ */
|
||||
|
|
@ -1,31 +0,0 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
/* $Id: isdn_divertif.h,v 1.4.6.1 2001/09/23 22:25:05 kai Exp $
|
||||
*
|
||||
* Header for the diversion supplementary interface for i4l.
|
||||
*
|
||||
* Author Werner Cornelius (werner@titro.de)
|
||||
* Copyright by Werner Cornelius (werner@titro.de)
|
||||
*
|
||||
* This software may be used and distributed according to the terms
|
||||
* of the GNU General Public License, incorporated herein by reference.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef _UAPI_LINUX_ISDN_DIVERTIF_H
|
||||
#define _UAPI_LINUX_ISDN_DIVERTIF_H
|
||||
|
||||
/***********************************************************/
|
||||
/* magic value is also used to control version information */
|
||||
/***********************************************************/
|
||||
#define DIVERT_IF_MAGIC 0x25873401
|
||||
#define DIVERT_CMD_REG 0x00 /* register command */
|
||||
#define DIVERT_CMD_REL 0x01 /* release command */
|
||||
#define DIVERT_NO_ERR 0x00 /* return value no error */
|
||||
#define DIVERT_CMD_ERR 0x01 /* invalid cmd */
|
||||
#define DIVERT_VER_ERR 0x02 /* magic/version invalid */
|
||||
#define DIVERT_REG_ERR 0x03 /* module already registered */
|
||||
#define DIVERT_REL_ERR 0x04 /* module not registered */
|
||||
#define DIVERT_REG_NAME isdn_register_divert
|
||||
|
||||
|
||||
#endif /* _UAPI_LINUX_ISDN_DIVERTIF_H */
|
||||
|
|
@ -1,68 +0,0 @@
|
|||
/* SPDX-License-Identifier: GPL-1.0+ WITH Linux-syscall-note */
|
||||
/* Linux ISDN subsystem, sync PPP, interface to ipppd
|
||||
*
|
||||
* Copyright 1994-1999 by Fritz Elfert (fritz@isdn4linux.de)
|
||||
* Copyright 1995,96 Thinking Objects Software GmbH Wuerzburg
|
||||
* Copyright 1995,96 by Michael Hipp (Michael.Hipp@student.uni-tuebingen.de)
|
||||
* Copyright 2000-2002 by Kai Germaschewski (kai@germaschewski.name)
|
||||
*
|
||||
* This software may be used and distributed according to the terms
|
||||
* of the GNU General Public License, incorporated herein by reference.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef _UAPI_LINUX_ISDN_PPP_H
|
||||
#define _UAPI_LINUX_ISDN_PPP_H
|
||||
|
||||
#define CALLTYPE_INCOMING 0x1
|
||||
#define CALLTYPE_OUTGOING 0x2
|
||||
#define CALLTYPE_CALLBACK 0x4
|
||||
|
||||
#define IPPP_VERSION "2.2.0"
|
||||
|
||||
struct pppcallinfo
|
||||
{
|
||||
int calltype;
|
||||
unsigned char local_num[64];
|
||||
unsigned char remote_num[64];
|
||||
int charge_units;
|
||||
};
|
||||
|
||||
#define PPPIOCGCALLINFO _IOWR('t',128,struct pppcallinfo)
|
||||
#define PPPIOCBUNDLE _IOW('t',129,int)
|
||||
#define PPPIOCGMPFLAGS _IOR('t',130,int)
|
||||
#define PPPIOCSMPFLAGS _IOW('t',131,int)
|
||||
#define PPPIOCSMPMTU _IOW('t',132,int)
|
||||
#define PPPIOCSMPMRU _IOW('t',133,int)
|
||||
#define PPPIOCGCOMPRESSORS _IOR('t',134,unsigned long [8])
|
||||
#define PPPIOCSCOMPRESSOR _IOW('t',135,int)
|
||||
#define PPPIOCGIFNAME _IOR('t',136, char [IFNAMSIZ] )
|
||||
|
||||
|
||||
#define SC_MP_PROT 0x00000200
|
||||
#define SC_REJ_MP_PROT 0x00000400
|
||||
#define SC_OUT_SHORT_SEQ 0x00000800
|
||||
#define SC_IN_SHORT_SEQ 0x00004000
|
||||
|
||||
#define SC_DECOMP_ON 0x01
|
||||
#define SC_COMP_ON 0x02
|
||||
#define SC_DECOMP_DISCARD 0x04
|
||||
#define SC_COMP_DISCARD 0x08
|
||||
#define SC_LINK_DECOMP_ON 0x10
|
||||
#define SC_LINK_COMP_ON 0x20
|
||||
#define SC_LINK_DECOMP_DISCARD 0x40
|
||||
#define SC_LINK_COMP_DISCARD 0x80
|
||||
|
||||
#define ISDN_PPP_COMP_MAX_OPTIONS 16
|
||||
|
||||
#define IPPP_COMP_FLAG_XMIT 0x1
|
||||
#define IPPP_COMP_FLAG_LINK 0x2
|
||||
|
||||
struct isdn_ppp_comp_data {
|
||||
int num;
|
||||
unsigned char options[ISDN_PPP_COMP_MAX_OPTIONS];
|
||||
int optlen;
|
||||
int flags;
|
||||
};
|
||||
|
||||
#endif /* _UAPI_LINUX_ISDN_PPP_H */
|
||||
|
|
@ -1,57 +0,0 @@
|
|||
/* SPDX-License-Identifier: GPL-1.0+ WITH Linux-syscall-note */
|
||||
/* $Id: isdnif.h,v 1.43.2.2 2004/01/12 23:08:35 keil Exp $
|
||||
*
|
||||
* Linux ISDN subsystem
|
||||
* Definition of the interface between the subsystem and its low-level drivers.
|
||||
*
|
||||
* Copyright 1994,95,96 by Fritz Elfert (fritz@isdn4linux.de)
|
||||
* Copyright 1995,96 Thinking Objects Software GmbH Wuerzburg
|
||||
*
|
||||
* This software may be used and distributed according to the terms
|
||||
* of the GNU General Public License, incorporated herein by reference.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef _UAPI__ISDNIF_H__
|
||||
#define _UAPI__ISDNIF_H__
|
||||
|
||||
|
||||
/*
|
||||
* Values for general protocol-selection
|
||||
*/
|
||||
#define ISDN_PTYPE_UNKNOWN 0 /* Protocol undefined */
|
||||
#define ISDN_PTYPE_1TR6 1 /* german 1TR6-protocol */
|
||||
#define ISDN_PTYPE_EURO 2 /* EDSS1-protocol */
|
||||
#define ISDN_PTYPE_LEASED 3 /* for leased lines */
|
||||
#define ISDN_PTYPE_NI1 4 /* US NI-1 protocol */
|
||||
#define ISDN_PTYPE_MAX 7 /* Max. 8 Protocols */
|
||||
|
||||
/*
|
||||
* Values for Layer-2-protocol-selection
|
||||
*/
|
||||
#define ISDN_PROTO_L2_X75I 0 /* X75/LAPB with I-Frames */
|
||||
#define ISDN_PROTO_L2_X75UI 1 /* X75/LAPB with UI-Frames */
|
||||
#define ISDN_PROTO_L2_X75BUI 2 /* X75/LAPB with UI-Frames */
|
||||
#define ISDN_PROTO_L2_HDLC 3 /* HDLC */
|
||||
#define ISDN_PROTO_L2_TRANS 4 /* Transparent (Voice) */
|
||||
#define ISDN_PROTO_L2_X25DTE 5 /* X25/LAPB DTE mode */
|
||||
#define ISDN_PROTO_L2_X25DCE 6 /* X25/LAPB DCE mode */
|
||||
#define ISDN_PROTO_L2_V11096 7 /* V.110 bitrate adaption 9600 Baud */
|
||||
#define ISDN_PROTO_L2_V11019 8 /* V.110 bitrate adaption 19200 Baud */
|
||||
#define ISDN_PROTO_L2_V11038 9 /* V.110 bitrate adaption 38400 Baud */
|
||||
#define ISDN_PROTO_L2_MODEM 10 /* Analog Modem on Board */
|
||||
#define ISDN_PROTO_L2_FAX 11 /* Fax Group 2/3 */
|
||||
#define ISDN_PROTO_L2_HDLC_56K 12 /* HDLC 56k */
|
||||
#define ISDN_PROTO_L2_MAX 15 /* Max. 16 Protocols */
|
||||
|
||||
/*
|
||||
* Values for Layer-3-protocol-selection
|
||||
*/
|
||||
#define ISDN_PROTO_L3_TRANS 0 /* Transparent */
|
||||
#define ISDN_PROTO_L3_TRANSDSP 1 /* Transparent with DSP */
|
||||
#define ISDN_PROTO_L3_FCLASS2 2 /* Fax Group 2/3 CLASS 2 */
|
||||
#define ISDN_PROTO_L3_FCLASS1 3 /* Fax Group 2/3 CLASS 1 */
|
||||
#define ISDN_PROTO_L3_MAX 7 /* Max. 8 Protocols */
|
||||
|
||||
|
||||
#endif /* _UAPI__ISDNIF_H__ */
|
||||
172
include/uapi/linux/isst_if.h
Normal file
172
include/uapi/linux/isst_if.h
Normal file
|
|
@ -0,0 +1,172 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
/*
|
||||
* Intel Speed Select Interface: OS to hardware Interface
|
||||
* Copyright (c) 2019, Intel Corporation.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Author: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
|
||||
*/
|
||||
|
||||
#ifndef __ISST_IF_H
|
||||
#define __ISST_IF_H
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
/**
|
||||
* struct isst_if_platform_info - Define platform information
|
||||
* @api_version: Version of the firmware document, which this driver
|
||||
* can communicate
|
||||
* @driver_version: Driver version, which will help user to send right
|
||||
* commands. Even if the firmware is capable, driver may
|
||||
* not be ready
|
||||
* @max_cmds_per_ioctl: Returns the maximum number of commands driver will
|
||||
* accept in a single ioctl
|
||||
* @mbox_supported: Support of mail box interface
|
||||
* @mmio_supported: Support of mmio interface for core-power feature
|
||||
*
|
||||
* Used to return output of IOCTL ISST_IF_GET_PLATFORM_INFO. This
|
||||
* information can be used by the user space, to get the driver, firmware
|
||||
* support and also number of commands to send in a single IOCTL request.
|
||||
*/
|
||||
struct isst_if_platform_info {
|
||||
__u16 api_version;
|
||||
__u16 driver_version;
|
||||
__u16 max_cmds_per_ioctl;
|
||||
__u8 mbox_supported;
|
||||
__u8 mmio_supported;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct isst_if_cpu_map - CPU mapping between logical and physical CPU
|
||||
* @logical_cpu: Linux logical CPU number
|
||||
* @physical_cpu: PUNIT CPU number
|
||||
*
|
||||
* Used to convert from Linux logical CPU to PUNIT CPU numbering scheme.
|
||||
* The PUNIT CPU number is different than APIC ID based CPU numbering.
|
||||
*/
|
||||
struct isst_if_cpu_map {
|
||||
__u32 logical_cpu;
|
||||
__u32 physical_cpu;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct isst_if_cpu_maps - structure for CPU map IOCTL
|
||||
* @cmd_count: Number of CPU mapping command in cpu_map[]
|
||||
* @cpu_map[]: Holds one or more CPU map data structure
|
||||
*
|
||||
* This structure used with ioctl ISST_IF_GET_PHY_ID to send
|
||||
* one or more CPU mapping commands. Here IOCTL return value indicates
|
||||
* number of commands sent or error number if no commands have been sent.
|
||||
*/
|
||||
struct isst_if_cpu_maps {
|
||||
__u32 cmd_count;
|
||||
struct isst_if_cpu_map cpu_map[1];
|
||||
};
|
||||
|
||||
/**
|
||||
* struct isst_if_io_reg - Read write PUNIT IO register
|
||||
* @read_write: Value 0: Read, 1: Write
|
||||
* @logical_cpu: Logical CPU number to get target PCI device.
|
||||
* @reg: PUNIT register offset
|
||||
* @value: For write operation value to write and for
|
||||
* for read placeholder read value
|
||||
*
|
||||
* Structure to specify read/write data to PUNIT registers.
|
||||
*/
|
||||
struct isst_if_io_reg {
|
||||
__u32 read_write; /* Read:0, Write:1 */
|
||||
__u32 logical_cpu;
|
||||
__u32 reg;
|
||||
__u32 value;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct isst_if_io_regs - structure for IO register commands
|
||||
* @cmd_count: Number of io reg commands in io_reg[]
|
||||
* @io_reg[]: Holds one or more io_reg command structure
|
||||
*
|
||||
* This structure used with ioctl ISST_IF_IO_CMD to send
|
||||
* one or more read/write commands to PUNIT. Here IOCTL return value
|
||||
* indicates number of requests sent or error number if no requests have
|
||||
* been sent.
|
||||
*/
|
||||
struct isst_if_io_regs {
|
||||
__u32 req_count;
|
||||
struct isst_if_io_reg io_reg[1];
|
||||
};
|
||||
|
||||
/**
|
||||
* struct isst_if_mbox_cmd - Structure to define mail box command
|
||||
* @logical_cpu: Logical CPU number to get target PCI device
|
||||
* @parameter: Mailbox parameter value
|
||||
* @req_data: Request data for the mailbox
|
||||
* @resp_data: Response data for mailbox command response
|
||||
* @command: Mailbox command value
|
||||
* @sub_command: Mailbox sub command value
|
||||
* @reserved: Unused, set to 0
|
||||
*
|
||||
* Structure to specify mailbox command to be sent to PUNIT.
|
||||
*/
|
||||
struct isst_if_mbox_cmd {
|
||||
__u32 logical_cpu;
|
||||
__u32 parameter;
|
||||
__u32 req_data;
|
||||
__u32 resp_data;
|
||||
__u16 command;
|
||||
__u16 sub_command;
|
||||
__u32 reserved;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct isst_if_mbox_cmds - structure for mailbox commands
|
||||
* @cmd_count: Number of mailbox commands in mbox_cmd[]
|
||||
* @mbox_cmd[]: Holds one or more mbox commands
|
||||
*
|
||||
* This structure used with ioctl ISST_IF_MBOX_COMMAND to send
|
||||
* one or more mailbox commands to PUNIT. Here IOCTL return value
|
||||
* indicates number of commands sent or error number if no commands have
|
||||
* been sent.
|
||||
*/
|
||||
struct isst_if_mbox_cmds {
|
||||
__u32 cmd_count;
|
||||
struct isst_if_mbox_cmd mbox_cmd[1];
|
||||
};
|
||||
|
||||
/**
|
||||
* struct isst_if_msr_cmd - Structure to define msr command
|
||||
* @read_write: Value 0: Read, 1: Write
|
||||
* @logical_cpu: Logical CPU number
|
||||
* @msr: MSR number
|
||||
* @data: For write operation, data to write, for read
|
||||
* place holder
|
||||
*
|
||||
* Structure to specify MSR command related to PUNIT.
|
||||
*/
|
||||
struct isst_if_msr_cmd {
|
||||
__u32 read_write; /* Read:0, Write:1 */
|
||||
__u32 logical_cpu;
|
||||
__u64 msr;
|
||||
__u64 data;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct isst_if_msr_cmds - structure for msr commands
|
||||
* @cmd_count: Number of mailbox commands in msr_cmd[]
|
||||
* @msr_cmd[]: Holds one or more msr commands
|
||||
*
|
||||
* This structure used with ioctl ISST_IF_MSR_COMMAND to send
|
||||
* one or more MSR commands. IOCTL return value indicates number of
|
||||
* commands sent or error number if no commands have been sent.
|
||||
*/
|
||||
struct isst_if_msr_cmds {
|
||||
__u32 cmd_count;
|
||||
struct isst_if_msr_cmd msr_cmd[1];
|
||||
};
|
||||
|
||||
#define ISST_IF_MAGIC 0xFE
|
||||
#define ISST_IF_GET_PLATFORM_INFO _IOR(ISST_IF_MAGIC, 0, struct isst_if_platform_info *)
|
||||
#define ISST_IF_GET_PHY_ID _IOWR(ISST_IF_MAGIC, 1, struct isst_if_cpu_map *)
|
||||
#define ISST_IF_IO_CMD _IOW(ISST_IF_MAGIC, 2, struct isst_if_io_regs *)
|
||||
#define ISST_IF_MBOX_COMMAND _IOWR(ISST_IF_MAGIC, 3, struct isst_if_mbox_cmds *)
|
||||
#define ISST_IF_MSR_COMMAND _IOWR(ISST_IF_MAGIC, 4, struct isst_if_msr_cmds *)
|
||||
#endif
|
||||
|
|
@ -67,6 +67,8 @@
|
|||
#define KEYCTL_PKEY_SIGN 27 /* Create a public key signature */
|
||||
#define KEYCTL_PKEY_VERIFY 28 /* Verify a public key signature */
|
||||
#define KEYCTL_RESTRICT_KEYRING 29 /* Restrict keys allowed to link to a keyring */
|
||||
#define KEYCTL_MOVE 30 /* Move keys between keyrings */
|
||||
#define KEYCTL_CAPABILITIES 31 /* Find capabilities of keyrings subsystem */
|
||||
|
||||
/* keyctl structures */
|
||||
struct keyctl_dh_params {
|
||||
|
|
@ -112,4 +114,21 @@ struct keyctl_pkey_params {
|
|||
__u32 __spare[7];
|
||||
};
|
||||
|
||||
#define KEYCTL_MOVE_EXCL 0x00000001 /* Do not displace from the to-keyring */
|
||||
|
||||
/*
|
||||
* Capabilities flags. The capabilities list is an array of 8-bit integers;
|
||||
* each integer can carry up to 8 flags.
|
||||
*/
|
||||
#define KEYCTL_CAPS0_CAPABILITIES 0x01 /* KEYCTL_CAPABILITIES supported */
|
||||
#define KEYCTL_CAPS0_PERSISTENT_KEYRINGS 0x02 /* Persistent keyrings enabled */
|
||||
#define KEYCTL_CAPS0_DIFFIE_HELLMAN 0x04 /* Diffie-Hellman computation enabled */
|
||||
#define KEYCTL_CAPS0_PUBLIC_KEY 0x08 /* Public key ops enabled */
|
||||
#define KEYCTL_CAPS0_BIG_KEY 0x10 /* big_key-type enabled */
|
||||
#define KEYCTL_CAPS0_INVALIDATE 0x20 /* KEYCTL_INVALIDATE supported */
|
||||
#define KEYCTL_CAPS0_RESTRICT_KEYRING 0x40 /* KEYCTL_RESTRICT_KEYRING supported */
|
||||
#define KEYCTL_CAPS0_MOVE 0x80 /* KEYCTL_MOVE supported */
|
||||
#define KEYCTL_CAPS1_NS_KEYRING_NAME 0x01 /* Keyring names are per-user_namespace */
|
||||
#define KEYCTL_CAPS1_NS_KEY_TAG 0x02 /* Key indexing can include a namespace tag */
|
||||
|
||||
#endif /* _LINUX_KEYCTL_H */
|
||||
|
|
|
|||
|
|
@ -116,7 +116,7 @@ struct kvm_irq_level {
|
|||
* ACPI gsi notion of irq.
|
||||
* For IA-64 (APIC model) IOAPIC0: irq 0-23; IOAPIC1: irq 24-47..
|
||||
* For X86 (standard AT mode) PIC0/1: irq 0-15. IOAPIC0: 0-23..
|
||||
* For ARM: See Documentation/virtual/kvm/api.txt
|
||||
* For ARM: See Documentation/virt/kvm/api.txt
|
||||
*/
|
||||
union {
|
||||
__u32 irq;
|
||||
|
|
@ -696,9 +696,11 @@ struct kvm_ioeventfd {
|
|||
#define KVM_X86_DISABLE_EXITS_MWAIT (1 << 0)
|
||||
#define KVM_X86_DISABLE_EXITS_HLT (1 << 1)
|
||||
#define KVM_X86_DISABLE_EXITS_PAUSE (1 << 2)
|
||||
#define KVM_X86_DISABLE_EXITS_CSTATE (1 << 3)
|
||||
#define KVM_X86_DISABLE_VALID_EXITS (KVM_X86_DISABLE_EXITS_MWAIT | \
|
||||
KVM_X86_DISABLE_EXITS_HLT | \
|
||||
KVM_X86_DISABLE_EXITS_PAUSE)
|
||||
KVM_X86_DISABLE_EXITS_PAUSE | \
|
||||
KVM_X86_DISABLE_EXITS_CSTATE)
|
||||
|
||||
/* for KVM_ENABLE_CAP */
|
||||
struct kvm_enable_cap {
|
||||
|
|
@ -993,6 +995,7 @@ struct kvm_ppc_resize_hpt {
|
|||
#define KVM_CAP_ARM_SVE 170
|
||||
#define KVM_CAP_ARM_PTRAUTH_ADDRESS 171
|
||||
#define KVM_CAP_ARM_PTRAUTH_GENERIC 172
|
||||
#define KVM_CAP_PMU_EVENT_FILTER 173
|
||||
|
||||
#ifdef KVM_CAP_IRQ_ROUTING
|
||||
|
||||
|
|
@ -1083,7 +1086,7 @@ struct kvm_xen_hvm_config {
|
|||
*
|
||||
* KVM_IRQFD_FLAG_RESAMPLE indicates resamplefd is valid and specifies
|
||||
* the irqfd to operate in resampling mode for level triggered interrupt
|
||||
* emulation. See Documentation/virtual/kvm/api.txt.
|
||||
* emulation. See Documentation/virt/kvm/api.txt.
|
||||
*/
|
||||
#define KVM_IRQFD_FLAG_RESAMPLE (1 << 1)
|
||||
|
||||
|
|
@ -1327,6 +1330,8 @@ struct kvm_s390_ucas_mapping {
|
|||
#define KVM_PPC_GET_RMMU_INFO _IOW(KVMIO, 0xb0, struct kvm_ppc_rmmu_info)
|
||||
/* Available with KVM_CAP_PPC_GET_CPU_CHAR */
|
||||
#define KVM_PPC_GET_CPU_CHAR _IOR(KVMIO, 0xb1, struct kvm_ppc_cpu_char)
|
||||
/* Available with KVM_CAP_PMU_EVENT_FILTER */
|
||||
#define KVM_SET_PMU_EVENT_FILTER _IOW(KVMIO, 0xb2, struct kvm_pmu_event_filter)
|
||||
|
||||
/* ioctl for vm fd */
|
||||
#define KVM_CREATE_DEVICE _IOWR(KVMIO, 0xe0, struct kvm_create_device)
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@
|
|||
#define KVM_HC_MIPS_CONSOLE_OUTPUT 8
|
||||
#define KVM_HC_CLOCK_PAIRING 9
|
||||
#define KVM_HC_SEND_IPI 10
|
||||
#define KVM_HC_SCHED_YIELD 11
|
||||
|
||||
/*
|
||||
* hypercalls use architecture specific
|
||||
|
|
|
|||
|
|
@ -92,5 +92,6 @@
|
|||
#define BALLOON_KVM_MAGIC 0x13661366
|
||||
#define ZSMALLOC_MAGIC 0x58295829
|
||||
#define DMA_BUF_MAGIC 0x444d4142 /* "DMAB" */
|
||||
#define Z3FOLD_MAGIC 0x33
|
||||
|
||||
#endif /* __LINUX_MAGIC_H__ */
|
||||
|
|
|
|||
|
|
@ -146,7 +146,7 @@ struct media_device_info {
|
|||
#define MEDIA_ENT_FL_CONNECTOR (1 << 1)
|
||||
|
||||
/* OR with the entity id value to find the next entity */
|
||||
#define MEDIA_ENT_ID_FLAG_NEXT (1 << 31)
|
||||
#define MEDIA_ENT_ID_FLAG_NEXT (1U << 31)
|
||||
|
||||
struct media_entity_desc {
|
||||
__u32 id;
|
||||
|
|
|
|||
|
|
@ -121,6 +121,8 @@
|
|||
#define EXPANSION_MFAULTS 0x0010 /* Multiple faults detected */
|
||||
#define EXPANSION_RESV 0xffe0 /* Unused... */
|
||||
|
||||
#define ESTATUS_1000_XFULL 0x8000 /* Can do 1000BaseX Full */
|
||||
#define ESTATUS_1000_XHALF 0x4000 /* Can do 1000BaseX Half */
|
||||
#define ESTATUS_1000_TFULL 0x2000 /* Can do 1000BT Full */
|
||||
#define ESTATUS_1000_THALF 0x1000 /* Can do 1000BT Half */
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
/* Copyright (C) 2000-2002 Joakim Axelsson <gozem@linux.nu>
|
||||
* Patrick Schaaf <bof@bof.de>
|
||||
* Martin Josefsson <gandalf@wlug.westbo.se>
|
||||
* Copyright (C) 2003-2011 Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
|
||||
* Copyright (C) 2003-2011 Jozsef Kadlecsik <kadlec@netfilter.org>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
|
|
|
|||
23
include/uapi/linux/netfilter/nf_synproxy.h
Normal file
23
include/uapi/linux/netfilter/nf_synproxy.h
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _NF_SYNPROXY_H
|
||||
#define _NF_SYNPROXY_H
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
#define NF_SYNPROXY_OPT_MSS 0x01
|
||||
#define NF_SYNPROXY_OPT_WSCALE 0x02
|
||||
#define NF_SYNPROXY_OPT_SACK_PERM 0x04
|
||||
#define NF_SYNPROXY_OPT_TIMESTAMP 0x08
|
||||
#define NF_SYNPROXY_OPT_ECN 0x10
|
||||
#define NF_SYNPROXY_OPT_MASK (NF_SYNPROXY_OPT_MSS | \
|
||||
NF_SYNPROXY_OPT_WSCALE | \
|
||||
NF_SYNPROXY_OPT_SACK_PERM | \
|
||||
NF_SYNPROXY_OPT_TIMESTAMP)
|
||||
|
||||
struct nf_synproxy_info {
|
||||
__u8 options;
|
||||
__u8 wscale;
|
||||
__u16 mss;
|
||||
};
|
||||
|
||||
#endif /* _NF_SYNPROXY_H */
|
||||
|
|
@ -192,6 +192,7 @@ enum nft_table_attributes {
|
|||
* @NFTA_CHAIN_USE: number of references to this chain (NLA_U32)
|
||||
* @NFTA_CHAIN_TYPE: type name of the string (NLA_NUL_STRING)
|
||||
* @NFTA_CHAIN_COUNTERS: counter specification of the chain (NLA_NESTED: nft_counter_attributes)
|
||||
* @NFTA_CHAIN_FLAGS: chain flags
|
||||
*/
|
||||
enum nft_chain_attributes {
|
||||
NFTA_CHAIN_UNSPEC,
|
||||
|
|
@ -204,6 +205,7 @@ enum nft_chain_attributes {
|
|||
NFTA_CHAIN_TYPE,
|
||||
NFTA_CHAIN_COUNTERS,
|
||||
NFTA_CHAIN_PAD,
|
||||
NFTA_CHAIN_FLAGS,
|
||||
__NFTA_CHAIN_MAX
|
||||
};
|
||||
#define NFTA_CHAIN_MAX (__NFTA_CHAIN_MAX - 1)
|
||||
|
|
@ -730,10 +732,12 @@ enum nft_exthdr_flags {
|
|||
*
|
||||
* @NFT_EXTHDR_OP_IPV6: match against ipv6 extension headers
|
||||
* @NFT_EXTHDR_OP_TCP: match against tcp options
|
||||
* @NFT_EXTHDR_OP_IPV4: match against ipv4 options
|
||||
*/
|
||||
enum nft_exthdr_op {
|
||||
NFT_EXTHDR_OP_IPV6,
|
||||
NFT_EXTHDR_OP_TCPOPT,
|
||||
NFT_EXTHDR_OP_IPV4,
|
||||
__NFT_EXTHDR_OP_MAX
|
||||
};
|
||||
#define NFT_EXTHDR_OP_MAX (__NFT_EXTHDR_OP_MAX - 1)
|
||||
|
|
@ -793,6 +797,8 @@ enum nft_exthdr_attributes {
|
|||
* @NFT_META_SECPATH: boolean, secpath_exists (!!skb->sp)
|
||||
* @NFT_META_IIFKIND: packet input interface kind name (dev->rtnl_link_ops->kind)
|
||||
* @NFT_META_OIFKIND: packet output interface kind name (dev->rtnl_link_ops->kind)
|
||||
* @NFT_META_BRI_IIFPVID: packet input bridge port pvid
|
||||
* @NFT_META_BRI_IIFVPROTO: packet input bridge vlan proto
|
||||
*/
|
||||
enum nft_meta_keys {
|
||||
NFT_META_LEN,
|
||||
|
|
@ -823,6 +829,8 @@ enum nft_meta_keys {
|
|||
NFT_META_SECPATH,
|
||||
NFT_META_IIFKIND,
|
||||
NFT_META_OIFKIND,
|
||||
NFT_META_BRI_IIFPVID,
|
||||
NFT_META_BRI_IIFVPROTO,
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
@ -1445,6 +1453,17 @@ enum nft_ct_timeout_timeout_attributes {
|
|||
};
|
||||
#define NFTA_CT_TIMEOUT_MAX (__NFTA_CT_TIMEOUT_MAX - 1)
|
||||
|
||||
enum nft_ct_expectation_attributes {
|
||||
NFTA_CT_EXPECT_UNSPEC,
|
||||
NFTA_CT_EXPECT_L3PROTO,
|
||||
NFTA_CT_EXPECT_L4PROTO,
|
||||
NFTA_CT_EXPECT_DPORT,
|
||||
NFTA_CT_EXPECT_TIMEOUT,
|
||||
NFTA_CT_EXPECT_SIZE,
|
||||
__NFTA_CT_EXPECT_MAX,
|
||||
};
|
||||
#define NFTA_CT_EXPECT_MAX (__NFTA_CT_EXPECT_MAX - 1)
|
||||
|
||||
#define NFT_OBJECT_UNSPEC 0
|
||||
#define NFT_OBJECT_COUNTER 1
|
||||
#define NFT_OBJECT_QUOTA 2
|
||||
|
|
@ -1454,7 +1473,8 @@ enum nft_ct_timeout_timeout_attributes {
|
|||
#define NFT_OBJECT_TUNNEL 6
|
||||
#define NFT_OBJECT_CT_TIMEOUT 7
|
||||
#define NFT_OBJECT_SECMARK 8
|
||||
#define __NFT_OBJECT_MAX 9
|
||||
#define NFT_OBJECT_CT_EXPECT 9
|
||||
#define __NFT_OBJECT_MAX 10
|
||||
#define NFT_OBJECT_MAX (__NFT_OBJECT_MAX - 1)
|
||||
|
||||
/**
|
||||
|
|
@ -1537,6 +1557,22 @@ enum nft_osf_flags {
|
|||
NFT_OSF_F_VERSION = (1 << 0),
|
||||
};
|
||||
|
||||
/**
|
||||
* enum nft_synproxy_attributes - nf_tables synproxy expression netlink attributes
|
||||
*
|
||||
* @NFTA_SYNPROXY_MSS: mss value sent to the backend (NLA_U16)
|
||||
* @NFTA_SYNPROXY_WSCALE: wscale value sent to the backend (NLA_U8)
|
||||
* @NFTA_SYNPROXY_FLAGS: flags (NLA_U32)
|
||||
*/
|
||||
enum nft_synproxy_attributes {
|
||||
NFTA_SYNPROXY_UNSPEC,
|
||||
NFTA_SYNPROXY_MSS,
|
||||
NFTA_SYNPROXY_WSCALE,
|
||||
NFTA_SYNPROXY_FLAGS,
|
||||
__NFTA_SYNPROXY_MAX,
|
||||
};
|
||||
#define NFTA_SYNPROXY_MAX (__NFTA_SYNPROXY_MAX - 1)
|
||||
|
||||
/**
|
||||
* enum nft_device_attributes - nf_tables device netlink attributes
|
||||
*
|
||||
|
|
|
|||
|
|
@ -2,18 +2,14 @@
|
|||
#ifndef _XT_SYNPROXY_H
|
||||
#define _XT_SYNPROXY_H
|
||||
|
||||
#include <linux/types.h>
|
||||
#include <linux/netfilter/nf_synproxy.h>
|
||||
|
||||
#define XT_SYNPROXY_OPT_MSS 0x01
|
||||
#define XT_SYNPROXY_OPT_WSCALE 0x02
|
||||
#define XT_SYNPROXY_OPT_SACK_PERM 0x04
|
||||
#define XT_SYNPROXY_OPT_TIMESTAMP 0x08
|
||||
#define XT_SYNPROXY_OPT_ECN 0x10
|
||||
#define XT_SYNPROXY_OPT_MSS NF_SYNPROXY_OPT_MSS
|
||||
#define XT_SYNPROXY_OPT_WSCALE NF_SYNPROXY_OPT_WSCALE
|
||||
#define XT_SYNPROXY_OPT_SACK_PERM NF_SYNPROXY_OPT_SACK_PERM
|
||||
#define XT_SYNPROXY_OPT_TIMESTAMP NF_SYNPROXY_OPT_TIMESTAMP
|
||||
#define XT_SYNPROXY_OPT_ECN NF_SYNPROXY_OPT_ECN
|
||||
|
||||
struct xt_synproxy_info {
|
||||
__u8 options;
|
||||
__u8 wscale;
|
||||
__u16 mss;
|
||||
};
|
||||
#define xt_synproxy_info nf_synproxy_info
|
||||
|
||||
#endif /* _XT_SYNPROXY_H */
|
||||
|
|
|
|||
|
|
@ -5,11 +5,17 @@
|
|||
#include <linux/types.h>
|
||||
|
||||
enum {
|
||||
XT_OWNER_UID = 1 << 0,
|
||||
XT_OWNER_GID = 1 << 1,
|
||||
XT_OWNER_SOCKET = 1 << 2,
|
||||
XT_OWNER_UID = 1 << 0,
|
||||
XT_OWNER_GID = 1 << 1,
|
||||
XT_OWNER_SOCKET = 1 << 2,
|
||||
XT_OWNER_SUPPL_GROUPS = 1 << 3,
|
||||
};
|
||||
|
||||
#define XT_OWNER_MASK (XT_OWNER_UID | \
|
||||
XT_OWNER_GID | \
|
||||
XT_OWNER_SOCKET | \
|
||||
XT_OWNER_SUPPL_GROUPS)
|
||||
|
||||
struct xt_owner_match_info {
|
||||
__u32 uid_min, uid_max;
|
||||
__u32 gid_min, gid_max;
|
||||
|
|
|
|||
56
include/uapi/linux/nexthop.h
Normal file
56
include/uapi/linux/nexthop.h
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _UAPI_LINUX_NEXTHOP_H
|
||||
#define _UAPI_LINUX_NEXTHOP_H
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
struct nhmsg {
|
||||
unsigned char nh_family;
|
||||
unsigned char nh_scope; /* return only */
|
||||
unsigned char nh_protocol; /* Routing protocol that installed nh */
|
||||
unsigned char resvd;
|
||||
unsigned int nh_flags; /* RTNH_F flags */
|
||||
};
|
||||
|
||||
/* entry in a nexthop group */
|
||||
struct nexthop_grp {
|
||||
__u32 id; /* nexthop id - must exist */
|
||||
__u8 weight; /* weight of this nexthop */
|
||||
__u8 resvd1;
|
||||
__u16 resvd2;
|
||||
};
|
||||
|
||||
enum {
|
||||
NEXTHOP_GRP_TYPE_MPATH, /* default type if not specified */
|
||||
__NEXTHOP_GRP_TYPE_MAX,
|
||||
};
|
||||
|
||||
#define NEXTHOP_GRP_TYPE_MAX (__NEXTHOP_GRP_TYPE_MAX - 1)
|
||||
|
||||
enum {
|
||||
NHA_UNSPEC,
|
||||
NHA_ID, /* u32; id for nexthop. id == 0 means auto-assign */
|
||||
|
||||
NHA_GROUP, /* array of nexthop_grp */
|
||||
NHA_GROUP_TYPE, /* u16 one of NEXTHOP_GRP_TYPE */
|
||||
/* if NHA_GROUP attribute is added, no other attributes can be set */
|
||||
|
||||
NHA_BLACKHOLE, /* flag; nexthop used to blackhole packets */
|
||||
/* if NHA_BLACKHOLE is added, OIF, GATEWAY, ENCAP can not be set */
|
||||
|
||||
NHA_OIF, /* u32; nexthop device */
|
||||
NHA_GATEWAY, /* be32 (IPv4) or in6_addr (IPv6) gw address */
|
||||
NHA_ENCAP_TYPE, /* u16; lwt encap type */
|
||||
NHA_ENCAP, /* lwt encap data */
|
||||
|
||||
/* NHA_OIF can be appended to dump request to return only
|
||||
* nexthops using given device
|
||||
*/
|
||||
NHA_GROUPS, /* flag; only return nexthop groups in dump */
|
||||
NHA_MASTER, /* u32; only return nexthops with given master dev */
|
||||
|
||||
__NHA_MAX,
|
||||
};
|
||||
|
||||
#define NHA_MAX (__NHA_MAX - 1)
|
||||
#endif
|
||||
|
|
@ -29,7 +29,7 @@
|
|||
|
||||
#include <linux/types.h>
|
||||
#include <linux/magic.h>
|
||||
|
||||
#include <asm/byteorder.h>
|
||||
|
||||
#define NILFS_INODE_BMAP_SIZE 7
|
||||
|
||||
|
|
@ -533,19 +533,19 @@ enum {
|
|||
static inline void \
|
||||
nilfs_checkpoint_set_##name(struct nilfs_checkpoint *cp) \
|
||||
{ \
|
||||
cp->cp_flags = cpu_to_le32(le32_to_cpu(cp->cp_flags) | \
|
||||
(1UL << NILFS_CHECKPOINT_##flag)); \
|
||||
cp->cp_flags = __cpu_to_le32(__le32_to_cpu(cp->cp_flags) | \
|
||||
(1UL << NILFS_CHECKPOINT_##flag)); \
|
||||
} \
|
||||
static inline void \
|
||||
nilfs_checkpoint_clear_##name(struct nilfs_checkpoint *cp) \
|
||||
{ \
|
||||
cp->cp_flags = cpu_to_le32(le32_to_cpu(cp->cp_flags) & \
|
||||
cp->cp_flags = __cpu_to_le32(__le32_to_cpu(cp->cp_flags) & \
|
||||
~(1UL << NILFS_CHECKPOINT_##flag)); \
|
||||
} \
|
||||
static inline int \
|
||||
nilfs_checkpoint_##name(const struct nilfs_checkpoint *cp) \
|
||||
{ \
|
||||
return !!(le32_to_cpu(cp->cp_flags) & \
|
||||
return !!(__le32_to_cpu(cp->cp_flags) & \
|
||||
(1UL << NILFS_CHECKPOINT_##flag)); \
|
||||
}
|
||||
|
||||
|
|
@ -595,20 +595,20 @@ enum {
|
|||
static inline void \
|
||||
nilfs_segment_usage_set_##name(struct nilfs_segment_usage *su) \
|
||||
{ \
|
||||
su->su_flags = cpu_to_le32(le32_to_cpu(su->su_flags) | \
|
||||
su->su_flags = __cpu_to_le32(__le32_to_cpu(su->su_flags) | \
|
||||
(1UL << NILFS_SEGMENT_USAGE_##flag));\
|
||||
} \
|
||||
static inline void \
|
||||
nilfs_segment_usage_clear_##name(struct nilfs_segment_usage *su) \
|
||||
{ \
|
||||
su->su_flags = \
|
||||
cpu_to_le32(le32_to_cpu(su->su_flags) & \
|
||||
__cpu_to_le32(__le32_to_cpu(su->su_flags) & \
|
||||
~(1UL << NILFS_SEGMENT_USAGE_##flag)); \
|
||||
} \
|
||||
static inline int \
|
||||
nilfs_segment_usage_##name(const struct nilfs_segment_usage *su) \
|
||||
{ \
|
||||
return !!(le32_to_cpu(su->su_flags) & \
|
||||
return !!(__le32_to_cpu(su->su_flags) & \
|
||||
(1UL << NILFS_SEGMENT_USAGE_##flag)); \
|
||||
}
|
||||
|
||||
|
|
@ -619,15 +619,15 @@ NILFS_SEGMENT_USAGE_FNS(ERROR, error)
|
|||
static inline void
|
||||
nilfs_segment_usage_set_clean(struct nilfs_segment_usage *su)
|
||||
{
|
||||
su->su_lastmod = cpu_to_le64(0);
|
||||
su->su_nblocks = cpu_to_le32(0);
|
||||
su->su_flags = cpu_to_le32(0);
|
||||
su->su_lastmod = __cpu_to_le64(0);
|
||||
su->su_nblocks = __cpu_to_le32(0);
|
||||
su->su_flags = __cpu_to_le32(0);
|
||||
}
|
||||
|
||||
static inline int
|
||||
nilfs_segment_usage_clean(const struct nilfs_segment_usage *su)
|
||||
{
|
||||
return !le32_to_cpu(su->su_flags);
|
||||
return !__le32_to_cpu(su->su_flags);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -234,6 +234,15 @@
|
|||
* use in a FILS shared key connection with PMKSA caching.
|
||||
*/
|
||||
|
||||
/**
|
||||
* DOC: SAE authentication offload
|
||||
*
|
||||
* By setting @NL80211_EXT_FEATURE_SAE_OFFLOAD flag drivers can indicate they
|
||||
* support offloading SAE authentication for WPA3-Personal networks. In
|
||||
* %NL80211_CMD_CONNECT the password for SAE should be specified using
|
||||
* %NL80211_ATTR_SAE_PASSWORD.
|
||||
*/
|
||||
|
||||
/**
|
||||
* enum nl80211_commands - supported nl80211 commands
|
||||
*
|
||||
|
|
@ -2341,6 +2350,12 @@ enum nl80211_commands {
|
|||
* should be picking up the lowest tx power, either tx power per-interface
|
||||
* or per-station.
|
||||
*
|
||||
* @NL80211_ATTR_SAE_PASSWORD: attribute for passing SAE password material. It
|
||||
* is used with %NL80211_CMD_CONNECT to provide password for offloading
|
||||
* SAE authentication for WPA3-Personal networks.
|
||||
*
|
||||
* @NL80211_ATTR_TWT_RESPONDER: Enable target wait time responder support.
|
||||
*
|
||||
* @NUM_NL80211_ATTR: total number of nl80211_attrs available
|
||||
* @NL80211_ATTR_MAX: highest attribute number currently defined
|
||||
* @__NL80211_ATTR_AFTER_LAST: internal use
|
||||
|
|
@ -2794,6 +2809,10 @@ enum nl80211_attrs {
|
|||
NL80211_ATTR_STA_TX_POWER_SETTING,
|
||||
NL80211_ATTR_STA_TX_POWER,
|
||||
|
||||
NL80211_ATTR_SAE_PASSWORD,
|
||||
|
||||
NL80211_ATTR_TWT_RESPONDER,
|
||||
|
||||
/* add attributes here, update the policy in nl80211.c */
|
||||
|
||||
__NL80211_ATTR_AFTER_LAST,
|
||||
|
|
@ -2844,7 +2863,7 @@ enum nl80211_attrs {
|
|||
#define NL80211_HT_CAPABILITY_LEN 26
|
||||
#define NL80211_VHT_CAPABILITY_LEN 12
|
||||
#define NL80211_HE_MIN_CAPABILITY_LEN 16
|
||||
#define NL80211_HE_MAX_CAPABILITY_LEN 51
|
||||
#define NL80211_HE_MAX_CAPABILITY_LEN 54
|
||||
#define NL80211_MAX_NR_CIPHER_SUITES 5
|
||||
#define NL80211_MAX_NR_AKM_SUITES 2
|
||||
|
||||
|
|
@ -4406,6 +4425,7 @@ enum nl80211_mfp {
|
|||
enum nl80211_wpa_versions {
|
||||
NL80211_WPA_VERSION_1 = 1 << 0,
|
||||
NL80211_WPA_VERSION_2 = 1 << 1,
|
||||
NL80211_WPA_VERSION_3 = 1 << 2,
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
@ -5314,7 +5334,7 @@ enum nl80211_feature_flags {
|
|||
NL80211_FEATURE_TDLS_CHANNEL_SWITCH = 1 << 28,
|
||||
NL80211_FEATURE_SCAN_RANDOM_MAC_ADDR = 1 << 29,
|
||||
NL80211_FEATURE_SCHED_SCAN_RANDOM_MAC_ADDR = 1 << 30,
|
||||
NL80211_FEATURE_ND_RANDOM_MAC_ADDR = 1 << 31,
|
||||
NL80211_FEATURE_ND_RANDOM_MAC_ADDR = 1U << 31,
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
@ -5422,6 +5442,9 @@ enum nl80211_feature_flags {
|
|||
* @NL80211_EXT_FEATURE_STA_TX_PWR: This driver supports controlling tx power
|
||||
* to a station.
|
||||
*
|
||||
* @NL80211_EXT_FEATURE_SAE_OFFLOAD: Device wants to do SAE authentication in
|
||||
* station mode (SAE password is passed as part of the connect command).
|
||||
*
|
||||
* @NUM_NL80211_EXT_FEATURES: number of extended features.
|
||||
* @MAX_NL80211_EXT_FEATURES: highest extended feature index.
|
||||
*/
|
||||
|
|
@ -5466,6 +5489,7 @@ enum nl80211_ext_feature_index {
|
|||
NL80211_EXT_FEATURE_SCHED_SCAN_BAND_SPECIFIC_RSSI_THOLD,
|
||||
NL80211_EXT_FEATURE_EXT_KEY_ID,
|
||||
NL80211_EXT_FEATURE_STA_TX_PWR,
|
||||
NL80211_EXT_FEATURE_SAE_OFFLOAD,
|
||||
|
||||
/* add new features before the definition below */
|
||||
NUM_NL80211_EXT_FEATURES,
|
||||
|
|
|
|||
|
|
@ -528,6 +528,7 @@
|
|||
#define PCI_EXP_LNKCAP_SLS_5_0GB 0x00000002 /* LNKCAP2 SLS Vector bit 1 */
|
||||
#define PCI_EXP_LNKCAP_SLS_8_0GB 0x00000003 /* LNKCAP2 SLS Vector bit 2 */
|
||||
#define PCI_EXP_LNKCAP_SLS_16_0GB 0x00000004 /* LNKCAP2 SLS Vector bit 3 */
|
||||
#define PCI_EXP_LNKCAP_SLS_32_0GB 0x00000005 /* LNKCAP2 SLS Vector bit 4 */
|
||||
#define PCI_EXP_LNKCAP_MLW 0x000003f0 /* Maximum Link Width */
|
||||
#define PCI_EXP_LNKCAP_ASPMS 0x00000c00 /* ASPM Support */
|
||||
#define PCI_EXP_LNKCAP_L0SEL 0x00007000 /* L0s Exit Latency */
|
||||
|
|
@ -556,6 +557,7 @@
|
|||
#define PCI_EXP_LNKSTA_CLS_5_0GB 0x0002 /* Current Link Speed 5.0GT/s */
|
||||
#define PCI_EXP_LNKSTA_CLS_8_0GB 0x0003 /* Current Link Speed 8.0GT/s */
|
||||
#define PCI_EXP_LNKSTA_CLS_16_0GB 0x0004 /* Current Link Speed 16.0GT/s */
|
||||
#define PCI_EXP_LNKSTA_CLS_32_0GB 0x0005 /* Current Link Speed 32.0GT/s */
|
||||
#define PCI_EXP_LNKSTA_NLW 0x03f0 /* Negotiated Link Width */
|
||||
#define PCI_EXP_LNKSTA_NLW_X1 0x0010 /* Current Link Width x1 */
|
||||
#define PCI_EXP_LNKSTA_NLW_X2 0x0020 /* Current Link Width x2 */
|
||||
|
|
@ -661,6 +663,7 @@
|
|||
#define PCI_EXP_LNKCAP2_SLS_5_0GB 0x00000004 /* Supported Speed 5GT/s */
|
||||
#define PCI_EXP_LNKCAP2_SLS_8_0GB 0x00000008 /* Supported Speed 8GT/s */
|
||||
#define PCI_EXP_LNKCAP2_SLS_16_0GB 0x00000010 /* Supported Speed 16GT/s */
|
||||
#define PCI_EXP_LNKCAP2_SLS_32_0GB 0x00000020 /* Supported Speed 32GT/s */
|
||||
#define PCI_EXP_LNKCAP2_CROSSLINK 0x00000100 /* Crosslink supported */
|
||||
#define PCI_EXP_LNKCTL2 48 /* Link Control 2 */
|
||||
#define PCI_EXP_LNKCTL2_TLS 0x000f
|
||||
|
|
@ -668,6 +671,7 @@
|
|||
#define PCI_EXP_LNKCTL2_TLS_5_0GT 0x0002 /* Supported Speed 5GT/s */
|
||||
#define PCI_EXP_LNKCTL2_TLS_8_0GT 0x0003 /* Supported Speed 8GT/s */
|
||||
#define PCI_EXP_LNKCTL2_TLS_16_0GT 0x0004 /* Supported Speed 16GT/s */
|
||||
#define PCI_EXP_LNKCTL2_TLS_32_0GT 0x0005 /* Supported Speed 32GT/s */
|
||||
#define PCI_EXP_LNKSTA2 50 /* Link Status 2 */
|
||||
#define PCI_CAP_EXP_ENDPOINT_SIZEOF_V2 52 /* v2 endpoints with link end here */
|
||||
#define PCI_EXP_SLTCAP2 52 /* Slot Capabilities 2 */
|
||||
|
|
|
|||
|
|
@ -104,6 +104,9 @@ enum tca_id {
|
|||
TCA_ID_SIMP = TCA_ACT_SIMP,
|
||||
TCA_ID_IFE = TCA_ACT_IFE,
|
||||
TCA_ID_SAMPLE = TCA_ACT_SAMPLE,
|
||||
TCA_ID_CTINFO,
|
||||
TCA_ID_MPLS,
|
||||
TCA_ID_CT,
|
||||
/* other actions go here */
|
||||
__TCA_ID_MAX = 255
|
||||
};
|
||||
|
|
@ -294,7 +297,7 @@ enum {
|
|||
TCA_FW_UNSPEC,
|
||||
TCA_FW_CLASSID,
|
||||
TCA_FW_POLICE,
|
||||
TCA_FW_INDEV, /* used by CONFIG_NET_CLS_IND */
|
||||
TCA_FW_INDEV,
|
||||
TCA_FW_ACT, /* used by CONFIG_NET_CLS_ACT */
|
||||
TCA_FW_MASK,
|
||||
__TCA_FW_MAX
|
||||
|
|
@ -534,11 +537,27 @@ enum {
|
|||
TCA_FLOWER_KEY_PORT_DST_MIN, /* be16 */
|
||||
TCA_FLOWER_KEY_PORT_DST_MAX, /* be16 */
|
||||
|
||||
TCA_FLOWER_KEY_CT_STATE, /* u16 */
|
||||
TCA_FLOWER_KEY_CT_STATE_MASK, /* u16 */
|
||||
TCA_FLOWER_KEY_CT_ZONE, /* u16 */
|
||||
TCA_FLOWER_KEY_CT_ZONE_MASK, /* u16 */
|
||||
TCA_FLOWER_KEY_CT_MARK, /* u32 */
|
||||
TCA_FLOWER_KEY_CT_MARK_MASK, /* u32 */
|
||||
TCA_FLOWER_KEY_CT_LABELS, /* u128 */
|
||||
TCA_FLOWER_KEY_CT_LABELS_MASK, /* u128 */
|
||||
|
||||
__TCA_FLOWER_MAX,
|
||||
};
|
||||
|
||||
#define TCA_FLOWER_MAX (__TCA_FLOWER_MAX - 1)
|
||||
|
||||
enum {
|
||||
TCA_FLOWER_KEY_CT_FLAGS_NEW = 1 << 0, /* Beginning of a new connection. */
|
||||
TCA_FLOWER_KEY_CT_FLAGS_ESTABLISHED = 1 << 1, /* Part of an existing connection. */
|
||||
TCA_FLOWER_KEY_CT_FLAGS_RELATED = 1 << 2, /* Related to an established connection. */
|
||||
TCA_FLOWER_KEY_CT_FLAGS_TRACKED = 1 << 3, /* Conntrack has occurred. */
|
||||
};
|
||||
|
||||
enum {
|
||||
TCA_FLOWER_KEY_ENC_OPTS_UNSPEC,
|
||||
TCA_FLOWER_KEY_ENC_OPTS_GENEVE, /* Nested
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@
|
|||
#ifndef __LINUX_PKT_SCHED_H
|
||||
#define __LINUX_PKT_SCHED_H
|
||||
|
||||
#include <linux/const.h>
|
||||
#include <linux/types.h>
|
||||
|
||||
/* Logical priority bands not depending on specific packet scheduler.
|
||||
|
|
@ -988,8 +989,9 @@ struct tc_etf_qopt {
|
|||
__s32 delta;
|
||||
__s32 clockid;
|
||||
__u32 flags;
|
||||
#define TC_ETF_DEADLINE_MODE_ON BIT(0)
|
||||
#define TC_ETF_OFFLOAD_ON BIT(1)
|
||||
#define TC_ETF_DEADLINE_MODE_ON _BITUL(0)
|
||||
#define TC_ETF_OFFLOAD_ON _BITUL(1)
|
||||
#define TC_ETF_SKIP_SOCK_CHECK _BITUL(2)
|
||||
};
|
||||
|
||||
enum {
|
||||
|
|
@ -1158,6 +1160,8 @@ enum {
|
|||
* [TCA_TAPRIO_ATTR_SCHED_ENTRY_INTERVAL]
|
||||
*/
|
||||
|
||||
#define TCA_TAPRIO_ATTR_FLAG_TXTIME_ASSIST 0x1
|
||||
|
||||
enum {
|
||||
TCA_TAPRIO_ATTR_UNSPEC,
|
||||
TCA_TAPRIO_ATTR_PRIOMAP, /* struct tc_mqprio_qopt */
|
||||
|
|
@ -1169,6 +1173,8 @@ enum {
|
|||
TCA_TAPRIO_ATTR_ADMIN_SCHED, /* The admin sched, only used in dump */
|
||||
TCA_TAPRIO_ATTR_SCHED_CYCLE_TIME, /* s64 */
|
||||
TCA_TAPRIO_ATTR_SCHED_CYCLE_TIME_EXTENSION, /* s64 */
|
||||
TCA_TAPRIO_ATTR_FLAGS, /* u32 */
|
||||
TCA_TAPRIO_ATTR_TXTIME_DELAY, /* u32 */
|
||||
__TCA_TAPRIO_ATTR_MAX,
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
|
||||
/*
|
||||
* Userspace interface for AMD Secure Encrypted Virtualization (SEV)
|
||||
* platform management commands.
|
||||
|
|
@ -7,10 +8,6 @@
|
|||
* Author: Brijesh Singh <brijesh.singh@amd.com>
|
||||
*
|
||||
* SEV API specification is available at: https://developer.amd.com/sev/
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#ifndef __PSP_SEV_USER_H__
|
||||
|
|
|
|||
|
|
@ -73,6 +73,41 @@ struct seccomp_metadata {
|
|||
__u64 flags; /* Output: filter's flags */
|
||||
};
|
||||
|
||||
#define PTRACE_GET_SYSCALL_INFO 0x420e
|
||||
#define PTRACE_SYSCALL_INFO_NONE 0
|
||||
#define PTRACE_SYSCALL_INFO_ENTRY 1
|
||||
#define PTRACE_SYSCALL_INFO_EXIT 2
|
||||
#define PTRACE_SYSCALL_INFO_SECCOMP 3
|
||||
|
||||
struct ptrace_syscall_info {
|
||||
__u8 op; /* PTRACE_SYSCALL_INFO_* */
|
||||
__u32 arch __attribute__((__aligned__(sizeof(__u32))));
|
||||
__u64 instruction_pointer;
|
||||
__u64 stack_pointer;
|
||||
union {
|
||||
struct {
|
||||
__u64 nr;
|
||||
__u64 args[6];
|
||||
} entry;
|
||||
struct {
|
||||
__s64 rval;
|
||||
__u8 is_error;
|
||||
} exit;
|
||||
struct {
|
||||
__u64 nr;
|
||||
__u64 args[6];
|
||||
__u32 ret_data;
|
||||
} seccomp;
|
||||
};
|
||||
};
|
||||
|
||||
/*
|
||||
* These values are stored in task->ptrace_message
|
||||
* by tracehook_report_syscall_* to describe the current syscall-stop.
|
||||
*/
|
||||
#define PTRACE_EVENTMSG_SYSCALL_ENTRY 1
|
||||
#define PTRACE_EVENTMSG_SYSCALL_EXIT 2
|
||||
|
||||
/* Read signals from a shared (process wide) queue */
|
||||
#define PTRACE_PEEKSIGINFO_SHARED (1 << 0)
|
||||
|
||||
|
|
|
|||
|
|
@ -250,6 +250,7 @@ struct rds_info_rdma_connection {
|
|||
__u32 rdma_mr_max;
|
||||
__u32 rdma_mr_size;
|
||||
__u8 tos;
|
||||
__u32 cache_allocs;
|
||||
};
|
||||
|
||||
struct rds6_info_rdma_connection {
|
||||
|
|
@ -264,6 +265,7 @@ struct rds6_info_rdma_connection {
|
|||
__u32 rdma_mr_max;
|
||||
__u32 rdma_mr_size;
|
||||
__u8 tos;
|
||||
__u32 cache_allocs;
|
||||
};
|
||||
|
||||
/* RDS message Receive Path Latency points */
|
||||
|
|
|
|||
|
|
@ -157,6 +157,13 @@ enum {
|
|||
RTM_GETCHAIN,
|
||||
#define RTM_GETCHAIN RTM_GETCHAIN
|
||||
|
||||
RTM_NEWNEXTHOP = 104,
|
||||
#define RTM_NEWNEXTHOP RTM_NEWNEXTHOP
|
||||
RTM_DELNEXTHOP,
|
||||
#define RTM_DELNEXTHOP RTM_DELNEXTHOP
|
||||
RTM_GETNEXTHOP,
|
||||
#define RTM_GETNEXTHOP RTM_GETNEXTHOP
|
||||
|
||||
__RTM_MAX,
|
||||
#define RTM_MAX (((__RTM_MAX + 3) & ~3) - 1)
|
||||
};
|
||||
|
|
@ -342,6 +349,7 @@ enum rtattr_type_t {
|
|||
RTA_IP_PROTO,
|
||||
RTA_SPORT,
|
||||
RTA_DPORT,
|
||||
RTA_NH_ID,
|
||||
__RTA_MAX
|
||||
};
|
||||
|
||||
|
|
@ -704,6 +712,8 @@ enum rtnetlink_groups {
|
|||
#define RTNLGRP_IPV4_MROUTE_R RTNLGRP_IPV4_MROUTE_R
|
||||
RTNLGRP_IPV6_MROUTE_R,
|
||||
#define RTNLGRP_IPV6_MROUTE_R RTNLGRP_IPV6_MROUTE_R
|
||||
RTNLGRP_NEXTHOP,
|
||||
#define RTNLGRP_NEXTHOP RTNLGRP_NEXTHOP
|
||||
__RTNLGRP_MAX
|
||||
};
|
||||
#define RTNLGRP_MAX (__RTNLGRP_MAX - 1)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||
/* SPDX-License-Identifier: GPL-2.0-or-later WITH Linux-syscall-note */
|
||||
/* Types and definitions for AF_RXRPC.
|
||||
*
|
||||
* Copyright (C) 2007 Red Hat, Inc. All Rights Reserved.
|
||||
|
|
|
|||
|
|
@ -2,6 +2,8 @@
|
|||
#ifndef _UAPI_LINUX_SCHED_H
|
||||
#define _UAPI_LINUX_SCHED_H
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
/*
|
||||
* cloning flags:
|
||||
*/
|
||||
|
|
@ -31,6 +33,20 @@
|
|||
#define CLONE_NEWNET 0x40000000 /* New network namespace */
|
||||
#define CLONE_IO 0x80000000 /* Clone io context */
|
||||
|
||||
/*
|
||||
* Arguments for the clone3 syscall
|
||||
*/
|
||||
struct clone_args {
|
||||
__aligned_u64 flags;
|
||||
__aligned_u64 pidfd;
|
||||
__aligned_u64 child_tid;
|
||||
__aligned_u64 parent_tid;
|
||||
__aligned_u64 exit_signal;
|
||||
__aligned_u64 stack;
|
||||
__aligned_u64 stack_size;
|
||||
__aligned_u64 tls;
|
||||
};
|
||||
|
||||
/*
|
||||
* Scheduling policies
|
||||
*/
|
||||
|
|
@ -51,9 +67,21 @@
|
|||
#define SCHED_FLAG_RESET_ON_FORK 0x01
|
||||
#define SCHED_FLAG_RECLAIM 0x02
|
||||
#define SCHED_FLAG_DL_OVERRUN 0x04
|
||||
#define SCHED_FLAG_KEEP_POLICY 0x08
|
||||
#define SCHED_FLAG_KEEP_PARAMS 0x10
|
||||
#define SCHED_FLAG_UTIL_CLAMP_MIN 0x20
|
||||
#define SCHED_FLAG_UTIL_CLAMP_MAX 0x40
|
||||
|
||||
#define SCHED_FLAG_KEEP_ALL (SCHED_FLAG_KEEP_POLICY | \
|
||||
SCHED_FLAG_KEEP_PARAMS)
|
||||
|
||||
#define SCHED_FLAG_UTIL_CLAMP (SCHED_FLAG_UTIL_CLAMP_MIN | \
|
||||
SCHED_FLAG_UTIL_CLAMP_MAX)
|
||||
|
||||
#define SCHED_FLAG_ALL (SCHED_FLAG_RESET_ON_FORK | \
|
||||
SCHED_FLAG_RECLAIM | \
|
||||
SCHED_FLAG_DL_OVERRUN)
|
||||
SCHED_FLAG_DL_OVERRUN | \
|
||||
SCHED_FLAG_KEEP_ALL | \
|
||||
SCHED_FLAG_UTIL_CLAMP)
|
||||
|
||||
#endif /* _UAPI_LINUX_SCHED_H */
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ struct sched_param {
|
|||
};
|
||||
|
||||
#define SCHED_ATTR_SIZE_VER0 48 /* sizeof first published struct */
|
||||
#define SCHED_ATTR_SIZE_VER1 56 /* add: util_{min,max} */
|
||||
|
||||
/*
|
||||
* Extended scheduling parameters data structure.
|
||||
|
|
@ -21,8 +22,33 @@ struct sched_param {
|
|||
* the tasks may be useful for a wide variety of application fields, e.g.,
|
||||
* multimedia, streaming, automation and control, and many others.
|
||||
*
|
||||
* This variant (sched_attr) is meant at describing a so-called
|
||||
* sporadic time-constrained task. In such model a task is specified by:
|
||||
* This variant (sched_attr) allows to define additional attributes to
|
||||
* improve the scheduler knowledge about task requirements.
|
||||
*
|
||||
* Scheduling Class Attributes
|
||||
* ===========================
|
||||
*
|
||||
* A subset of sched_attr attributes specifies the
|
||||
* scheduling policy and relative POSIX attributes:
|
||||
*
|
||||
* @size size of the structure, for fwd/bwd compat.
|
||||
*
|
||||
* @sched_policy task's scheduling policy
|
||||
* @sched_nice task's nice value (SCHED_NORMAL/BATCH)
|
||||
* @sched_priority task's static priority (SCHED_FIFO/RR)
|
||||
*
|
||||
* Certain more advanced scheduling features can be controlled by a
|
||||
* predefined set of flags via the attribute:
|
||||
*
|
||||
* @sched_flags for customizing the scheduler behaviour
|
||||
*
|
||||
* Sporadic Time-Constrained Task Attributes
|
||||
* =========================================
|
||||
*
|
||||
* A subset of sched_attr attributes allows to describe a so-called
|
||||
* sporadic time-constrained task.
|
||||
*
|
||||
* In such a model a task is specified by:
|
||||
* - the activation period or minimum instance inter-arrival time;
|
||||
* - the maximum (or average, depending on the actual scheduling
|
||||
* discipline) computation time of all instances, a.k.a. runtime;
|
||||
|
|
@ -34,14 +60,8 @@ struct sched_param {
|
|||
* than the runtime and must be completed by time instant t equal to
|
||||
* the instance activation time + the deadline.
|
||||
*
|
||||
* This is reflected by the actual fields of the sched_attr structure:
|
||||
* This is reflected by the following fields of the sched_attr structure:
|
||||
*
|
||||
* @size size of the structure, for fwd/bwd compat.
|
||||
*
|
||||
* @sched_policy task's scheduling policy
|
||||
* @sched_flags for customizing the scheduler behaviour
|
||||
* @sched_nice task's nice value (SCHED_NORMAL/BATCH)
|
||||
* @sched_priority task's static priority (SCHED_FIFO/RR)
|
||||
* @sched_deadline representative of the task's deadline
|
||||
* @sched_runtime representative of the task's runtime
|
||||
* @sched_period representative of the task's period
|
||||
|
|
@ -53,6 +73,29 @@ struct sched_param {
|
|||
* As of now, the SCHED_DEADLINE policy (sched_dl scheduling class) is the
|
||||
* only user of this new interface. More information about the algorithm
|
||||
* available in the scheduling class file or in Documentation/.
|
||||
*
|
||||
* Task Utilization Attributes
|
||||
* ===========================
|
||||
*
|
||||
* A subset of sched_attr attributes allows to specify the utilization
|
||||
* expected for a task. These attributes allow to inform the scheduler about
|
||||
* the utilization boundaries within which it should schedule the task. These
|
||||
* boundaries are valuable hints to support scheduler decisions on both task
|
||||
* placement and frequency selection.
|
||||
*
|
||||
* @sched_util_min represents the minimum utilization
|
||||
* @sched_util_max represents the maximum utilization
|
||||
*
|
||||
* Utilization is a value in the range [0..SCHED_CAPACITY_SCALE]. It
|
||||
* represents the percentage of CPU time used by a task when running at the
|
||||
* maximum frequency on the highest capacity CPU of the system. For example, a
|
||||
* 20% utilization task is a task running for 2ms every 10ms at maximum
|
||||
* frequency.
|
||||
*
|
||||
* A task with a min utilization value bigger than 0 is more likely scheduled
|
||||
* on a CPU with a capacity big enough to fit the specified value.
|
||||
* A task with a max utilization value smaller than 1024 is more likely
|
||||
* scheduled on a CPU with no more capacity than the specified value.
|
||||
*/
|
||||
struct sched_attr {
|
||||
__u32 size;
|
||||
|
|
@ -70,6 +113,11 @@ struct sched_attr {
|
|||
__u64 sched_runtime;
|
||||
__u64 sched_deadline;
|
||||
__u64 sched_period;
|
||||
|
||||
/* Utilization hints */
|
||||
__u32 sched_util_min;
|
||||
__u32 sched_util_max;
|
||||
|
||||
};
|
||||
|
||||
#endif /* _UAPI_LINUX_SCHED_TYPES_H */
|
||||
|
|
|
|||
|
|
@ -20,6 +20,11 @@ enum opal_mbr {
|
|||
OPAL_MBR_DISABLE = 0x01,
|
||||
};
|
||||
|
||||
enum opal_mbr_done_flag {
|
||||
OPAL_MBR_NOT_DONE = 0x0,
|
||||
OPAL_MBR_DONE = 0x01
|
||||
};
|
||||
|
||||
enum opal_user {
|
||||
OPAL_ADMIN1 = 0x0,
|
||||
OPAL_USER1 = 0x01,
|
||||
|
|
@ -95,6 +100,19 @@ struct opal_mbr_data {
|
|||
__u8 __align[7];
|
||||
};
|
||||
|
||||
struct opal_mbr_done {
|
||||
struct opal_key key;
|
||||
__u8 done_flag;
|
||||
__u8 __align[7];
|
||||
};
|
||||
|
||||
struct opal_shadow_mbr {
|
||||
struct opal_key key;
|
||||
const __u64 data;
|
||||
__u64 offset;
|
||||
__u64 size;
|
||||
};
|
||||
|
||||
#define IOC_OPAL_SAVE _IOW('p', 220, struct opal_lock_unlock)
|
||||
#define IOC_OPAL_LOCK_UNLOCK _IOW('p', 221, struct opal_lock_unlock)
|
||||
#define IOC_OPAL_TAKE_OWNERSHIP _IOW('p', 222, struct opal_key)
|
||||
|
|
@ -107,5 +125,8 @@ struct opal_mbr_data {
|
|||
#define IOC_OPAL_ENABLE_DISABLE_MBR _IOW('p', 229, struct opal_mbr_data)
|
||||
#define IOC_OPAL_ERASE_LR _IOW('p', 230, struct opal_session_info)
|
||||
#define IOC_OPAL_SECURE_ERASE_LR _IOW('p', 231, struct opal_session_info)
|
||||
#define IOC_OPAL_PSID_REVERT_TPR _IOW('p', 232, struct opal_key)
|
||||
#define IOC_OPAL_MBR_DONE _IOW('p', 233, struct opal_mbr_done)
|
||||
#define IOC_OPAL_WRITE_SHADOW_MBR _IOW('p', 234, struct opal_shadow_mbr)
|
||||
|
||||
#endif /* _UAPI_SED_OPAL_H */
|
||||
|
|
|
|||
|
|
@ -129,7 +129,7 @@
|
|||
/* Motorola i.MX SoC */
|
||||
#define PORT_IMX 62
|
||||
|
||||
/* Marvell MPSC */
|
||||
/* Marvell MPSC (obsolete unused) */
|
||||
#define PORT_MPSC 63
|
||||
|
||||
/* TXX9 type number */
|
||||
|
|
@ -150,9 +150,6 @@
|
|||
|
||||
#define PORT_PNX8XXX 70
|
||||
|
||||
/* Hilscher netx */
|
||||
#define PORT_NETX 71
|
||||
|
||||
/* SUN4V Hypervisor Console */
|
||||
#define PORT_SUNHV 72
|
||||
|
||||
|
|
|
|||
|
|
@ -283,6 +283,8 @@ enum
|
|||
LINUX_MIB_TCPACKCOMPRESSED, /* TCPAckCompressed */
|
||||
LINUX_MIB_TCPZEROWINDOWDROP, /* TCPZeroWindowDrop */
|
||||
LINUX_MIB_TCPRCVQDROP, /* TCPRcvQDrop */
|
||||
LINUX_MIB_TCPWQUEUETOOBIG, /* TCPWqueueTooBig */
|
||||
LINUX_MIB_TCPFASTOPENPASSIVEALTKEY, /* TCPFastOpenPassiveAltKey */
|
||||
__LINUX_MIB_MAX
|
||||
};
|
||||
|
||||
|
|
|
|||
41
include/uapi/linux/tc_act/tc_ct.h
Normal file
41
include/uapi/linux/tc_act/tc_ct.h
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef __UAPI_TC_CT_H
|
||||
#define __UAPI_TC_CT_H
|
||||
|
||||
#include <linux/types.h>
|
||||
#include <linux/pkt_cls.h>
|
||||
|
||||
enum {
|
||||
TCA_CT_UNSPEC,
|
||||
TCA_CT_PARMS,
|
||||
TCA_CT_TM,
|
||||
TCA_CT_ACTION, /* u16 */
|
||||
TCA_CT_ZONE, /* u16 */
|
||||
TCA_CT_MARK, /* u32 */
|
||||
TCA_CT_MARK_MASK, /* u32 */
|
||||
TCA_CT_LABELS, /* u128 */
|
||||
TCA_CT_LABELS_MASK, /* u128 */
|
||||
TCA_CT_NAT_IPV4_MIN, /* be32 */
|
||||
TCA_CT_NAT_IPV4_MAX, /* be32 */
|
||||
TCA_CT_NAT_IPV6_MIN, /* struct in6_addr */
|
||||
TCA_CT_NAT_IPV6_MAX, /* struct in6_addr */
|
||||
TCA_CT_NAT_PORT_MIN, /* be16 */
|
||||
TCA_CT_NAT_PORT_MAX, /* be16 */
|
||||
TCA_CT_PAD,
|
||||
__TCA_CT_MAX
|
||||
};
|
||||
|
||||
#define TCA_CT_MAX (__TCA_CT_MAX - 1)
|
||||
|
||||
#define TCA_CT_ACT_COMMIT (1 << 0)
|
||||
#define TCA_CT_ACT_FORCE (1 << 1)
|
||||
#define TCA_CT_ACT_CLEAR (1 << 2)
|
||||
#define TCA_CT_ACT_NAT (1 << 3)
|
||||
#define TCA_CT_ACT_NAT_SRC (1 << 4)
|
||||
#define TCA_CT_ACT_NAT_DST (1 << 5)
|
||||
|
||||
struct tc_ct {
|
||||
tc_gen;
|
||||
};
|
||||
|
||||
#endif /* __UAPI_TC_CT_H */
|
||||
29
include/uapi/linux/tc_act/tc_ctinfo.h
Normal file
29
include/uapi/linux/tc_act/tc_ctinfo.h
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef __UAPI_TC_CTINFO_H
|
||||
#define __UAPI_TC_CTINFO_H
|
||||
|
||||
#include <linux/types.h>
|
||||
#include <linux/pkt_cls.h>
|
||||
|
||||
struct tc_ctinfo {
|
||||
tc_gen;
|
||||
};
|
||||
|
||||
enum {
|
||||
TCA_CTINFO_UNSPEC,
|
||||
TCA_CTINFO_PAD,
|
||||
TCA_CTINFO_TM,
|
||||
TCA_CTINFO_ACT,
|
||||
TCA_CTINFO_ZONE,
|
||||
TCA_CTINFO_PARMS_DSCP_MASK,
|
||||
TCA_CTINFO_PARMS_DSCP_STATEMASK,
|
||||
TCA_CTINFO_PARMS_CPMARK_MASK,
|
||||
TCA_CTINFO_STATS_DSCP_SET,
|
||||
TCA_CTINFO_STATS_DSCP_ERROR,
|
||||
TCA_CTINFO_STATS_CPMARK_SET,
|
||||
__TCA_CTINFO_MAX
|
||||
};
|
||||
|
||||
#define TCA_CTINFO_MAX (__TCA_CTINFO_MAX - 1)
|
||||
|
||||
#endif
|
||||
33
include/uapi/linux/tc_act/tc_mpls.h
Normal file
33
include/uapi/linux/tc_act/tc_mpls.h
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
/* Copyright (C) 2019 Netronome Systems, Inc. */
|
||||
|
||||
#ifndef __LINUX_TC_MPLS_H
|
||||
#define __LINUX_TC_MPLS_H
|
||||
|
||||
#include <linux/pkt_cls.h>
|
||||
|
||||
#define TCA_MPLS_ACT_POP 1
|
||||
#define TCA_MPLS_ACT_PUSH 2
|
||||
#define TCA_MPLS_ACT_MODIFY 3
|
||||
#define TCA_MPLS_ACT_DEC_TTL 4
|
||||
|
||||
struct tc_mpls {
|
||||
tc_gen; /* generic TC action fields. */
|
||||
int m_action; /* action of type TCA_MPLS_ACT_*. */
|
||||
};
|
||||
|
||||
enum {
|
||||
TCA_MPLS_UNSPEC,
|
||||
TCA_MPLS_TM, /* struct tcf_t; time values associated with action. */
|
||||
TCA_MPLS_PARMS, /* struct tc_mpls; action type and general TC fields. */
|
||||
TCA_MPLS_PAD,
|
||||
TCA_MPLS_PROTO, /* be16; eth_type of pushed or next (for pop) header. */
|
||||
TCA_MPLS_LABEL, /* u32; MPLS label. Lower 20 bits are used. */
|
||||
TCA_MPLS_TC, /* u8; MPLS TC field. Lower 3 bits are used. */
|
||||
TCA_MPLS_TTL, /* u8; MPLS TTL field. Must not be 0. */
|
||||
TCA_MPLS_BOS, /* u8; MPLS BOS field. Either 1 or 0. */
|
||||
__TCA_MPLS_MAX,
|
||||
};
|
||||
#define TCA_MPLS_MAX (__TCA_MPLS_MAX - 1)
|
||||
|
||||
#endif
|
||||
|
|
@ -127,6 +127,9 @@ enum {
|
|||
|
||||
#define TCP_CM_INQ TCP_INQ
|
||||
|
||||
#define TCP_TX_DELAY 37 /* delay outgoing packets by XX usec */
|
||||
|
||||
|
||||
#define TCP_REPAIR_ON 1
|
||||
#define TCP_REPAIR_OFF 0
|
||||
#define TCP_REPAIR_OFF_NO_WP -1 /* Turn off without window probes */
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ struct unix_diag_req {
|
|||
#define UDIAG_SHOW_ICONS 0x00000008 /* show pending connections */
|
||||
#define UDIAG_SHOW_RQLEN 0x00000010 /* show skb receive queue len */
|
||||
#define UDIAG_SHOW_MEMINFO 0x00000020 /* show memory info of a socket */
|
||||
#define UDIAG_SHOW_UID 0x00000040 /* show socket's UID */
|
||||
|
||||
struct unix_diag_msg {
|
||||
__u8 udiag_family;
|
||||
|
|
@ -40,6 +41,7 @@ enum {
|
|||
UNIX_DIAG_RQLEN,
|
||||
UNIX_DIAG_MEMINFO,
|
||||
UNIX_DIAG_SHUTDOWN,
|
||||
UNIX_DIAG_UID,
|
||||
|
||||
__UNIX_DIAG_MAX,
|
||||
};
|
||||
|
|
|
|||
|
|
@ -450,6 +450,43 @@ static inline __u8 *uac_processing_unit_specific(struct uac_processing_unit_desc
|
|||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Extension Unit (XU) has almost compatible layout with Processing Unit, but
|
||||
* on UAC2, it has a different bmControls size (bControlSize); it's 1 byte for
|
||||
* XU while 2 bytes for PU. The last iExtension field is a one-byte index as
|
||||
* well as iProcessing field of PU.
|
||||
*/
|
||||
static inline __u8 uac_extension_unit_bControlSize(struct uac_processing_unit_descriptor *desc,
|
||||
int protocol)
|
||||
{
|
||||
switch (protocol) {
|
||||
case UAC_VERSION_1:
|
||||
return desc->baSourceID[desc->bNrInPins + 4];
|
||||
case UAC_VERSION_2:
|
||||
return 1; /* in UAC2, this value is constant */
|
||||
case UAC_VERSION_3:
|
||||
return 4; /* in UAC3, this value is constant */
|
||||
default:
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
static inline __u8 uac_extension_unit_iExtension(struct uac_processing_unit_descriptor *desc,
|
||||
int protocol)
|
||||
{
|
||||
__u8 control_size = uac_extension_unit_bControlSize(desc, protocol);
|
||||
|
||||
switch (protocol) {
|
||||
case UAC_VERSION_1:
|
||||
case UAC_VERSION_2:
|
||||
default:
|
||||
return *(uac_processing_unit_bmControls(desc, protocol)
|
||||
+ control_size);
|
||||
case UAC_VERSION_3:
|
||||
return 0; /* UAC3 does not have this field */
|
||||
}
|
||||
}
|
||||
|
||||
/* 4.5.2 Class-Specific AS Interface Descriptor */
|
||||
struct uac1_as_header_descriptor {
|
||||
__u8 bLength; /* in bytes: 7 */
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0+ */
|
||||
/* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
|
||||
/*
|
||||
* g_uvc.h -- USB Video Class Gadget driver API
|
||||
*
|
||||
|
|
|
|||
|
|
@ -76,6 +76,26 @@ struct usbdevfs_connectinfo {
|
|||
unsigned char slow;
|
||||
};
|
||||
|
||||
struct usbdevfs_conninfo_ex {
|
||||
__u32 size; /* Size of the structure from the kernel's */
|
||||
/* point of view. Can be used by userspace */
|
||||
/* to determine how much data can be */
|
||||
/* used/trusted. */
|
||||
__u32 busnum; /* USB bus number, as enumerated by the */
|
||||
/* kernel, the device is connected to. */
|
||||
__u32 devnum; /* Device address on the bus. */
|
||||
__u32 speed; /* USB_SPEED_* constants from ch9.h */
|
||||
__u8 num_ports; /* Number of ports the device is connected */
|
||||
/* to on the way to the root hub. It may */
|
||||
/* be bigger than size of 'ports' array so */
|
||||
/* userspace can detect overflows. */
|
||||
__u8 ports[7]; /* List of ports on the way from the root */
|
||||
/* hub to the device. Current limit in */
|
||||
/* USB specification is 7 tiers (root hub, */
|
||||
/* 5 intermediate hubs, device), which */
|
||||
/* gives at most 6 port entries. */
|
||||
};
|
||||
|
||||
#define USBDEVFS_URB_SHORT_NOT_OK 0x01
|
||||
#define USBDEVFS_URB_ISO_ASAP 0x02
|
||||
#define USBDEVFS_URB_BULK_CONTINUATION 0x04
|
||||
|
|
@ -137,6 +157,7 @@ struct usbdevfs_hub_portinfo {
|
|||
#define USBDEVFS_CAP_REAP_AFTER_DISCONNECT 0x10
|
||||
#define USBDEVFS_CAP_MMAP 0x20
|
||||
#define USBDEVFS_CAP_DROP_PRIVILEGES 0x40
|
||||
#define USBDEVFS_CAP_CONNINFO_EX 0x80
|
||||
|
||||
/* USBDEVFS_DISCONNECT_CLAIM flags & struct */
|
||||
|
||||
|
|
@ -197,5 +218,10 @@ struct usbdevfs_streams {
|
|||
#define USBDEVFS_FREE_STREAMS _IOR('U', 29, struct usbdevfs_streams)
|
||||
#define USBDEVFS_DROP_PRIVILEGES _IOW('U', 30, __u32)
|
||||
#define USBDEVFS_GET_SPEED _IO('U', 31)
|
||||
/*
|
||||
* Returns struct usbdevfs_conninfo_ex; length is variable to allow
|
||||
* extending size of the data returned.
|
||||
*/
|
||||
#define USBDEVFS_CONNINFO_EX(len) _IOC(_IOC_READ, 'U', 32, len)
|
||||
|
||||
#endif /* _UAPI_LINUX_USBDEVICE_FS_H */
|
||||
|
|
|
|||
|
|
@ -392,8 +392,13 @@ enum v4l2_mpeg_video_header_mode {
|
|||
#define V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MODE (V4L2_CID_MPEG_BASE+221)
|
||||
enum v4l2_mpeg_video_multi_slice_mode {
|
||||
V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_SINGLE = 0,
|
||||
V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_MAX_MB = 1,
|
||||
V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_MAX_BYTES = 2,
|
||||
#ifndef __KERNEL__
|
||||
/* Kept for backwards compatibility reasons. Stupid typo... */
|
||||
V4L2_MPEG_VIDEO_MULTI_SICE_MODE_MAX_MB = 1,
|
||||
V4L2_MPEG_VIDEO_MULTI_SICE_MODE_MAX_BYTES = 2,
|
||||
#endif
|
||||
};
|
||||
#define V4L2_CID_MPEG_VIDEO_VBV_SIZE (V4L2_CID_MPEG_BASE+222)
|
||||
#define V4L2_CID_MPEG_VIDEO_DEC_PTS (V4L2_CID_MPEG_BASE+223)
|
||||
|
|
@ -404,6 +409,24 @@ enum v4l2_mpeg_video_multi_slice_mode {
|
|||
#define V4L2_CID_MPEG_VIDEO_MV_V_SEARCH_RANGE (V4L2_CID_MPEG_BASE+228)
|
||||
#define V4L2_CID_MPEG_VIDEO_FORCE_KEY_FRAME (V4L2_CID_MPEG_BASE+229)
|
||||
|
||||
/* CIDs for the MPEG-2 Part 2 (H.262) codec */
|
||||
#define V4L2_CID_MPEG_VIDEO_MPEG2_LEVEL (V4L2_CID_MPEG_BASE+270)
|
||||
enum v4l2_mpeg_video_mpeg2_level {
|
||||
V4L2_MPEG_VIDEO_MPEG2_LEVEL_LOW = 0,
|
||||
V4L2_MPEG_VIDEO_MPEG2_LEVEL_MAIN = 1,
|
||||
V4L2_MPEG_VIDEO_MPEG2_LEVEL_HIGH_1440 = 2,
|
||||
V4L2_MPEG_VIDEO_MPEG2_LEVEL_HIGH = 3,
|
||||
};
|
||||
#define V4L2_CID_MPEG_VIDEO_MPEG2_PROFILE (V4L2_CID_MPEG_BASE+271)
|
||||
enum v4l2_mpeg_video_mpeg2_profile {
|
||||
V4L2_MPEG_VIDEO_MPEG2_PROFILE_SIMPLE = 0,
|
||||
V4L2_MPEG_VIDEO_MPEG2_PROFILE_MAIN = 1,
|
||||
V4L2_MPEG_VIDEO_MPEG2_PROFILE_SNR_SCALABLE = 2,
|
||||
V4L2_MPEG_VIDEO_MPEG2_PROFILE_SPATIALLY_SCALABLE = 3,
|
||||
V4L2_MPEG_VIDEO_MPEG2_PROFILE_HIGH = 4,
|
||||
V4L2_MPEG_VIDEO_MPEG2_PROFILE_MULTIVIEW = 5,
|
||||
};
|
||||
|
||||
/* CIDs for the FWHT codec as used by the vicodec driver. */
|
||||
#define V4L2_CID_FWHT_I_FRAME_QP (V4L2_CID_MPEG_BASE + 290)
|
||||
#define V4L2_CID_FWHT_P_FRAME_QP (V4L2_CID_MPEG_BASE + 291)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/* SPDX-License-Identifier: (GPL-2.0 OR CDDL-1.0) */
|
||||
/* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR CDDL-1.0) */
|
||||
/*
|
||||
* Virtual Device for Guest <-> VMM/Host communication, type definitions
|
||||
* which are also used for the vboxguest ioctl interface / by vboxsf
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/* SPDX-License-Identifier: (GPL-2.0 OR CDDL-1.0) */
|
||||
/* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR CDDL-1.0) */
|
||||
/*
|
||||
* VBoxGuest - VirtualBox Guest Additions Driver Interface.
|
||||
*
|
||||
|
|
|
|||
|
|
@ -80,7 +80,7 @@
|
|||
/* Four-character-code (FOURCC) */
|
||||
#define v4l2_fourcc(a, b, c, d)\
|
||||
((__u32)(a) | ((__u32)(b) << 8) | ((__u32)(c) << 16) | ((__u32)(d) << 24))
|
||||
#define v4l2_fourcc_be(a, b, c, d) (v4l2_fourcc(a, b, c, d) | (1 << 31))
|
||||
#define v4l2_fourcc_be(a, b, c, d) (v4l2_fourcc(a, b, c, d) | (1U << 31))
|
||||
|
||||
/*
|
||||
* E N U M S
|
||||
|
|
@ -518,7 +518,13 @@ struct v4l2_pix_format {
|
|||
#define V4L2_PIX_FMT_RGBX444 v4l2_fourcc('R', 'X', '1', '2') /* 16 rrrrgggg bbbbxxxx */
|
||||
#define V4L2_PIX_FMT_ABGR444 v4l2_fourcc('A', 'B', '1', '2') /* 16 aaaabbbb ggggrrrr */
|
||||
#define V4L2_PIX_FMT_XBGR444 v4l2_fourcc('X', 'B', '1', '2') /* 16 xxxxbbbb ggggrrrr */
|
||||
#define V4L2_PIX_FMT_BGRA444 v4l2_fourcc('B', 'A', '1', '2') /* 16 bbbbgggg rrrraaaa */
|
||||
|
||||
/*
|
||||
* Originally this had 'BA12' as fourcc, but this clashed with the older
|
||||
* V4L2_PIX_FMT_SGRBG12 which inexplicably used that same fourcc.
|
||||
* So use 'GA12' instead for V4L2_PIX_FMT_BGRA444.
|
||||
*/
|
||||
#define V4L2_PIX_FMT_BGRA444 v4l2_fourcc('G', 'A', '1', '2') /* 16 bbbbgggg rrrraaaa */
|
||||
#define V4L2_PIX_FMT_BGRX444 v4l2_fourcc('B', 'X', '1', '2') /* 16 bbbbgggg rrrrxxxx */
|
||||
#define V4L2_PIX_FMT_RGB555 v4l2_fourcc('R', 'G', 'B', 'O') /* 16 RGB-5-5-5 */
|
||||
#define V4L2_PIX_FMT_ARGB555 v4l2_fourcc('A', 'R', '1', '5') /* 16 ARGB-1-5-5-5 */
|
||||
|
|
|
|||
|
|
@ -43,5 +43,7 @@
|
|||
#define VIRTIO_ID_INPUT 18 /* virtio input */
|
||||
#define VIRTIO_ID_VSOCK 19 /* virtio vsock transport */
|
||||
#define VIRTIO_ID_CRYPTO 20 /* virtio crypto */
|
||||
#define VIRTIO_ID_IOMMU 23 /* virtio IOMMU */
|
||||
#define VIRTIO_ID_PMEM 27 /* virtio pmem */
|
||||
|
||||
#endif /* _LINUX_VIRTIO_IDS_H */
|
||||
|
|
|
|||
165
include/uapi/linux/virtio_iommu.h
Normal file
165
include/uapi/linux/virtio_iommu.h
Normal file
|
|
@ -0,0 +1,165 @@
|
|||
/* SPDX-License-Identifier: BSD-3-Clause */
|
||||
/*
|
||||
* Virtio-iommu definition v0.12
|
||||
*
|
||||
* Copyright (C) 2019 Arm Ltd.
|
||||
*/
|
||||
#ifndef _UAPI_LINUX_VIRTIO_IOMMU_H
|
||||
#define _UAPI_LINUX_VIRTIO_IOMMU_H
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
/* Feature bits */
|
||||
#define VIRTIO_IOMMU_F_INPUT_RANGE 0
|
||||
#define VIRTIO_IOMMU_F_DOMAIN_RANGE 1
|
||||
#define VIRTIO_IOMMU_F_MAP_UNMAP 2
|
||||
#define VIRTIO_IOMMU_F_BYPASS 3
|
||||
#define VIRTIO_IOMMU_F_PROBE 4
|
||||
#define VIRTIO_IOMMU_F_MMIO 5
|
||||
|
||||
struct virtio_iommu_range_64 {
|
||||
__le64 start;
|
||||
__le64 end;
|
||||
};
|
||||
|
||||
struct virtio_iommu_range_32 {
|
||||
__le32 start;
|
||||
__le32 end;
|
||||
};
|
||||
|
||||
struct virtio_iommu_config {
|
||||
/* Supported page sizes */
|
||||
__le64 page_size_mask;
|
||||
/* Supported IOVA range */
|
||||
struct virtio_iommu_range_64 input_range;
|
||||
/* Max domain ID size */
|
||||
struct virtio_iommu_range_32 domain_range;
|
||||
/* Probe buffer size */
|
||||
__le32 probe_size;
|
||||
};
|
||||
|
||||
/* Request types */
|
||||
#define VIRTIO_IOMMU_T_ATTACH 0x01
|
||||
#define VIRTIO_IOMMU_T_DETACH 0x02
|
||||
#define VIRTIO_IOMMU_T_MAP 0x03
|
||||
#define VIRTIO_IOMMU_T_UNMAP 0x04
|
||||
#define VIRTIO_IOMMU_T_PROBE 0x05
|
||||
|
||||
/* Status types */
|
||||
#define VIRTIO_IOMMU_S_OK 0x00
|
||||
#define VIRTIO_IOMMU_S_IOERR 0x01
|
||||
#define VIRTIO_IOMMU_S_UNSUPP 0x02
|
||||
#define VIRTIO_IOMMU_S_DEVERR 0x03
|
||||
#define VIRTIO_IOMMU_S_INVAL 0x04
|
||||
#define VIRTIO_IOMMU_S_RANGE 0x05
|
||||
#define VIRTIO_IOMMU_S_NOENT 0x06
|
||||
#define VIRTIO_IOMMU_S_FAULT 0x07
|
||||
#define VIRTIO_IOMMU_S_NOMEM 0x08
|
||||
|
||||
struct virtio_iommu_req_head {
|
||||
__u8 type;
|
||||
__u8 reserved[3];
|
||||
};
|
||||
|
||||
struct virtio_iommu_req_tail {
|
||||
__u8 status;
|
||||
__u8 reserved[3];
|
||||
};
|
||||
|
||||
struct virtio_iommu_req_attach {
|
||||
struct virtio_iommu_req_head head;
|
||||
__le32 domain;
|
||||
__le32 endpoint;
|
||||
__u8 reserved[8];
|
||||
struct virtio_iommu_req_tail tail;
|
||||
};
|
||||
|
||||
struct virtio_iommu_req_detach {
|
||||
struct virtio_iommu_req_head head;
|
||||
__le32 domain;
|
||||
__le32 endpoint;
|
||||
__u8 reserved[8];
|
||||
struct virtio_iommu_req_tail tail;
|
||||
};
|
||||
|
||||
#define VIRTIO_IOMMU_MAP_F_READ (1 << 0)
|
||||
#define VIRTIO_IOMMU_MAP_F_WRITE (1 << 1)
|
||||
#define VIRTIO_IOMMU_MAP_F_MMIO (1 << 2)
|
||||
|
||||
#define VIRTIO_IOMMU_MAP_F_MASK (VIRTIO_IOMMU_MAP_F_READ | \
|
||||
VIRTIO_IOMMU_MAP_F_WRITE | \
|
||||
VIRTIO_IOMMU_MAP_F_MMIO)
|
||||
|
||||
struct virtio_iommu_req_map {
|
||||
struct virtio_iommu_req_head head;
|
||||
__le32 domain;
|
||||
__le64 virt_start;
|
||||
__le64 virt_end;
|
||||
__le64 phys_start;
|
||||
__le32 flags;
|
||||
struct virtio_iommu_req_tail tail;
|
||||
};
|
||||
|
||||
struct virtio_iommu_req_unmap {
|
||||
struct virtio_iommu_req_head head;
|
||||
__le32 domain;
|
||||
__le64 virt_start;
|
||||
__le64 virt_end;
|
||||
__u8 reserved[4];
|
||||
struct virtio_iommu_req_tail tail;
|
||||
};
|
||||
|
||||
#define VIRTIO_IOMMU_PROBE_T_NONE 0
|
||||
#define VIRTIO_IOMMU_PROBE_T_RESV_MEM 1
|
||||
|
||||
#define VIRTIO_IOMMU_PROBE_T_MASK 0xfff
|
||||
|
||||
struct virtio_iommu_probe_property {
|
||||
__le16 type;
|
||||
__le16 length;
|
||||
};
|
||||
|
||||
#define VIRTIO_IOMMU_RESV_MEM_T_RESERVED 0
|
||||
#define VIRTIO_IOMMU_RESV_MEM_T_MSI 1
|
||||
|
||||
struct virtio_iommu_probe_resv_mem {
|
||||
struct virtio_iommu_probe_property head;
|
||||
__u8 subtype;
|
||||
__u8 reserved[3];
|
||||
__le64 start;
|
||||
__le64 end;
|
||||
};
|
||||
|
||||
struct virtio_iommu_req_probe {
|
||||
struct virtio_iommu_req_head head;
|
||||
__le32 endpoint;
|
||||
__u8 reserved[64];
|
||||
|
||||
__u8 properties[];
|
||||
|
||||
/*
|
||||
* Tail follows the variable-length properties array. No padding,
|
||||
* property lengths are all aligned on 8 bytes.
|
||||
*/
|
||||
};
|
||||
|
||||
/* Fault types */
|
||||
#define VIRTIO_IOMMU_FAULT_R_UNKNOWN 0
|
||||
#define VIRTIO_IOMMU_FAULT_R_DOMAIN 1
|
||||
#define VIRTIO_IOMMU_FAULT_R_MAPPING 2
|
||||
|
||||
#define VIRTIO_IOMMU_FAULT_F_READ (1 << 0)
|
||||
#define VIRTIO_IOMMU_FAULT_F_WRITE (1 << 1)
|
||||
#define VIRTIO_IOMMU_FAULT_F_EXEC (1 << 2)
|
||||
#define VIRTIO_IOMMU_FAULT_F_ADDRESS (1 << 8)
|
||||
|
||||
struct virtio_iommu_fault {
|
||||
__u8 reason;
|
||||
__u8 reserved[3];
|
||||
__le32 flags;
|
||||
__le32 endpoint;
|
||||
__u8 reserved2[4];
|
||||
__le64 address;
|
||||
};
|
||||
|
||||
#endif
|
||||
34
include/uapi/linux/virtio_pmem.h
Normal file
34
include/uapi/linux/virtio_pmem.h
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
/* SPDX-License-Identifier: (GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause */
|
||||
/*
|
||||
* Definitions for virtio-pmem devices.
|
||||
*
|
||||
* Copyright (C) 2019 Red Hat, Inc.
|
||||
*
|
||||
* Author(s): Pankaj Gupta <pagupta@redhat.com>
|
||||
*/
|
||||
|
||||
#ifndef _UAPI_LINUX_VIRTIO_PMEM_H
|
||||
#define _UAPI_LINUX_VIRTIO_PMEM_H
|
||||
|
||||
#include <linux/types.h>
|
||||
#include <linux/virtio_ids.h>
|
||||
#include <linux/virtio_config.h>
|
||||
|
||||
struct virtio_pmem_config {
|
||||
__u64 start;
|
||||
__u64 size;
|
||||
};
|
||||
|
||||
#define VIRTIO_PMEM_REQ_TYPE_FLUSH 0
|
||||
|
||||
struct virtio_pmem_resp {
|
||||
/* Host return status corresponding to flush request */
|
||||
__le32 ret;
|
||||
};
|
||||
|
||||
struct virtio_pmem_req {
|
||||
/* command type */
|
||||
__le32 type;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _UAPI_VMCORE_H
|
||||
#define _UAPI_VMCORE_H
|
||||
|
||||
|
|
|
|||
|
|
@ -1,18 +0,0 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
/*
|
||||
* wanrouter.h Legacy declarations kept around until X25 is removed
|
||||
*/
|
||||
|
||||
#ifndef _UAPI_ROUTER_H
|
||||
#define _UAPI_ROUTER_H
|
||||
|
||||
/* 'state' defines */
|
||||
enum wan_states
|
||||
{
|
||||
WAN_UNCONFIGURED, /* link/channel is not configured */
|
||||
WAN_DISCONNECTED, /* link/channel is disconnected */
|
||||
WAN_CONNECTING, /* connection is in progress */
|
||||
WAN_CONNECTED /* link/channel is operational */
|
||||
};
|
||||
|
||||
#endif /* _UAPI_ROUTER_H */
|
||||
|
|
@ -1,11 +1,8 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
|
||||
/*
|
||||
* User API methods for ACPI-WMI mapping driver
|
||||
*
|
||||
* Copyright (C) 2017 Dell, Inc.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
#ifndef _UAPI_LINUX_WMI_H
|
||||
#define _UAPI_LINUX_WMI_H
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
|
||||
#ifndef __QCOM_FASTRPC_H__
|
||||
#define __QCOM_FASTRPC_H__
|
||||
|
|
|
|||
|
|
@ -45,6 +45,30 @@ enum goya_queue_id {
|
|||
GOYA_QUEUE_ID_SIZE
|
||||
};
|
||||
|
||||
/*
|
||||
* Engine Numbering
|
||||
*
|
||||
* Used in the "busy_engines_mask" field in `struct hl_info_hw_idle'
|
||||
*/
|
||||
|
||||
enum goya_engine_id {
|
||||
GOYA_ENGINE_ID_DMA_0 = 0,
|
||||
GOYA_ENGINE_ID_DMA_1,
|
||||
GOYA_ENGINE_ID_DMA_2,
|
||||
GOYA_ENGINE_ID_DMA_3,
|
||||
GOYA_ENGINE_ID_DMA_4,
|
||||
GOYA_ENGINE_ID_MME_0,
|
||||
GOYA_ENGINE_ID_TPC_0,
|
||||
GOYA_ENGINE_ID_TPC_1,
|
||||
GOYA_ENGINE_ID_TPC_2,
|
||||
GOYA_ENGINE_ID_TPC_3,
|
||||
GOYA_ENGINE_ID_TPC_4,
|
||||
GOYA_ENGINE_ID_TPC_5,
|
||||
GOYA_ENGINE_ID_TPC_6,
|
||||
GOYA_ENGINE_ID_TPC_7,
|
||||
GOYA_ENGINE_ID_SIZE
|
||||
};
|
||||
|
||||
enum hl_device_status {
|
||||
HL_DEVICE_STATUS_OPERATIONAL,
|
||||
HL_DEVICE_STATUS_IN_RESET,
|
||||
|
|
@ -86,7 +110,11 @@ struct hl_info_dram_usage {
|
|||
|
||||
struct hl_info_hw_idle {
|
||||
__u32 is_idle;
|
||||
__u32 pad;
|
||||
/*
|
||||
* Bitmask of busy engines.
|
||||
* Bits definition is according to `enum <chip>_enging_id'.
|
||||
*/
|
||||
__u32 busy_engines_mask;
|
||||
};
|
||||
|
||||
struct hl_info_device_status {
|
||||
|
|
|
|||
|
|
@ -33,23 +33,23 @@ struct ocxl_ioctl_attach {
|
|||
};
|
||||
|
||||
struct ocxl_ioctl_metadata {
|
||||
__u16 version; // struct version, always backwards compatible
|
||||
__u16 version; /* struct version, always backwards compatible */
|
||||
|
||||
// Version 0 fields
|
||||
/* Version 0 fields */
|
||||
__u8 afu_version_major;
|
||||
__u8 afu_version_minor;
|
||||
__u32 pasid; // PASID assigned to the current context
|
||||
__u32 pasid; /* PASID assigned to the current context */
|
||||
|
||||
__u64 pp_mmio_size; // Per PASID MMIO size
|
||||
__u64 pp_mmio_size; /* Per PASID MMIO size */
|
||||
__u64 global_mmio_size;
|
||||
|
||||
// End version 0 fields
|
||||
/* End version 0 fields */
|
||||
|
||||
__u64 reserved[13]; // Total of 16*u64
|
||||
__u64 reserved[13]; /* Total of 16*u64 */
|
||||
};
|
||||
|
||||
struct ocxl_ioctl_p9_wait {
|
||||
__u16 thread_id; // The thread ID required to wake this thread
|
||||
__u16 thread_id; /* The thread ID required to wake this thread */
|
||||
__u16 reserved1;
|
||||
__u32 reserved2;
|
||||
__u64 reserved3[3];
|
||||
|
|
|
|||
|
|
@ -113,11 +113,11 @@ struct mtd_write_req {
|
|||
#define MTD_CAP_NVRAM (MTD_WRITEABLE | MTD_BIT_WRITEABLE | MTD_NO_ERASE)
|
||||
|
||||
/* Obsolete ECC byte placement modes (used with obsolete MEMGETOOBSEL) */
|
||||
#define MTD_NANDECC_OFF 0 // Switch off ECC (Not recommended)
|
||||
#define MTD_NANDECC_PLACE 1 // Use the given placement in the structure (YAFFS1 legacy mode)
|
||||
#define MTD_NANDECC_AUTOPLACE 2 // Use the default placement scheme
|
||||
#define MTD_NANDECC_PLACEONLY 3 // Use the given placement in the structure (Do not store ecc result on read)
|
||||
#define MTD_NANDECC_AUTOPL_USR 4 // Use the given autoplacement scheme rather than using the default
|
||||
#define MTD_NANDECC_OFF 0 /* Switch off ECC (Not recommended) */
|
||||
#define MTD_NANDECC_PLACE 1 /* Use the given placement in the structure (YAFFS1 legacy mode) */
|
||||
#define MTD_NANDECC_AUTOPLACE 2 /* Use the default placement scheme */
|
||||
#define MTD_NANDECC_PLACEONLY 3 /* Use the given placement in the structure (Do not store ecc result on read) */
|
||||
#define MTD_NANDECC_AUTOPL_USR 4 /* Use the given autoplacement scheme rather than using the default */
|
||||
|
||||
/* OTP mode selection */
|
||||
#define MTD_OTP_OFF 0
|
||||
|
|
|
|||
|
|
@ -1,326 +0,0 @@
|
|||
/* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR Linux-OpenIB) */
|
||||
/*
|
||||
* Copyright (c) 2005 Topspin Communications. All rights reserved.
|
||||
* Copyright (c) 2005 Intel Corporation. All rights reserved.
|
||||
*
|
||||
* This software is available to you under a choice of one of two
|
||||
* licenses. You may choose to be licensed under the terms of the GNU
|
||||
* General Public License (GPL) Version 2, available from the file
|
||||
* COPYING in the main directory of this source tree, or the
|
||||
* OpenIB.org BSD license below:
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or
|
||||
* without modification, are permitted provided that the following
|
||||
* conditions are met:
|
||||
*
|
||||
* - Redistributions of source code must retain the above
|
||||
* copyright notice, this list of conditions and the following
|
||||
* disclaimer.
|
||||
*
|
||||
* - Redistributions in binary form must reproduce the above
|
||||
* copyright notice, this list of conditions and the following
|
||||
* disclaimer in the documentation and/or other materials
|
||||
* provided with the distribution.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
||||
* BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
||||
* ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
* SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef IB_USER_CM_H
|
||||
#define IB_USER_CM_H
|
||||
|
||||
#include <linux/types.h>
|
||||
#include <rdma/ib_user_sa.h>
|
||||
|
||||
#define IB_USER_CM_ABI_VERSION 5
|
||||
|
||||
enum {
|
||||
IB_USER_CM_CMD_CREATE_ID,
|
||||
IB_USER_CM_CMD_DESTROY_ID,
|
||||
IB_USER_CM_CMD_ATTR_ID,
|
||||
|
||||
IB_USER_CM_CMD_LISTEN,
|
||||
IB_USER_CM_CMD_NOTIFY,
|
||||
|
||||
IB_USER_CM_CMD_SEND_REQ,
|
||||
IB_USER_CM_CMD_SEND_REP,
|
||||
IB_USER_CM_CMD_SEND_RTU,
|
||||
IB_USER_CM_CMD_SEND_DREQ,
|
||||
IB_USER_CM_CMD_SEND_DREP,
|
||||
IB_USER_CM_CMD_SEND_REJ,
|
||||
IB_USER_CM_CMD_SEND_MRA,
|
||||
IB_USER_CM_CMD_SEND_LAP,
|
||||
IB_USER_CM_CMD_SEND_APR,
|
||||
IB_USER_CM_CMD_SEND_SIDR_REQ,
|
||||
IB_USER_CM_CMD_SEND_SIDR_REP,
|
||||
|
||||
IB_USER_CM_CMD_EVENT,
|
||||
IB_USER_CM_CMD_INIT_QP_ATTR,
|
||||
};
|
||||
/*
|
||||
* command ABI structures.
|
||||
*/
|
||||
struct ib_ucm_cmd_hdr {
|
||||
__u32 cmd;
|
||||
__u16 in;
|
||||
__u16 out;
|
||||
};
|
||||
|
||||
struct ib_ucm_create_id {
|
||||
__aligned_u64 uid;
|
||||
__aligned_u64 response;
|
||||
};
|
||||
|
||||
struct ib_ucm_create_id_resp {
|
||||
__u32 id;
|
||||
};
|
||||
|
||||
struct ib_ucm_destroy_id {
|
||||
__aligned_u64 response;
|
||||
__u32 id;
|
||||
__u32 reserved;
|
||||
};
|
||||
|
||||
struct ib_ucm_destroy_id_resp {
|
||||
__u32 events_reported;
|
||||
};
|
||||
|
||||
struct ib_ucm_attr_id {
|
||||
__aligned_u64 response;
|
||||
__u32 id;
|
||||
__u32 reserved;
|
||||
};
|
||||
|
||||
struct ib_ucm_attr_id_resp {
|
||||
__be64 service_id;
|
||||
__be64 service_mask;
|
||||
__be32 local_id;
|
||||
__be32 remote_id;
|
||||
};
|
||||
|
||||
struct ib_ucm_init_qp_attr {
|
||||
__aligned_u64 response;
|
||||
__u32 id;
|
||||
__u32 qp_state;
|
||||
};
|
||||
|
||||
struct ib_ucm_listen {
|
||||
__be64 service_id;
|
||||
__be64 service_mask;
|
||||
__u32 id;
|
||||
__u32 reserved;
|
||||
};
|
||||
|
||||
struct ib_ucm_notify {
|
||||
__u32 id;
|
||||
__u32 event;
|
||||
};
|
||||
|
||||
struct ib_ucm_private_data {
|
||||
__aligned_u64 data;
|
||||
__u32 id;
|
||||
__u8 len;
|
||||
__u8 reserved[3];
|
||||
};
|
||||
|
||||
struct ib_ucm_req {
|
||||
__u32 id;
|
||||
__u32 qpn;
|
||||
__u32 qp_type;
|
||||
__u32 psn;
|
||||
__be64 sid;
|
||||
__aligned_u64 data;
|
||||
__aligned_u64 primary_path;
|
||||
__aligned_u64 alternate_path;
|
||||
__u8 len;
|
||||
__u8 peer_to_peer;
|
||||
__u8 responder_resources;
|
||||
__u8 initiator_depth;
|
||||
__u8 remote_cm_response_timeout;
|
||||
__u8 flow_control;
|
||||
__u8 local_cm_response_timeout;
|
||||
__u8 retry_count;
|
||||
__u8 rnr_retry_count;
|
||||
__u8 max_cm_retries;
|
||||
__u8 srq;
|
||||
__u8 reserved[5];
|
||||
};
|
||||
|
||||
struct ib_ucm_rep {
|
||||
__aligned_u64 uid;
|
||||
__aligned_u64 data;
|
||||
__u32 id;
|
||||
__u32 qpn;
|
||||
__u32 psn;
|
||||
__u8 len;
|
||||
__u8 responder_resources;
|
||||
__u8 initiator_depth;
|
||||
__u8 target_ack_delay;
|
||||
__u8 failover_accepted;
|
||||
__u8 flow_control;
|
||||
__u8 rnr_retry_count;
|
||||
__u8 srq;
|
||||
__u8 reserved[4];
|
||||
};
|
||||
|
||||
struct ib_ucm_info {
|
||||
__u32 id;
|
||||
__u32 status;
|
||||
__aligned_u64 info;
|
||||
__aligned_u64 data;
|
||||
__u8 info_len;
|
||||
__u8 data_len;
|
||||
__u8 reserved[6];
|
||||
};
|
||||
|
||||
struct ib_ucm_mra {
|
||||
__aligned_u64 data;
|
||||
__u32 id;
|
||||
__u8 len;
|
||||
__u8 timeout;
|
||||
__u8 reserved[2];
|
||||
};
|
||||
|
||||
struct ib_ucm_lap {
|
||||
__aligned_u64 path;
|
||||
__aligned_u64 data;
|
||||
__u32 id;
|
||||
__u8 len;
|
||||
__u8 reserved[3];
|
||||
};
|
||||
|
||||
struct ib_ucm_sidr_req {
|
||||
__u32 id;
|
||||
__u32 timeout;
|
||||
__be64 sid;
|
||||
__aligned_u64 data;
|
||||
__aligned_u64 path;
|
||||
__u16 reserved_pkey;
|
||||
__u8 len;
|
||||
__u8 max_cm_retries;
|
||||
__u8 reserved[4];
|
||||
};
|
||||
|
||||
struct ib_ucm_sidr_rep {
|
||||
__u32 id;
|
||||
__u32 qpn;
|
||||
__u32 qkey;
|
||||
__u32 status;
|
||||
__aligned_u64 info;
|
||||
__aligned_u64 data;
|
||||
__u8 info_len;
|
||||
__u8 data_len;
|
||||
__u8 reserved[6];
|
||||
};
|
||||
/*
|
||||
* event notification ABI structures.
|
||||
*/
|
||||
struct ib_ucm_event_get {
|
||||
__aligned_u64 response;
|
||||
__aligned_u64 data;
|
||||
__aligned_u64 info;
|
||||
__u8 data_len;
|
||||
__u8 info_len;
|
||||
__u8 reserved[6];
|
||||
};
|
||||
|
||||
struct ib_ucm_req_event_resp {
|
||||
struct ib_user_path_rec primary_path;
|
||||
struct ib_user_path_rec alternate_path;
|
||||
__be64 remote_ca_guid;
|
||||
__u32 remote_qkey;
|
||||
__u32 remote_qpn;
|
||||
__u32 qp_type;
|
||||
__u32 starting_psn;
|
||||
__u8 responder_resources;
|
||||
__u8 initiator_depth;
|
||||
__u8 local_cm_response_timeout;
|
||||
__u8 flow_control;
|
||||
__u8 remote_cm_response_timeout;
|
||||
__u8 retry_count;
|
||||
__u8 rnr_retry_count;
|
||||
__u8 srq;
|
||||
__u8 port;
|
||||
__u8 reserved[7];
|
||||
};
|
||||
|
||||
struct ib_ucm_rep_event_resp {
|
||||
__be64 remote_ca_guid;
|
||||
__u32 remote_qkey;
|
||||
__u32 remote_qpn;
|
||||
__u32 starting_psn;
|
||||
__u8 responder_resources;
|
||||
__u8 initiator_depth;
|
||||
__u8 target_ack_delay;
|
||||
__u8 failover_accepted;
|
||||
__u8 flow_control;
|
||||
__u8 rnr_retry_count;
|
||||
__u8 srq;
|
||||
__u8 reserved[5];
|
||||
};
|
||||
|
||||
struct ib_ucm_rej_event_resp {
|
||||
__u32 reason;
|
||||
/* ari in ib_ucm_event_get info field. */
|
||||
};
|
||||
|
||||
struct ib_ucm_mra_event_resp {
|
||||
__u8 timeout;
|
||||
__u8 reserved[3];
|
||||
};
|
||||
|
||||
struct ib_ucm_lap_event_resp {
|
||||
struct ib_user_path_rec path;
|
||||
};
|
||||
|
||||
struct ib_ucm_apr_event_resp {
|
||||
__u32 status;
|
||||
/* apr info in ib_ucm_event_get info field. */
|
||||
};
|
||||
|
||||
struct ib_ucm_sidr_req_event_resp {
|
||||
__u16 pkey;
|
||||
__u8 port;
|
||||
__u8 reserved;
|
||||
};
|
||||
|
||||
struct ib_ucm_sidr_rep_event_resp {
|
||||
__u32 status;
|
||||
__u32 qkey;
|
||||
__u32 qpn;
|
||||
/* info in ib_ucm_event_get info field. */
|
||||
};
|
||||
|
||||
#define IB_UCM_PRES_DATA 0x01
|
||||
#define IB_UCM_PRES_INFO 0x02
|
||||
#define IB_UCM_PRES_PRIMARY 0x04
|
||||
#define IB_UCM_PRES_ALTERNATE 0x08
|
||||
|
||||
struct ib_ucm_event_resp {
|
||||
__aligned_u64 uid;
|
||||
__u32 id;
|
||||
__u32 event;
|
||||
__u32 present;
|
||||
__u32 reserved;
|
||||
union {
|
||||
struct ib_ucm_req_event_resp req_resp;
|
||||
struct ib_ucm_rep_event_resp rep_resp;
|
||||
struct ib_ucm_rej_event_resp rej_resp;
|
||||
struct ib_ucm_mra_event_resp mra_resp;
|
||||
struct ib_ucm_lap_event_resp lap_resp;
|
||||
struct ib_ucm_apr_event_resp apr_resp;
|
||||
|
||||
struct ib_ucm_sidr_req_event_resp sidr_req_resp;
|
||||
struct ib_ucm_sidr_rep_event_resp sidr_rep_resp;
|
||||
|
||||
__u32 send_status;
|
||||
} u;
|
||||
};
|
||||
|
||||
#endif /* IB_USER_CM_H */
|
||||
|
|
@ -51,6 +51,7 @@ enum mlx5_ib_devx_methods {
|
|||
MLX5_IB_METHOD_DEVX_OTHER = (1U << UVERBS_ID_NS_SHIFT),
|
||||
MLX5_IB_METHOD_DEVX_QUERY_UAR,
|
||||
MLX5_IB_METHOD_DEVX_QUERY_EQN,
|
||||
MLX5_IB_METHOD_DEVX_SUBSCRIBE_EVENT,
|
||||
};
|
||||
|
||||
enum mlx5_ib_devx_other_attrs {
|
||||
|
|
@ -93,6 +94,14 @@ enum mlx5_ib_devx_obj_query_async_attrs {
|
|||
MLX5_IB_ATTR_DEVX_OBJ_QUERY_ASYNC_OUT_LEN,
|
||||
};
|
||||
|
||||
enum mlx5_ib_devx_subscribe_event_attrs {
|
||||
MLX5_IB_ATTR_DEVX_SUBSCRIBE_EVENT_FD_HANDLE = (1U << UVERBS_ID_NS_SHIFT),
|
||||
MLX5_IB_ATTR_DEVX_SUBSCRIBE_EVENT_OBJ_HANDLE,
|
||||
MLX5_IB_ATTR_DEVX_SUBSCRIBE_EVENT_TYPE_NUM_LIST,
|
||||
MLX5_IB_ATTR_DEVX_SUBSCRIBE_EVENT_FD_NUM,
|
||||
MLX5_IB_ATTR_DEVX_SUBSCRIBE_EVENT_COOKIE,
|
||||
};
|
||||
|
||||
enum mlx5_ib_devx_query_eqn_attrs {
|
||||
MLX5_IB_ATTR_DEVX_QUERY_EQN_USER_VEC = (1U << UVERBS_ID_NS_SHIFT),
|
||||
MLX5_IB_ATTR_DEVX_QUERY_EQN_DEV_EQN,
|
||||
|
|
@ -127,16 +136,26 @@ enum mlx5_ib_devx_async_cmd_fd_alloc_attrs {
|
|||
MLX5_IB_ATTR_DEVX_ASYNC_CMD_FD_ALLOC_HANDLE = (1U << UVERBS_ID_NS_SHIFT),
|
||||
};
|
||||
|
||||
enum mlx5_ib_devx_async_event_fd_alloc_attrs {
|
||||
MLX5_IB_ATTR_DEVX_ASYNC_EVENT_FD_ALLOC_HANDLE = (1U << UVERBS_ID_NS_SHIFT),
|
||||
MLX5_IB_ATTR_DEVX_ASYNC_EVENT_FD_ALLOC_FLAGS,
|
||||
};
|
||||
|
||||
enum mlx5_ib_devx_async_cmd_fd_methods {
|
||||
MLX5_IB_METHOD_DEVX_ASYNC_CMD_FD_ALLOC = (1U << UVERBS_ID_NS_SHIFT),
|
||||
};
|
||||
|
||||
enum mlx5_ib_devx_async_event_fd_methods {
|
||||
MLX5_IB_METHOD_DEVX_ASYNC_EVENT_FD_ALLOC = (1U << UVERBS_ID_NS_SHIFT),
|
||||
};
|
||||
|
||||
enum mlx5_ib_objects {
|
||||
MLX5_IB_OBJECT_DEVX = (1U << UVERBS_ID_NS_SHIFT),
|
||||
MLX5_IB_OBJECT_DEVX_OBJ,
|
||||
MLX5_IB_OBJECT_DEVX_UMEM,
|
||||
MLX5_IB_OBJECT_FLOW_MATCHER,
|
||||
MLX5_IB_OBJECT_DEVX_ASYNC_CMD_FD,
|
||||
MLX5_IB_OBJECT_DEVX_ASYNC_EVENT_FD,
|
||||
};
|
||||
|
||||
enum mlx5_ib_flow_matcher_create_attrs {
|
||||
|
|
|
|||
|
|
@ -63,5 +63,14 @@ enum mlx5_ib_uapi_dm_type {
|
|||
MLX5_IB_UAPI_DM_TYPE_HEADER_MODIFY_SW_ICM,
|
||||
};
|
||||
|
||||
enum mlx5_ib_uapi_devx_create_event_channel_flags {
|
||||
MLX5_IB_UAPI_DEVX_CR_EV_CH_FLAGS_OMIT_DATA = 1 << 0,
|
||||
};
|
||||
|
||||
struct mlx5_ib_uapi_devx_async_event_hdr {
|
||||
__aligned_u64 cookie;
|
||||
__u8 out_data[];
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -147,6 +147,18 @@ enum {
|
|||
IWPM_NLA_HELLO_MAX
|
||||
};
|
||||
|
||||
/* For RDMA_NLDEV_ATTR_DEV_NODE_TYPE */
|
||||
enum {
|
||||
/* IB values map to NodeInfo:NodeType. */
|
||||
RDMA_NODE_IB_CA = 1,
|
||||
RDMA_NODE_IB_SWITCH,
|
||||
RDMA_NODE_IB_ROUTER,
|
||||
RDMA_NODE_RNIC,
|
||||
RDMA_NODE_USNIC,
|
||||
RDMA_NODE_USNIC_UDP,
|
||||
RDMA_NODE_UNSPECIFIED,
|
||||
};
|
||||
|
||||
/*
|
||||
* Local service operations:
|
||||
* RESOLVE - The client requests the local service to resolve a path.
|
||||
|
|
@ -267,11 +279,15 @@ enum rdma_nldev_command {
|
|||
|
||||
RDMA_NLDEV_CMD_RES_PD_GET, /* can dump */
|
||||
|
||||
RDMA_NLDEV_NUM_OPS
|
||||
};
|
||||
RDMA_NLDEV_CMD_GET_CHARDEV,
|
||||
|
||||
enum {
|
||||
RDMA_NLDEV_ATTR_ENTRY_STRLEN = 16,
|
||||
RDMA_NLDEV_CMD_STAT_SET,
|
||||
|
||||
RDMA_NLDEV_CMD_STAT_GET, /* can dump */
|
||||
|
||||
RDMA_NLDEV_CMD_STAT_DEL,
|
||||
|
||||
RDMA_NLDEV_NUM_OPS
|
||||
};
|
||||
|
||||
enum rdma_nldev_print_type {
|
||||
|
|
@ -478,10 +494,72 @@ enum rdma_nldev_attr {
|
|||
* File descriptor handle of the net namespace object
|
||||
*/
|
||||
RDMA_NLDEV_NET_NS_FD, /* u32 */
|
||||
/*
|
||||
* Information about a chardev.
|
||||
* CHARDEV_TYPE is the name of the chardev ABI (ie uverbs, umad, etc)
|
||||
* CHARDEV_ABI signals the ABI revision (historical)
|
||||
* CHARDEV_NAME is the kernel name for the /dev/ file (no directory)
|
||||
* CHARDEV is the 64 bit dev_t for the inode
|
||||
*/
|
||||
RDMA_NLDEV_ATTR_CHARDEV_TYPE, /* string */
|
||||
RDMA_NLDEV_ATTR_CHARDEV_NAME, /* string */
|
||||
RDMA_NLDEV_ATTR_CHARDEV_ABI, /* u64 */
|
||||
RDMA_NLDEV_ATTR_CHARDEV, /* u64 */
|
||||
RDMA_NLDEV_ATTR_UVERBS_DRIVER_ID, /* u64 */
|
||||
/*
|
||||
* Counter-specific attributes.
|
||||
*/
|
||||
RDMA_NLDEV_ATTR_STAT_MODE, /* u32 */
|
||||
RDMA_NLDEV_ATTR_STAT_RES, /* u32 */
|
||||
RDMA_NLDEV_ATTR_STAT_AUTO_MODE_MASK, /* u32 */
|
||||
RDMA_NLDEV_ATTR_STAT_COUNTER, /* nested table */
|
||||
RDMA_NLDEV_ATTR_STAT_COUNTER_ENTRY, /* nested table */
|
||||
RDMA_NLDEV_ATTR_STAT_COUNTER_ID, /* u32 */
|
||||
RDMA_NLDEV_ATTR_STAT_HWCOUNTERS, /* nested table */
|
||||
RDMA_NLDEV_ATTR_STAT_HWCOUNTER_ENTRY, /* nested table */
|
||||
RDMA_NLDEV_ATTR_STAT_HWCOUNTER_ENTRY_NAME, /* string */
|
||||
RDMA_NLDEV_ATTR_STAT_HWCOUNTER_ENTRY_VALUE, /* u64 */
|
||||
|
||||
/*
|
||||
* CQ adaptive moderatio (DIM)
|
||||
*/
|
||||
RDMA_NLDEV_ATTR_DEV_DIM, /* u8 */
|
||||
|
||||
/*
|
||||
* Always the end
|
||||
*/
|
||||
RDMA_NLDEV_ATTR_MAX
|
||||
};
|
||||
|
||||
/*
|
||||
* Supported counter bind modes. All modes are mutual-exclusive.
|
||||
*/
|
||||
enum rdma_nl_counter_mode {
|
||||
RDMA_COUNTER_MODE_NONE,
|
||||
|
||||
/*
|
||||
* A qp is bound with a counter automatically during initialization
|
||||
* based on the auto mode (e.g., qp type, ...)
|
||||
*/
|
||||
RDMA_COUNTER_MODE_AUTO,
|
||||
|
||||
/*
|
||||
* Which qp are bound with which counter is explicitly specified
|
||||
* by the user
|
||||
*/
|
||||
RDMA_COUNTER_MODE_MANUAL,
|
||||
|
||||
/*
|
||||
* Always the end
|
||||
*/
|
||||
RDMA_COUNTER_MODE_MAX,
|
||||
};
|
||||
|
||||
/*
|
||||
* Supported criteria in counter auto mode.
|
||||
* Currently only "qp type" is supported
|
||||
*/
|
||||
enum rdma_nl_counter_mask {
|
||||
RDMA_COUNTER_MASK_QP_TYPE = 1,
|
||||
};
|
||||
#endif /* _UAPI_RDMA_NETLINK_H */
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@
|
|||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
|
||||
/* Documentation/ioctl/ioctl-number.txt */
|
||||
/* Documentation/ioctl/ioctl-number.rst */
|
||||
#define RDMA_IOCTL_MAGIC 0x1b
|
||||
#define RDMA_VERBS_IOCTL \
|
||||
_IOWR(RDMA_IOCTL_MAGIC, 1, struct ib_uverbs_ioctl_hdr)
|
||||
|
|
@ -103,6 +103,7 @@ enum rdma_driver_id {
|
|||
RDMA_DRIVER_HFI1,
|
||||
RDMA_DRIVER_QIB,
|
||||
RDMA_DRIVER_EFA,
|
||||
RDMA_DRIVER_SIW,
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
|||
66
include/uapi/rdma/rvt-abi.h
Normal file
66
include/uapi/rdma/rvt-abi.h
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
/* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) */
|
||||
|
||||
/*
|
||||
* This file contains defines, structures, etc. that are used
|
||||
* to communicate between kernel and user code.
|
||||
*/
|
||||
|
||||
#ifndef RVT_ABI_USER_H
|
||||
#define RVT_ABI_USER_H
|
||||
|
||||
#include <linux/types.h>
|
||||
#include <rdma/ib_user_verbs.h>
|
||||
#ifndef RDMA_ATOMIC_UAPI
|
||||
#define RDMA_ATOMIC_UAPI(_type, _name) struct{ _type val; } _name
|
||||
#endif
|
||||
|
||||
struct rvt_wqe_sge {
|
||||
__aligned_u64 addr;
|
||||
__u32 length;
|
||||
__u32 lkey;
|
||||
};
|
||||
|
||||
/*
|
||||
* This structure is used to contain the head pointer, tail pointer,
|
||||
* and completion queue entries as a single memory allocation so
|
||||
* it can be mmap'ed into user space.
|
||||
*/
|
||||
struct rvt_cq_wc {
|
||||
/* index of next entry to fill */
|
||||
RDMA_ATOMIC_UAPI(__u32, head);
|
||||
/* index of next ib_poll_cq() entry */
|
||||
RDMA_ATOMIC_UAPI(__u32, tail);
|
||||
|
||||
/* these are actually size ibcq.cqe + 1 */
|
||||
struct ib_uverbs_wc uqueue[];
|
||||
};
|
||||
|
||||
/*
|
||||
* Receive work request queue entry.
|
||||
* The size of the sg_list is determined when the QP (or SRQ) is created
|
||||
* and stored in qp->r_rq.max_sge (or srq->rq.max_sge).
|
||||
*/
|
||||
struct rvt_rwqe {
|
||||
__u64 wr_id;
|
||||
__u8 num_sge;
|
||||
__u8 padding[7];
|
||||
struct rvt_wqe_sge sg_list[];
|
||||
};
|
||||
|
||||
/*
|
||||
* This structure is used to contain the head pointer, tail pointer,
|
||||
* and receive work queue entries as a single memory allocation so
|
||||
* it can be mmap'ed into user space.
|
||||
* Note that the wq array elements are variable size so you can't
|
||||
* just index into the array to get the N'th element;
|
||||
* use get_rwqe_ptr() for user space and rvt_get_rwqe_ptr()
|
||||
* for kernel space.
|
||||
*/
|
||||
struct rvt_rwq {
|
||||
/* new work requests posted to the head */
|
||||
RDMA_ATOMIC_UAPI(__u32, head);
|
||||
/* receives pull requests from here. */
|
||||
RDMA_ATOMIC_UAPI(__u32, tail);
|
||||
struct rvt_rwqe wq[];
|
||||
};
|
||||
#endif /* RVT_ABI_USER_H */
|
||||
185
include/uapi/rdma/siw-abi.h
Normal file
185
include/uapi/rdma/siw-abi.h
Normal file
|
|
@ -0,0 +1,185 @@
|
|||
/* SPDX-License-Identifier: (GPL-2.0 WITH Linux-syscall-note) or BSD-3-Clause */
|
||||
|
||||
/* Authors: Bernard Metzler <bmt@zurich.ibm.com> */
|
||||
/* Copyright (c) 2008-2019, IBM Corporation */
|
||||
|
||||
#ifndef _SIW_USER_H
|
||||
#define _SIW_USER_H
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
#define SIW_NODE_DESC_COMMON "Software iWARP stack"
|
||||
#define SIW_ABI_VERSION 1
|
||||
#define SIW_MAX_SGE 6
|
||||
#define SIW_UOBJ_MAX_KEY 0x08FFFF
|
||||
#define SIW_INVAL_UOBJ_KEY (SIW_UOBJ_MAX_KEY + 1)
|
||||
|
||||
struct siw_uresp_create_cq {
|
||||
__u32 cq_id;
|
||||
__u32 num_cqe;
|
||||
__aligned_u64 cq_key;
|
||||
};
|
||||
|
||||
struct siw_uresp_create_qp {
|
||||
__u32 qp_id;
|
||||
__u32 num_sqe;
|
||||
__u32 num_rqe;
|
||||
__u32 pad;
|
||||
__aligned_u64 sq_key;
|
||||
__aligned_u64 rq_key;
|
||||
};
|
||||
|
||||
struct siw_ureq_reg_mr {
|
||||
__u8 stag_key;
|
||||
__u8 reserved[3];
|
||||
__u32 pad;
|
||||
};
|
||||
|
||||
struct siw_uresp_reg_mr {
|
||||
__u32 stag;
|
||||
__u32 pad;
|
||||
};
|
||||
|
||||
struct siw_uresp_create_srq {
|
||||
__u32 num_rqe;
|
||||
__u32 pad;
|
||||
__aligned_u64 srq_key;
|
||||
};
|
||||
|
||||
struct siw_uresp_alloc_ctx {
|
||||
__u32 dev_id;
|
||||
__u32 pad;
|
||||
};
|
||||
|
||||
enum siw_opcode {
|
||||
SIW_OP_WRITE,
|
||||
SIW_OP_READ,
|
||||
SIW_OP_READ_LOCAL_INV,
|
||||
SIW_OP_SEND,
|
||||
SIW_OP_SEND_WITH_IMM,
|
||||
SIW_OP_SEND_REMOTE_INV,
|
||||
|
||||
/* Unsupported */
|
||||
SIW_OP_FETCH_AND_ADD,
|
||||
SIW_OP_COMP_AND_SWAP,
|
||||
|
||||
SIW_OP_RECEIVE,
|
||||
/* provider internal SQE */
|
||||
SIW_OP_READ_RESPONSE,
|
||||
/*
|
||||
* below opcodes valid for
|
||||
* in-kernel clients only
|
||||
*/
|
||||
SIW_OP_INVAL_STAG,
|
||||
SIW_OP_REG_MR,
|
||||
SIW_NUM_OPCODES
|
||||
};
|
||||
|
||||
/* Keep it same as ibv_sge to allow for memcpy */
|
||||
struct siw_sge {
|
||||
__aligned_u64 laddr;
|
||||
__u32 length;
|
||||
__u32 lkey;
|
||||
};
|
||||
|
||||
/*
|
||||
* Inline data are kept within the work request itself occupying
|
||||
* the space of sge[1] .. sge[n]. Therefore, inline data cannot be
|
||||
* supported if SIW_MAX_SGE is below 2 elements.
|
||||
*/
|
||||
#define SIW_MAX_INLINE (sizeof(struct siw_sge) * (SIW_MAX_SGE - 1))
|
||||
|
||||
#if SIW_MAX_SGE < 2
|
||||
#error "SIW_MAX_SGE must be at least 2"
|
||||
#endif
|
||||
|
||||
enum siw_wqe_flags {
|
||||
SIW_WQE_VALID = 1,
|
||||
SIW_WQE_INLINE = (1 << 1),
|
||||
SIW_WQE_SIGNALLED = (1 << 2),
|
||||
SIW_WQE_SOLICITED = (1 << 3),
|
||||
SIW_WQE_READ_FENCE = (1 << 4),
|
||||
SIW_WQE_REM_INVAL = (1 << 5),
|
||||
SIW_WQE_COMPLETED = (1 << 6)
|
||||
};
|
||||
|
||||
/* Send Queue Element */
|
||||
struct siw_sqe {
|
||||
__aligned_u64 id;
|
||||
__u16 flags;
|
||||
__u8 num_sge;
|
||||
/* Contains enum siw_opcode values */
|
||||
__u8 opcode;
|
||||
__u32 rkey;
|
||||
union {
|
||||
__aligned_u64 raddr;
|
||||
__aligned_u64 base_mr;
|
||||
};
|
||||
union {
|
||||
struct siw_sge sge[SIW_MAX_SGE];
|
||||
__aligned_u64 access;
|
||||
};
|
||||
};
|
||||
|
||||
/* Receive Queue Element */
|
||||
struct siw_rqe {
|
||||
__aligned_u64 id;
|
||||
__u16 flags;
|
||||
__u8 num_sge;
|
||||
/*
|
||||
* only used by kernel driver,
|
||||
* ignored if set by user
|
||||
*/
|
||||
__u8 opcode;
|
||||
__u32 unused;
|
||||
struct siw_sge sge[SIW_MAX_SGE];
|
||||
};
|
||||
|
||||
enum siw_notify_flags {
|
||||
SIW_NOTIFY_NOT = (0),
|
||||
SIW_NOTIFY_SOLICITED = (1 << 0),
|
||||
SIW_NOTIFY_NEXT_COMPLETION = (1 << 1),
|
||||
SIW_NOTIFY_MISSED_EVENTS = (1 << 2),
|
||||
SIW_NOTIFY_ALL = SIW_NOTIFY_SOLICITED | SIW_NOTIFY_NEXT_COMPLETION |
|
||||
SIW_NOTIFY_MISSED_EVENTS
|
||||
};
|
||||
|
||||
enum siw_wc_status {
|
||||
SIW_WC_SUCCESS,
|
||||
SIW_WC_LOC_LEN_ERR,
|
||||
SIW_WC_LOC_PROT_ERR,
|
||||
SIW_WC_LOC_QP_OP_ERR,
|
||||
SIW_WC_WR_FLUSH_ERR,
|
||||
SIW_WC_BAD_RESP_ERR,
|
||||
SIW_WC_LOC_ACCESS_ERR,
|
||||
SIW_WC_REM_ACCESS_ERR,
|
||||
SIW_WC_REM_INV_REQ_ERR,
|
||||
SIW_WC_GENERAL_ERR,
|
||||
SIW_NUM_WC_STATUS
|
||||
};
|
||||
|
||||
struct siw_cqe {
|
||||
__aligned_u64 id;
|
||||
__u8 flags;
|
||||
__u8 opcode;
|
||||
__u16 status;
|
||||
__u32 bytes;
|
||||
union {
|
||||
__aligned_u64 imm_data;
|
||||
__u32 inval_stag;
|
||||
};
|
||||
/* QP number or QP pointer */
|
||||
union {
|
||||
struct ib_qp *base_qp;
|
||||
__aligned_u64 qp_id;
|
||||
};
|
||||
};
|
||||
|
||||
/*
|
||||
* Shared structure between user and kernel
|
||||
* to control CQ arming.
|
||||
*/
|
||||
struct siw_cq_ctrl {
|
||||
__aligned_u64 notify;
|
||||
};
|
||||
#endif
|
||||
|
|
@ -2,19 +2,6 @@
|
|||
/*
|
||||
* Copyright(c) 2007 Intel Corporation. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify it
|
||||
* under the terms and conditions of the GNU General Public License,
|
||||
* version 2, as published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
* more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along with
|
||||
* this program; if not, write to the Free Software Foundation, Inc.,
|
||||
* 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Maintained at www.Open-FCoE.org
|
||||
*/
|
||||
|
||||
|
|
|
|||
|
|
@ -2,19 +2,6 @@
|
|||
/*
|
||||
* Copyright(c) 2007 Intel Corporation. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify it
|
||||
* under the terms and conditions of the GNU General Public License,
|
||||
* version 2, as published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
* more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along with
|
||||
* this program; if not, write to the Free Software Foundation, Inc.,
|
||||
* 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Maintained at www.Open-FCoE.org
|
||||
*/
|
||||
|
||||
|
|
|
|||
|
|
@ -2,19 +2,6 @@
|
|||
/*
|
||||
* Copyright(c) 2007 Intel Corporation. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify it
|
||||
* under the terms and conditions of the GNU General Public License,
|
||||
* version 2, as published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
* more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along with
|
||||
* this program; if not, write to the Free Software Foundation, Inc.,
|
||||
* 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Maintained at www.Open-FCoE.org
|
||||
*/
|
||||
|
||||
|
|
|
|||
|
|
@ -2,19 +2,6 @@
|
|||
/*
|
||||
* Copyright(c) 2007 Intel Corporation. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify it
|
||||
* under the terms and conditions of the GNU General Public License,
|
||||
* version 2, as published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
* more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along with
|
||||
* this program; if not, write to the Free Software Foundation, Inc.,
|
||||
* 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Maintained at www.Open-FCoE.org
|
||||
*/
|
||||
|
||||
|
|
|
|||
|
|
@ -3,21 +3,6 @@
|
|||
* FC Transport BSG Interface
|
||||
*
|
||||
* Copyright (C) 2008 James Smart, Emulex Corporation
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef SCSI_BSG_FC_H
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
/*
|
||||
* UFS Transport SGIO v4 BSG Message Support
|
||||
*
|
||||
|
|
|
|||
|
|
@ -4,21 +4,6 @@
|
|||
* Used for the posting of outbound SCSI transport events
|
||||
*
|
||||
* Copyright (C) 2006 James Smart, Emulex Corporation
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*
|
||||
*/
|
||||
#ifndef SCSI_NETLINK_H
|
||||
#define SCSI_NETLINK_H
|
||||
|
|
|
|||
|
|
@ -3,21 +3,6 @@
|
|||
* FC Transport Netlink Interface
|
||||
*
|
||||
* Copyright (C) 2006 James Smart, Emulex Corporation
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*
|
||||
*/
|
||||
#ifndef SCSI_NETLINK_FC_H
|
||||
#define SCSI_NETLINK_FC_H
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
/*
|
||||
* skl-tplg-interface.h - Intel DSP FW private data interface
|
||||
*
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@
|
|||
|
||||
/* SOF ABI version major, minor and patch numbers */
|
||||
#define SOF_ABI_MAJOR 3
|
||||
#define SOF_ABI_MINOR 6
|
||||
#define SOF_ABI_MINOR 8
|
||||
#define SOF_ABI_PATCH 0
|
||||
|
||||
/* SOF ABI version number. Format within 32bit word is MMmmmppp */
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue