L4Re Operating System Framework
Interface and Usage Documentation
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
vbus_types.h File Reference

This header file contains descriptions of vbus related data types and constants. More...

#include <l4/sys/types.h>
+ Include dependency graph for vbus_types.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  l4vbus_resource_t
 Description of a single vbus resource. More...
 
struct  l4vbus_device_t
 Detailed information about a vbus device. More...
 

Typedefs

typedef l4_mword_t l4vbus_device_handle_t
 Device handle for a device on the vbus.
 
typedef l4_addr_t l4vbus_paddr_t
 Address of resources on the vbus.
 

Enumerations

enum  l4vbus_resource_type_t {
  L4VBUS_RESOURCE_INVALID = 0 , L4VBUS_RESOURCE_IRQ , L4VBUS_RESOURCE_MEM , L4VBUS_RESOURCE_PORT ,
  L4VBUS_RESOURCE_BUS , L4VBUS_RESOURCE_GPIO , L4VBUS_RESOURCE_DMA_DOMAIN , L4VBUS_RESOURCE_MAX
}
 Description of vbus resource types. More...
 
enum  l4vbus_resource_flags_t {
  L4VBUS_RESOURCE_F_MEM_R = 0x1 , L4VBUS_RESOURCE_F_MEM_W = 0x2 , L4VBUS_RESOURCE_F_MEM_PREFETCHABLE = 0x10 , L4VBUS_RESOURCE_F_MEM_CACHEABLE = 0x20 ,
  L4VBUS_RESOURCE_F_MEM_MMIO_READ = 0x2000 , L4VBUS_RESOURCE_F_MEM_MMIO_WRITE = 0x4000
}
 Description of vbus resource flags. More...
 
enum  l4vbus_device_flags_t { L4VBUS_DEVICE_F_CHILDREN = 0x10 }
 Flags describing device properties, see l4vbus_device_t. More...
 

Detailed Description

This header file contains descriptions of vbus related data types and constants.

Definition in file vbus_types.h.

Enumeration Type Documentation

◆ l4vbus_device_flags_t

Flags describing device properties, see l4vbus_device_t.

Enumerator
L4VBUS_DEVICE_F_CHILDREN 

Device has child devices.

Definition at line 92 of file vbus_types.h.

◆ l4vbus_resource_flags_t

Description of vbus resource flags.

Enumerator
L4VBUS_RESOURCE_F_MEM_R 

Memory resource is readable.

L4VBUS_RESOURCE_F_MEM_W 

Memory resource is writeable.

L4VBUS_RESOURCE_F_MEM_PREFETCHABLE 

Memory resource is prefetchable.

Clients may map it buffered or non-cached.

L4VBUS_RESOURCE_F_MEM_CACHEABLE 

Memory resource is cacheable.

This implies that the memory resource is prefetchable. If not set, clients must not map it cached. If the resource is neither cacheable nor prefetchable, clients must map it non-cached!

L4VBUS_RESOURCE_F_MEM_MMIO_READ 

Reading needs to be performed using the MMIO space protocol.

L4VBUS_RESOURCE_F_MEM_MMIO_WRITE 

Writing needs to be performed using the MMIO space protocol.

Definition at line 51 of file vbus_types.h.

◆ l4vbus_resource_type_t

Description of vbus resource types.

Enumerator
L4VBUS_RESOURCE_INVALID 

Invalid type.

L4VBUS_RESOURCE_IRQ 

Interrupt resource.

L4VBUS_RESOURCE_MEM 

I/O memory resource.

L4VBUS_RESOURCE_PORT 

I/O port resource (x86 only)

L4VBUS_RESOURCE_BUS 

Bus resource.

L4VBUS_RESOURCE_GPIO 

Gpio resource.

L4VBUS_RESOURCE_DMA_DOMAIN 

DMA domain.

L4VBUS_RESOURCE_MAX 

Maximum resource id.

Definition at line 39 of file vbus_types.h.