8fb49b4c7a
This adds a new virtio uclass driver for “virtio” [1] family of devices that are are found in virtual environments like QEMU, yet by design they look like physical devices to the guest. The uclass driver provides child_pre_probe() and child_post_probe() methods to do some common operations for virtio device drivers like device and driver supported feature negotiation, etc. [1] http://docs.oasis-open.org/virtio/virtio/v1.0/virtio-v1.0.pdf Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi> Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
25 lines
656 B
C
25 lines
656 B
C
/* SPDX-License-Identifier: BSD-3-Clause */
|
|
/*
|
|
* Copyright (C) 2018, Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>
|
|
* Copyright (C) 2018, Bin Meng <bmeng.cn@gmail.com>
|
|
*
|
|
* From Linux kernel include/uapi/linux/virtio_types.h
|
|
*/
|
|
|
|
#ifndef _LINUX_VIRTIO_TYPES_H
|
|
#define _LINUX_VIRTIO_TYPES_H
|
|
|
|
#include <linux/types.h>
|
|
|
|
/*
|
|
* __virtio{16,32,64} have the following meaning:
|
|
* - __u{16,32,64} for virtio devices in legacy mode, accessed in native endian
|
|
* - __le{16,32,64} for standard-compliant virtio devices
|
|
*/
|
|
|
|
typedef __u16 __bitwise __virtio16;
|
|
typedef __u32 __bitwise __virtio32;
|
|
typedef __u64 __bitwise __virtio64;
|
|
|
|
#endif /* _LINUX_VIRTIO_TYPES_H */
|