L4Re - L4 Runtime Environment
vbus_types.h
Go to the documentation of this file.
1 /*
2  * (c) 2009 Adam Lackorzynski <adam@os.inf.tu-dresden.de>,
3  * Alexander Warg <warg@os.inf.tu-dresden.de>
4  * economic rights: Technische Universit├Ąt Dresden (Germany)
5  *
6  * This file is part of TUD:OS and distributed under the terms of the
7  * GNU General Public License 2.
8  * Please see the COPYING-GPL-2 file for details.
9  */
15 #pragma once
16 
17 #include <l4/sys/types.h>
18 
19 typedef l4_mword_t l4vbus_device_handle_t;
20 typedef l4_addr_t l4vbus_paddr_t;
21 
23 typedef struct {
29  l4vbus_paddr_t start;
31  l4vbus_paddr_t end;
33  l4vbus_device_handle_t provider;
37 
48 };
49 
50 enum l4vbus_consts_t {
51  L4VBUS_DEV_NAME_LEN = 64,
52  L4VBUS_MAX_DEPTH = 100,
53 };
54 
56 typedef struct {
60  char name[L4VBUS_DEV_NAME_LEN];
62  unsigned num_resources;
64  unsigned flags;
66 
67 enum l4vbus_device_flags_t {
68  L4VBUS_DEVICE_F_CHILDREN = 0x10,
69 };
Gpio resource.
Definition: vbus_types.h:45
l4_uint32_t type
Bitfield of supported sub-interfaces, see l4vbus_iface_type_t.
Definition: vbus_types.h:58
unsigned short int l4_uint16_t
Unsigned 16bit value.
Definition: l4int.h:38
signed long l4_mword_t
Signed machine word.
Definition: l4int.h:49
Common L4 ABI Data Types.
l4_uint32_t id
Resource ID (4 bytes), usually a 4 letter ASCII name is used.
Definition: vbus_types.h:35
Bus resource.
Definition: vbus_types.h:44
unsigned flags
Flags, see l4vbus_device_flags_t.
Definition: vbus_types.h:64
Interrupt resource.
Definition: vbus_types.h:41
Description of a single vbus resource.
Definition: vbus_types.h:23
l4vbus_paddr_t end
End of resource range (inclusive)
Definition: vbus_types.h:31
l4vbus_device_handle_t provider
Device handle of the provider of the resource.
Definition: vbus_types.h:33
I/O memory resource.
Definition: vbus_types.h:42
Detailed information about a vbus device.
Definition: vbus_types.h:56
l4vbus_resource_type_t
Description of vbus resource types.
Definition: vbus_types.h:39
unsigned num_resources
Number of resources for this device.
Definition: vbus_types.h:62
l4_uint16_t flags
Flags.
Definition: vbus_types.h:27
l4vbus_paddr_t start
Start of resource range.
Definition: vbus_types.h:29
Maximum resource id.
Definition: vbus_types.h:47
I/O port resource (x86 only)
Definition: vbus_types.h:43
unsigned long l4_addr_t
Address type.
Definition: l4int.h:45
Invalid type.
Definition: vbus_types.h:40
unsigned int l4_uint32_t
Unsigned 32bit value.
Definition: l4int.h:40
l4_uint16_t type
Resource type, see l4vbus_resource_type_t.
Definition: vbus_types.h:25