vio_dring_state
static inline void *vio_dring_cur(struct vio_dring_state *dr)
static inline void *vio_dring_entry(struct vio_dring_state *dr,
static inline u32 vio_dring_avail(struct vio_dring_state *dr,
static inline u32 vio_dring_next(struct vio_dring_state *dr, u32 index)
static inline u32 vio_dring_prev(struct vio_dring_state *dr, u32 index)
struct vio_dring_state drings[2];
struct vio_dring_state *dr;
struct vio_dring_state *dr = &vio->drings[VIO_DRIVER_TX_RING];
struct vio_dring_state *dr;
struct vio_dring_state *dr;
struct vio_dring_state *dr = &vio->drings[VIO_DRIVER_RX_RING];
struct vio_dring_state *dr;
struct vio_dring_state *dr = &port->vio.drings[VIO_DRIVER_TX_RING];
static inline u32 vdc_tx_dring_avail(struct vio_dring_state *dr)
struct vio_dring_state *dr = &port->vio.drings[VIO_DRIVER_TX_RING];
static void vdc_end_one(struct vdc_port *port, struct vio_dring_state *dr,
struct vio_dring_state *dr = &port->vio.drings[VIO_DRIVER_TX_RING];
struct vio_dring_state *dr = &port->vio.drings[VIO_DRIVER_TX_RING];
struct vio_dring_state *dr = &port->vio.drings[VIO_DRIVER_TX_RING];
struct vio_dring_state *dr;
struct vio_dring_state *dr;
struct vio_dring_state *dr = &port->vio.drings[VIO_DRIVER_TX_RING];
struct vio_dring_state *dr = &port->vio.drings[VIO_DRIVER_TX_RING];
struct vio_dring_state *dr = &port->vio.drings[VIO_DRIVER_TX_RING];
struct vio_dring_state *dr;
struct vio_dring_state *dr;
struct vio_dring_state *dr;
struct vio_dring_state *dr;
static int vnet_send_ack(struct vnet_port *port, struct vio_dring_state *dr,
u32 start, u32 end, u8 vio_dring_state)
.state = vio_dring_state,
static inline u32 vnet_tx_dring_avail(struct vio_dring_state *dr)
if (err <= 0 && vio_dring_state == VIO_DRING_STOPPED) {
struct vio_dring_state *dr,
struct vio_dring_state *dr,
struct vio_dring_state *dr,
static int vnet_walk_rx(struct vnet_port *port, struct vio_dring_state *dr,
struct vio_dring_state *dr = &port->vio.drings[VIO_DRIVER_RX_RING];
static int idx_is_pending(struct vio_dring_state *dr, u32 end)
struct vio_dring_state *dr = &port->vio.drings[VIO_DRIVER_TX_RING];
struct vio_dring_state *dr =
struct vio_dring_state *dr = &port->vio.drings[VIO_DRIVER_TX_RING];
struct vio_dring_state *dr = &port->vio.drings[VIO_DRIVER_TX_RING];