L4Re Operating System Framework
Interface and Usage Documentation
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
mmio_space
Go to the documentation of this file.
1// -*- Mode: C++ -*-
2// vim:ft=cpp
3/*
4 * Copyright (C) 2017-2018, 2022, 2024 Kernkonzept GmbH.
5 * Author(s): Sarah Hoffmann <sarah.hoffmann@kernkonzept.com>
6 *
7 * License: see LICENSE.spdx (in this directory or the directories above)
8 */
13#pragma once
14
15#include <l4/re/protocols.h>
16#include <l4/sys/capability>
17#include <l4/sys/cxx/ipc_types>
18#include <l4/sys/cxx/ipc_iface>
19
20namespace L4Re
21{
22
46: public L4::Kobject_t<Mmio_space, L4::Kobject, L4RE_PROTO_MMIO_SPACE>
47{
50 {
51 Wd_8bit = 0,
52 Wd_16bit = 1,
53 Wd_32bit = 2,
54 Wd_64bit = 3
55 };
56
59
74 L4_INLINE_RPC(long, mmio_read, (Addr addr, char width, l4_uint64_t *value));
75
90 L4_INLINE_RPC(long, mmio_write, (Addr addr, char width, l4_uint64_t value));
91
93};
94
95}
L4::Cap related definitions.
Helper class to create an L4Re interface class that is derived from a single base class.
Definition __typeinfo.h:750
unsigned long long l4_uint64_t
Unsigned 64bit value.
Definition l4int.h:31
#define L4_EXPORT
Attribute to mark functions, variables, and data types as being exported from a library.
Definition compiler.h:210
Interface Definition Language.
#define L4_INLINE_RPC(res, name, args, attr...)
Define an inline RPC call (type and callable).
Definition ipc_iface:476
L4Re C++ Interfaces.
Definition cmd_control:14
L4Re Protocol Constants (C version)
Interface for memory-like address space accessible via IPC.
Definition mmio_space:47
l4_uint64_t Addr
Device address.
Definition mmio_space:58
Access_width
Actual size of the value to read or write.
Definition mmio_space:50
Standard list of RPCs of an interface.
Definition __typeinfo.h:428