android_kernel_oneplus_msm8998/include/uapi/linux
Ashutosh Dixit f69bcbf3b4 Intel MIC Host Driver Changes for Virtio Devices.
This patch introduces the host "Virtio over PCIe" interface for
Intel MIC. It allows creating user space backends on the host and instantiating
virtio devices for them on the Intel MIC card. It uses the existing VRINGH
infrastructure in the kernel to access virtio rings from the host. A character
device per MIC is exposed with IOCTL, mmap and poll callbacks. This allows the
user space backend to:
(a) add/remove a virtio device via a device page.
(b) map (R/O) virtio rings and device page to user space.
(c) poll for availability of data.
(d) copy a descriptor or entire descriptor chain to/from the card.
(e) modify virtio configuration.
(f) handle virtio device reset.
The buffers are copied over using CPU copies for this initial patch
and host initiated MIC DMA support is planned for future patches.
The avail and desc virtio rings are in host memory and the used ring
is in card memory to maximize writes across PCIe for performance.

Co-author: Sudeep Dutt <sudeep.dutt@intel.com>
Signed-off-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Signed-off-by: Caz Yokoyama <Caz.Yokoyama@intel.com>
Signed-off-by: Dasaratharaman Chandramouli <dasaratharaman.chandramouli@intel.com>
Signed-off-by: Nikhil Rao <nikhil.rao@intel.com>
Signed-off-by: Harshavardhan R Kharche <harshavardhan.r.kharche@intel.com>
Signed-off-by: Sudeep Dutt <sudeep.dutt@intel.com>
Acked-by: Yaozu (Eddie) Dong <eddie.dong@intel.com>
Reviewed-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-09-26 13:50:56 -07:00
..
byteorder
caif caif: Remove my bouncing email address. 2013-04-23 13:25:51 -04:00
can can: gw: add a per rule limitation of frame hops 2013-08-29 22:58:24 +02:00
cifs cifs: Move and expand MAX_SERVER_SIZE definition 2013-09-08 14:34:22 -05:00
dvb [media] demux.h: Remove duplicated enum 2013-04-08 06:53:15 -03:00
hdlc
hsi
isdn
mmc
netfilter netfilter: add SYNPROXY core/target 2013-08-28 00:27:54 +02:00
netfilter_arp
netfilter_bridge uapi: Convert some uses of 6 to ETH_ALEN 2013-08-02 12:33:54 -07:00
netfilter_ipv4 uapi: Convert some uses of 6 to ETH_ALEN 2013-08-02 12:33:54 -07:00
netfilter_ipv6 netfilter: fix struct ip6t_frag field description 2013-04-02 12:25:57 +02:00
nfsd
raid UAPI: fix endianness conditionals in linux/raid/md_p.h 2013-03-13 15:21:49 -07:00
spi
sunrpc
tc_act
tc_ematch
usb USB: move the definition of USB_MAXCHILDREN 2013-07-16 15:33:02 -07:00
wimax uapi: Convert some uses of 6 to ETH_ALEN 2013-08-02 12:33:54 -07:00
a.out.h
acct.h UAPI: fix endianness conditionals in linux/acct.h 2013-03-13 15:21:48 -07:00
adb.h
adfs_fs.h
affs_hardblocks.h
agpgart.h
aio_abi.h UAPI: fix endianness conditionals in linux/aio_abi.h 2013-03-13 15:21:48 -07:00
apm_bios.h
arcfb.h
atalk.h
atm.h
atm_eni.h
atm_he.h
atm_idt77105.h
atm_nicstar.h
atm_tcp.h
atm_zatm.h
atmapi.h
atmarp.h
atmbr2684.h
atmclip.h
atmdev.h
atmioc.h
atmlec.h
atmmpc.h
atmppp.h
atmsap.h
atmsvc.h
audit.h audit: Make testing for a valid loginuid explicit. 2013-05-07 22:27:15 -04:00
auto_fs.h unbreak automounter support on 64-bit kernel with 32-bit userspace (v2) 2013-02-08 20:42:18 +01:00
auto_fs4.h
auxvec.h powerpc: Add HWCAP2 aux entry 2013-04-26 16:08:16 +10:00
ax25.h
b1lli.h
baycom.h
bcm933xx_hcs.h MIPS: BCM63XX: recognize Cable Modem firmware format 2013-07-01 15:10:53 +02:00
bfs_fs.h
binfmts.h
blkpg.h
blktrace_api.h
bpqether.h
bsg.h
btrfs.h Btrfs: use __u64 in exported user headers 2013-09-01 08:16:01 -04:00
can.h
capability.h
capi.h
cciss_defs.h
cciss_ioctl.h
cdrom.h libata: identify and init ZPODD devices 2013-01-21 15:40:35 -05:00
cgroupstats.h
chio.h
cm4000_cs.h Omnikey Cardman 4000: pull in ioctl.h in user header 2013-08-28 19:26:38 -07:00
cn_proc.h connector: Added coredumping event to the process connector 2013-03-20 13:23:21 -04:00
coda.h
coda_psdev.h
coff.h
connector.h Drivers: hv: Add a new driver to support host initiated backup 2013-03-15 12:12:36 -07:00
const.h linux/const.h: Add _BITUL() and _BITULL() 2013-06-25 15:50:04 -07:00
cramfs_fs.h
cuda.h
cyclades.h
cycx_cfm.h
dcbnl.h
dccp.h
dlm.h
dlm_device.h
dlm_netlink.h
dlm_plock.h
dlmconstants.h
dm-ioctl.h dm: add statistics support 2013-09-05 20:46:06 -04:00
dm-log-userspace.h
dn.h uapi: Convert some uses of 6 to ETH_ALEN 2013-08-02 12:33:54 -07:00
dqblk_xfs.h quota: Add a new quotactl command Q_XGETQSTATV 2013-08-20 16:53:58 -05:00
edd.h
efs_fs_sb.h
elf-em.h Move the EM_ARM and EM_AARCH64 definitions to uapi/linux/elf-em.h 2013-09-02 16:35:50 +01:00
elf-fdpic.h
elf.h metag: ptrace: Implement NT_METAG_TLS 2013-03-27 14:37:47 +00:00
elfcore.h
errno.h
errqueue.h
ethtool.h net: ethtool: disambiguate XCVR_* meaning 2013-05-27 22:42:50 -07:00
eventpoll.h
fadvise.h
falloc.h
fanotify.h
fb.h
fcntl.h
fd.h
fdreg.h
fib_rules.h fib_rules: fix suppressor names and default values 2013-08-03 10:40:23 -07:00
fiemap.h ext4: add support for extent pre-caching 2013-08-16 22:05:14 -04:00
filter.h filter: add ANC_PAY_OFFSET instruction for loading payload start offset 2013-03-20 13:15:45 -04:00
firewire-cdev.h firewire: fix libdc1394/FlyCap2 iso event regression 2013-07-27 20:24:36 +02:00
firewire-constants.h
flat.h
fs.h fs: bump inode and dentry counters to long 2013-09-10 18:56:29 -04:00
fsl_hypervisor.h
fuse.h fuse: add flag to turn on async direct IO 2013-05-01 14:37:21 +02:00
futex.h
gameport.h
gen_stats.h net_sched: add 64bit rate estimators 2013-06-11 02:51:03 -07:00
genetlink.h
gfs2_ondisk.h
gigaset_dev.h
hdlc.h
hdlcdrv.h
hdreg.h
hid.h
hiddev.h
hidraw.h
hpet.h
hw_breakpoint.h
hysdn_if.h
i2c-dev.h
i2c.h
i2o-dev.h
i8k.h
icmp.h
icmpv6.h ICMPv6: treat dest unreachable codes 5 and 6 as EACCES, not EPROTO 2013-09-03 22:11:44 -04:00
if.h
if_addr.h
if_addrlabel.h
if_alg.h
if_arcnet.h
if_arp.h net: if_arp: add ARPHRD_NETLINK type 2013-06-24 16:39:05 -07:00
if_bonding.h
if_bridge.h uapi: Convert some uses of 6 to ETH_ALEN 2013-08-02 12:33:54 -07:00
if_cablemodem.h if_cablemodem.h: Add parenthesis around ioctl macros 2013-05-08 13:13:30 -07:00
if_eql.h
if_ether.h net: add ETH_P_802_3_MIN 2013-03-28 01:20:42 -04:00
if_fc.h
if_fddi.h
if_frad.h
if_hippi.h
if_infiniband.h
if_link.h vxlan: add ipv6 support 2013-08-31 22:30:00 -04:00
if_ltalk.h
if_packet.h net: packet: add randomized fanout scheduler 2013-08-29 16:43:29 -04:00
if_phonet.h
if_plip.h
if_ppp.h
if_pppol2tp.h
if_pppox.h pptp: fix byte order warnings 2013-08-13 15:10:22 -07:00
if_slip.h
if_team.h
if_tun.h tun: Get skfilter layout 2013-08-21 12:21:45 -07:00
if_tunnel.h
if_vlan.h net/8021q: Implement Multiple VLAN Registration Protocol (MVRP) 2013-02-10 20:37:22 -05:00
if_x25.h
igmp.h
in.h net: sync some IP headers with glibc 2013-09-04 13:12:43 -04:00
in6.h net: sync some IP headers with glibc 2013-09-04 13:12:43 -04:00
in_route.h
inet_diag.h
inotify.h
input.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2013-09-15 07:13:39 -04:00
ioctl.h
ip.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-08-26 16:37:08 -04:00
ip6_tunnel.h
ip_vs.h ipvs: SH fallback and L4 hashing 2013-06-26 18:01:46 +09:00
ipc.h
ipmi.h ipmi: remove superfluous kernel/userspace explanation 2013-02-27 19:10:21 -08:00
ipmi_msgdefs.h
ipsec.h
ipv6.h ipv6: drop fragmented ndisc packets by default (RFC 6980) 2013-08-29 15:32:08 -04:00
ipv6_route.h
ipx.h
irda.h
irqnr.h
isdn.h
isdn_divertif.h
isdn_ppp.h
isdnif.h
iso_fs.h
ivtv.h
ivtvfb.h
ixjuser.h
jffs2.h
joystick.h
Kbuild Intel MIC Host Driver Changes for Virtio Devices. 2013-09-26 13:50:56 -07:00
kd.h
kdev_t.h
kernel-page-flags.h
kernel.h
kernelcapi.h
kexec.h
keyboard.h
keyctl.h
kvm.h KVM: PPC: reserve a capability number for multitce support 2013-08-26 15:36:58 +03:00
kvm_para.h kvm uapi: Add KICK_CPU and PV_UNHALT definition to uapi 2013-08-26 12:46:01 +03:00
l2tp.h
libc-compat.h net: sync some IP headers with glibc 2013-09-04 13:12:43 -04:00
limits.h
llc.h
loop.h
lp.h
magic.h hostfs: move HOSTFS_SUPER_MAGIC to <linux/magic.h> 2013-05-04 15:48:44 -04:00
major.h
map_to_7segment.h
matroxfb.h
mdio.h
media.h [media] media: add support for decoder as one of media entity types 2013-03-21 14:05:31 -03:00
mei.h
mempolicy.h
meye.h [media] meye: convert to the control framework 2013-02-05 18:23:47 -02:00
mic_common.h Intel MIC Host Driver Changes for Virtio Devices. 2013-09-26 13:50:56 -07:00
mic_ioctl.h Intel MIC Host Driver Changes for Virtio Devices. 2013-09-26 13:50:56 -07:00
mii.h
minix_fs.h
mman.h
mmtimer.h
module.h
mqueue.h
mroute.h mcast: add multicast proxy support (IPv4 and IPv6) 2013-01-21 13:55:14 -05:00
mroute6.h mcast: add multicast proxy support (IPv4 and IPv6) 2013-01-21 13:55:14 -05:00
msdos_fs.h fatfs: add FAT_IOCTL_GET_VOLUME_ID 2013-07-09 10:33:25 -07:00
msg.h
mtio.h
n_r3964.h
nbd.h nbd: support FLUSH requests 2013-02-27 19:10:22 -08:00
ncp.h
ncp_fs.h
ncp_mount.h
ncp_no.h
neighbour.h vxlan: generalize forwarding tables 2013-03-17 12:23:46 -04:00
net.h
net_dropmon.h
net_tstamp.h
netconf.h
netdevice.h
netfilter.h
netfilter_arp.h
netfilter_bridge.h
netfilter_decnet.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h netlink: mmaped netlink: ring setup 2013-04-19 14:57:57 -04:00
netlink_diag.h netlink: add RX/TX-ring support to netlink diag 2013-04-19 14:57:58 -04:00
netrom.h
nfc.h NFC: netlink: Add result of firmware operation to completion event 2013-08-14 01:12:58 +02:00
nfs.h
nfs2.h
nfs3.h
nfs4.h
nfs4_mount.h
nfs_fs.h
nfs_idmap.h
nfs_mount.h
nfsacl.h
nl80211.h cfg80211: add flags to cfg80211_rx_mgmt() 2013-08-23 16:06:03 +02:00
nubus.h
nvme.h NVMe: Update nvme_id_power_state with latest spec 2013-09-03 16:32:26 -04:00
nvram.h
omap3isp.h
omapfb.h
oom.h
openvswitch.h openvswitch: Add SCTP support 2013-08-26 14:03:13 -07:00
packet_diag.h sock_diag: allow to dump bpf filters 2013-04-29 13:21:30 -04:00
param.h
parport.h
patchkey.h
pci.h
pci_regs.h PCI: Add offsets of PCIe capability registers 2013-08-28 11:28:10 -06:00
perf_event.h perf: Fix UAPI export of PERF_EVENT_IOC_ID 2013-09-18 11:29:07 +02:00
personality.h
pfkeyv2.h
pg.h
phantom.h
phonet.h
pkt_cls.h
pkt_sched.h pkt_sched: fq: Fair Queue packet scheduler 2013-08-29 21:38:31 -04:00
pktcdvd.h
pmu.h
poll.h
posix_types.h
ppdev.h
ppp-comp.h
ppp-ioctl.h
ppp_defs.h
pps.h
prctl.h
ptp_clock.h
ptrace.h ptrace: add ability to get/set signal-blocked mask 2013-07-03 16:08:01 -07:00
qnx4_fs.h
qnxtypes.h
quota.h
radeonfb.h
random.h
raw.h
rds.h
reboot.h
reiserfs_fs.h
reiserfs_xattr.h xattr: Constify ->name member of "struct xattr". 2013-07-25 19:30:03 +10:00
resource.h
rfkill.h rfkill: Add NFC to the list of supported radios 2013-04-12 16:54:38 +02:00
romfs_fs.h
rose.h
route.h
rtc.h
rtnetlink.h tcp: introduce a per-route knob for quick ack 2013-06-19 23:06:51 -07:00
scc.h
sched.h
screen_info.h
sctp.h net: sctp: trivial: update mailing list address 2013-07-24 17:53:38 -07:00
sdla.h
seccomp.h
securebits.h
selinux_netlink.h
sem.h
serial.h
serial_core.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile 2013-09-06 11:14:33 -07:00
serial_reg.h Revert "OMAP: UART: Keep the TX fifo full when possible" 2013-08-27 16:02:18 -07:00
serio.h
shm.h
signal.h
signalfd.h
snmp.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-08-16 15:37:26 -07:00
sock_diag.h
socket.h
sockios.h
som.h
sonet.h
sonypi.h
sound.h
soundcard.h
stat.h
stddef.h
string.h
suspend_ioctls.h
swab.h
synclink.h
sysctl.h
sysinfo.h
taskstats.h
tcp.h tcp: TCP_NOTSENT_LOWAT socket option 2013-07-24 17:54:48 -07:00
tcp_metrics.h
telephony.h
termios.h
time.h timekeeping: Add CLOCK_TAI clockid 2013-03-22 16:19:59 -07:00
times.h
timex.h
tiocl.h
tipc.h tipc: update code comments to reflect new uapi header path 2013-06-17 15:53:00 -07:00
tipc_config.h tipc: update code comments to reflect new uapi header path 2013-06-17 15:53:00 -07:00
toshiba.h
tty.h
tty_flags.h
types.h
udf_fs_i.h
udp.h
uhid.h HID: uhid: use generic hidinput_input_event() 2013-07-31 10:33:05 +02:00
uinput.h
uio.h
ultrasound.h
un.h
unistd.h
unix_diag.h net: fix *_DIAG_MAX constants 2013-03-21 12:36:33 -04:00
usbdevice_fs.h
utime.h
utsname.h
uuid.h
uvcvideo.h
v4l2-common.h
v4l2-controls.h [media] V4L: Add VP8 encoder controls 2013-08-18 07:13:36 -03:00
v4l2-dv-timings.h [media] v4l2-dv-timings.h: remove duplicate V4L2_DV_BT_DMT_1366X768P60 2013-08-18 08:13:51 -03:00
v4l2-mediabus.h [media] v4l: Add media format codes for ARGB8888 and AYUV8888 on 32-bit busses 2013-08-18 07:23:07 -03:00
v4l2-subdev.h
veth.h
vfio.h vfio-pci: PCI hot reset interface 2013-09-04 11:28:04 -06:00
vhost.h tcm_vhost: header split up 2013-05-02 13:40:15 +03:00
videodev2.h [media] videodev2.h: defines to calculate blanking and frame sizes 2013-08-18 08:17:35 -03:00
virtio_9p.h
virtio_balloon.h virtio: do not export "u16" and "u64" to userspace 2013-04-02 16:42:58 +10:30
virtio_blk.h
virtio_config.h virtio: VIRTIO_F_ANY_LAYOUT feature 2013-07-09 10:47:45 +09:30
virtio_console.h Simple warning fix for module sections. If too late to pull, no big deal. 2013-07-03 13:09:06 -07:00
virtio_ids.h caif_virtio: Introduce caif over virtio 2013-03-20 14:06:06 +10:30
virtio_net.h uapi: Convert some uses of 6 to ETH_ALEN 2013-08-02 12:33:54 -07:00
virtio_pci.h virtio_pci: better macro exported in uapi 2013-05-20 12:08:09 +09:30
virtio_ring.h
virtio_rng.h
vm_sockets.h VSOCK: Split vm_sockets.h into kernel/uapi 2013-03-08 12:24:48 -05:00
vt.h
wait.h
wanrouter.h wanrouter: delete now orphaned header content, files/drivers 2013-01-31 19:56:35 -05:00
watchdog.h
wimax.h
wireless.h
x25.h
xattr.h hfsplus: add osx.* prefix for handling namespace of Mac OS X extended attributes 2013-02-27 19:10:10 -08:00
xfrm.h xfrm: allow to avoid copying DSCP during encapsulation 2013-03-06 07:02:45 +01:00