iPXE
Data Fields
vmbus_device Struct Reference

A VMBus device. More...

#include <vmbus.h>

Data Fields

struct device dev
 Generic iPXE device. More...
 
struct hv_hypervisorhv
 Hyper-V hypervisor. More...
 
union uuid instance
 Channel instance. More...
 
unsigned int channel
 Channel ID. More...
 
unsigned int monitor
 Monitor ID. More...
 
void(* signal )(struct vmbus_device *vmdev)
 Signal channel. More...
 
uint32_t out_len
 Outbound ring buffer length. More...
 
uint32_t in_len
 Inbound ring buffer length. More...
 
struct vmbus_ringout
 Outbound ring buffer. More...
 
struct vmbus_ringin
 Inbound ring buffer. More...
 
unsigned int gpadl
 Ring buffer GPADL ID. More...
 
struct vmbus_channel_operationsop
 Channel operations. More...
 
size_t mtu
 Maximum expected data packet length. More...
 
void * packet
 Packet buffer. More...
 
struct list_head pages
 List of transfer page sets. More...
 
struct vmbus_driverdriver
 Driver. More...
 
void * priv
 Driver-private data. More...
 

Detailed Description

A VMBus device.

Definition at line 476 of file vmbus.h.

Field Documentation

◆ dev

struct device vmbus_device::dev

◆ hv

struct hv_hypervisor* vmbus_device::hv

◆ instance

union uuid vmbus_device::instance

Channel instance.

Definition at line 483 of file vmbus.h.

Referenced by vmbus_probe_channels().

◆ channel

unsigned int vmbus_device::channel

◆ monitor

unsigned int vmbus_device::monitor

Monitor ID.

Definition at line 487 of file vmbus.h.

Referenced by vmbus_probe_channels(), and vmbus_signal_monitor().

◆ signal

void( * vmbus_device::signal) (struct vmbus_device *vmdev)

Signal channel.

Parameters
vmdevVMBus device

Definition at line 492 of file vmbus.h.

Referenced by vmbus_probe_channels(), and vmbus_send().

◆ out_len

uint32_t vmbus_device::out_len

Outbound ring buffer length.

Definition at line 495 of file vmbus.h.

Referenced by vmbus_close(), vmbus_open(), vmbus_produce(), and vmbus_send().

◆ in_len

uint32_t vmbus_device::in_len

Inbound ring buffer length.

Definition at line 497 of file vmbus.h.

Referenced by vmbus_close(), vmbus_consume(), vmbus_dump_channel(), vmbus_open(), and vmbus_poll().

◆ out

struct vmbus_ring* vmbus_device::out

Outbound ring buffer.

Definition at line 499 of file vmbus.h.

Referenced by vmbus_close(), vmbus_dump_channel(), vmbus_open(), vmbus_produce(), vmbus_remove_channels(), and vmbus_send().

◆ in

struct vmbus_ring* vmbus_device::in

Inbound ring buffer.

Definition at line 501 of file vmbus.h.

Referenced by vmbus_close(), vmbus_consume(), vmbus_dump_channel(), vmbus_has_data(), vmbus_open(), vmbus_poll(), and vmbus_remove_channels().

◆ gpadl

unsigned int vmbus_device::gpadl

Ring buffer GPADL ID.

Definition at line 503 of file vmbus.h.

Referenced by vmbus_close(), and vmbus_open().

◆ op

struct vmbus_channel_operations* vmbus_device::op

Channel operations.

Definition at line 506 of file vmbus.h.

Referenced by vmbus_open(), and vmbus_poll().

◆ mtu

size_t vmbus_device::mtu

Maximum expected data packet length.

Definition at line 508 of file vmbus.h.

Referenced by vmbus_open(), vmbus_poll(), and vmbus_send_data().

◆ packet

void* vmbus_device::packet

◆ pages

struct list_head vmbus_device::pages

List of transfer page sets.

Definition at line 512 of file vmbus.h.

Referenced by vmbus_probe_channels(), vmbus_register_pages(), vmbus_remove_channels(), vmbus_unregister_pages(), and vmbus_xfer_pages().

◆ driver

struct vmbus_driver* vmbus_device::driver

Driver.

Definition at line 515 of file vmbus.h.

Referenced by vmbus_probe_channels(), vmbus_remove_channels(), and vmbus_reset_channels().

◆ priv

void* vmbus_device::priv

Driver-private data.

Definition at line 517 of file vmbus.h.

Referenced by vmbus_get_drvdata(), and vmbus_set_drvdata().


The documentation for this struct was generated from the following file: