1.1 --- a/idl/dataspace.idl Tue May 18 00:54:07 2021 +0200
1.2 +++ b/idl/dataspace.idl Thu May 20 00:01:15 2021 +0200
1.3 @@ -9,7 +9,7 @@
1.4 /* Map memory within a dataspace. */
1.5
1.6 [opcode(0)] void map(in offset_t offset, in address_t hot_spot,
1.7 - in flags_t flags, out fpage region);
1.8 + in map_flags_t flags, out fpage region);
1.9
1.10 /* Clear a dataspace. */
1.11
1.12 @@ -17,7 +17,7 @@
1.13
1.14 /* Obtain statistics about a dataspace. */
1.15
1.16 - [opcode(2)] void info(out offset_t size, out flags_t flags);
1.17 + [opcode(2)] void info(out offset_t size, out map_flags_t flags);
1.18
1.19 /* Copy data between dataspaces. */
1.20
2.1 --- a/idl/notification.idl Tue May 18 00:54:07 2021 +0200
2.2 +++ b/idl/notification.idl Thu May 20 00:01:15 2021 +0200
2.3 @@ -1,10 +1,10 @@
2.4 -#include <systypes/base.h> /* flags_t */
2.5 +#include <systypes/base.h> /* notify_flags_t */
2.6
2.7 interface Notification
2.8 {
2.9 /* Subscribe to events. */
2.10
2.11 - [opcode(23)] void subscribe(in flags_t flags, out cap irq);
2.12 + [opcode(23)] void subscribe(in notify_flags_t flags, out cap irq);
2.13
2.14 /* Unsubscribe from events. */
2.15
3.1 --- a/idl/region_mapper.idl Tue May 18 00:54:07 2021 +0200
3.2 +++ b/idl/region_mapper.idl Thu May 20 00:01:15 2021 +0200
3.3 @@ -10,27 +10,27 @@
3.4 address to search for a suitable address for the region. */
3.5
3.6 [opcode(0)] void attach(inout address_t start, in offset_t size,
3.7 - in flags_t flags, in cap ds,
3.8 + in map_flags_t flags, in cap ds,
3.9 in address_t offset, in unsigned char align);
3.10
3.11 /* Detach memory from the task, searching from the given address for a region
3.12 of the given size. Return the start address, region size and dataspace. */
3.13
3.14 [opcode(1)] void detach(in address_t addr, in offset_t size,
3.15 - in flags_t flags, out address_t start,
3.16 + in map_flags_t flags, out address_t start,
3.17 out offset_t rsize, out cap ds);
3.18
3.19 /* Find a region starting from the given address and having the given size.
3.20 Return the start address, region size and dataspace. */
3.21
3.22 [opcode(2)] void find(inout address_t addr, inout offset_t size,
3.23 - out flags_t flags, out address_t offset,
3.24 + out map_flags_t flags, out address_t offset,
3.25 out cap ds);
3.26
3.27 /* Reserve an area in the region map. */
3.28
3.29 [opcode(3)] void reserve_area(inout address_t start, in offset_t size,
3.30 - in flags_t flags, in unsigned char align);
3.31 + in map_flags_t flags, in unsigned char align);
3.32
3.33 /* Free (or unreserve) an area in the region map. */
3.34
4.1 --- a/include/systypes/base.h Tue May 18 00:54:07 2021 +0200
4.2 +++ b/include/systypes/base.h Thu May 20 00:01:15 2021 +0200
4.3 @@ -27,14 +27,31 @@
4.4
4.5 EXTERN_C_BEGIN
4.6
4.7 -/* See: pkg/l4re-core/l4sys/include/l4int.h */
4.8 +/* unsigned long is a 64-bit type.
4.9 + See: pkg/l4re-core/l4sys/include/l4int.h */
4.10
4.11 /* Types for file access and IPC operations. */
4.12
4.13 -typedef unsigned long flags_t; /* 64-bit */
4.14 -typedef unsigned long offset_t; /* 64-bit */
4.15 +typedef unsigned long flags_t;
4.16 +typedef unsigned long offset_t;
4.17 typedef l4_addr_t address_t; /* unsigned long */
4.18
4.19 +/* Dataspace mapping flags.
4.20 + See: pkg/l4re-core/l4re_c/include/dataspace.h */
4.21 +
4.22 +typedef unsigned long map_flags_t; /* 64-bit */
4.23 +
4.24 +/* Types and values for notification. */
4.25 +
4.26 +typedef unsigned long notify_flags_t;
4.27 +
4.28 +enum notify_flags
4.29 +{
4.30 + NOTIFY_CONTENT_AVAILABLE = 1,
4.31 + NOTIFY_SPACE_AVAILABLE = 2,
4.32 + NOTIFY_PEER_CLOSED = 4
4.33 +};
4.34 +
4.35 /* Equivalent types are defined in sys/types.h typically. In newlib, they are
4.36 defined in sys/_types.h if not defined elsewhere (such as in
4.37 machine/_types.h). */