DPDK  17.02.1
Functions
rte_io.h File Reference
#include <rte_atomic.h>
#include <stdint.h>
#include <rte_common.h>

Go to the source code of this file.

Functions

static uint8_t rte_read8_relaxed (const volatile void *addr)
static uint16_t rte_read16_relaxed (const volatile void *addr)
static uint32_t rte_read32_relaxed (const volatile void *addr)
static uint64_t rte_read64_relaxed (const volatile void *addr)
static void rte_write8_relaxed (uint8_t value, volatile void *addr)
static void rte_write16_relaxed (uint16_t value, volatile void *addr)
static void rte_write32_relaxed (uint32_t value, volatile void *addr)
static void rte_write64_relaxed (uint64_t value, volatile void *addr)
static uint8_t rte_read8 (const volatile void *addr)
static uint16_t rte_read16 (const volatile void *addr)
static uint32_t rte_read32 (const volatile void *addr)
static uint64_t rte_read64 (const volatile void *addr)
static void rte_write8 (uint8_t value, volatile void *addr)
static void rte_write16 (uint16_t value, volatile void *addr)
static void rte_write32 (uint32_t value, volatile void *addr)
static void rte_write64 (uint64_t value, volatile void *addr)

Detailed Description

I/O device memory operations

This file defines the generic API for I/O device memory read/write operations

Definition in file rte_io.h.

Function Documentation

static uint8_t rte_read8_relaxed ( const volatile void *  addr)
inlinestatic

Read a 8-bit value from I/O device memory address addr.

The relaxed version does not have additional I/O memory barrier, useful in accessing the device registers of integrated controllers which implicitly strongly ordered with respect to memory access.

Parameters
addrI/O memory address to read the value from
Returns
read value

Definition at line 268 of file rte_io.h.

static uint16_t rte_read16_relaxed ( const volatile void *  addr)
inlinestatic

Read a 16-bit value from I/O device memory address addr.

The relaxed version does not have additional I/O memory barrier, useful in accessing the device registers of integrated controllers which implicitly strongly ordered with respect to memory access.

Parameters
addrI/O memory address to read the value from
Returns
read value

Definition at line 274 of file rte_io.h.

static uint32_t rte_read32_relaxed ( const volatile void *  addr)
inlinestatic

Read a 32-bit value from I/O device memory address addr.

The relaxed version does not have additional I/O memory barrier, useful in accessing the device registers of integrated controllers which implicitly strongly ordered with respect to memory access.

Parameters
addrI/O memory address to read the value from
Returns
read value

Definition at line 280 of file rte_io.h.

static uint64_t rte_read64_relaxed ( const volatile void *  addr)
inlinestatic

Read a 64-bit value from I/O device memory address addr.

The relaxed version does not have additional I/O memory barrier, useful in accessing the device registers of integrated controllers which implicitly strongly ordered with respect to memory access.

Parameters
addrI/O memory address to read the value from
Returns
read value

Definition at line 286 of file rte_io.h.

static void rte_write8_relaxed ( uint8_t  value,
volatile void *  addr 
)
inlinestatic

Write a 8-bit value to I/O device memory address addr.

The relaxed version does not have additional I/O memory barrier, useful in accessing the device registers of integrated controllers which implicitly strongly ordered with respect to memory access.

Parameters
valueValue to write
addrI/O memory address to write the value to

Definition at line 292 of file rte_io.h.

static void rte_write16_relaxed ( uint16_t  value,
volatile void *  addr 
)
inlinestatic

Write a 16-bit value to I/O device memory address addr.

The relaxed version does not have additional I/O memory barrier, useful in accessing the device registers of integrated controllers which implicitly strongly ordered with respect to memory access.

Parameters
valueValue to write
addrI/O memory address to write the value to

Definition at line 298 of file rte_io.h.

static void rte_write32_relaxed ( uint32_t  value,
volatile void *  addr 
)
inlinestatic

Write a 32-bit value to I/O device memory address addr.

The relaxed version does not have additional I/O memory barrier, useful in accessing the device registers of integrated controllers which implicitly strongly ordered with respect to memory access.

Parameters
valueValue to write
addrI/O memory address to write the value to

Definition at line 304 of file rte_io.h.

static void rte_write64_relaxed ( uint64_t  value,
volatile void *  addr 
)
inlinestatic

Write a 64-bit value to I/O device memory address addr.

The relaxed version does not have additional I/O memory barrier, useful in accessing the device registers of integrated controllers which implicitly strongly ordered with respect to memory access.

Parameters
valueValue to write
addrI/O memory address to write the value to

Definition at line 310 of file rte_io.h.

static uint8_t rte_read8 ( const volatile void *  addr)
inlinestatic

Read a 8-bit value from I/O device memory address addr.

Parameters
addrI/O memory address to read the value from
Returns
read value

Definition at line 316 of file rte_io.h.

static uint16_t rte_read16 ( const volatile void *  addr)
inlinestatic

Read a 16-bit value from I/O device memory address addr.

Parameters
addrI/O memory address to read the value from
Returns
read value

Definition at line 325 of file rte_io.h.

static uint32_t rte_read32 ( const volatile void *  addr)
inlinestatic

Read a 32-bit value from I/O device memory address addr.

Parameters
addrI/O memory address to read the value from
Returns
read value

Definition at line 334 of file rte_io.h.

static uint64_t rte_read64 ( const volatile void *  addr)
inlinestatic

Read a 64-bit value from I/O device memory address addr.

Parameters
addrI/O memory address to read the value from
Returns
read value

Definition at line 343 of file rte_io.h.

static void rte_write8 ( uint8_t  value,
volatile void *  addr 
)
inlinestatic

Write a 8-bit value to I/O device memory address addr.

Parameters
valueValue to write
addrI/O memory address to write the value to

Definition at line 352 of file rte_io.h.

static void rte_write16 ( uint16_t  value,
volatile void *  addr 
)
inlinestatic

Write a 16-bit value to I/O device memory address addr.

Parameters
valueValue to write
addrI/O memory address to write the value to

Definition at line 359 of file rte_io.h.

static void rte_write32 ( uint32_t  value,
volatile void *  addr 
)
inlinestatic

Write a 32-bit value to I/O device memory address addr.

Parameters
valueValue to write
addrI/O memory address to write the value to

Definition at line 366 of file rte_io.h.

static void rte_write64 ( uint64_t  value,
volatile void *  addr 
)
inlinestatic

Write a 64-bit value to I/O device memory address addr.

Parameters
valueValue to write
addrI/O memory address to write the value to

Definition at line 373 of file rte_io.h.