diff --git a/repos/base-sel4/patches/root_cnode.patch b/repos/base-sel4/patches/root_cnode.patch new file mode 100644 index 0000000000..e3229038e6 --- /dev/null +++ b/repos/base-sel4/patches/root_cnode.patch @@ -0,0 +1,11 @@ +--- src/kernel/sel4/include/plat/pc99/autoconf.h ++++ src/kernel/sel4/include/plat/pc99/autoconf.h +@@ -77,7 +77,7 @@ + #define CONFIG_USER_OPTIMISATION_O2 1 + #define CONFIG_LIB_CPIO 1 + #define CONFIG_RETYPE_FAN_OUT_LIMIT 256 +-#define CONFIG_ROOT_CNODE_SIZE_BITS 12 ++#define CONFIG_ROOT_CNODE_SIZE_BITS 15 + #define CONFIG_NUM_PRIORITIES 256 + #define CONFIG_TESTPRINTER_REGEX ".*" + #define CONFIG_APP_SEL4TEST 1 diff --git a/repos/base-sel4/ports/sel4.hash b/repos/base-sel4/ports/sel4.hash index 0b780e9759..bb88136d80 100644 --- a/repos/base-sel4/ports/sel4.hash +++ b/repos/base-sel4/ports/sel4.hash @@ -1 +1 @@ -805dca7fb390b8803114548e3c3175fced0c4d58 +4a35ff120456dea8de73ace7d9af53ace91da540 diff --git a/repos/base-sel4/src/core/include/core_cspace.h b/repos/base-sel4/src/core/include/core_cspace.h index f9aee66f13..5de78bc2ba 100644 --- a/repos/base-sel4/src/core/include/core_cspace.h +++ b/repos/base-sel4/src/core/include/core_cspace.h @@ -26,7 +26,8 @@ class Genode::Core_cspace /* CNode dimensions */ enum { NUM_TOP_SEL_LOG2 = 12UL, - NUM_CORE_SEL_LOG2 = 14UL, + /* CONFIG_ROOT_CNODE_SIZE_BITS from seL4 autoconf.h */ + NUM_CORE_SEL_LOG2 = CONFIG_ROOT_CNODE_SIZE_BITS + 1, NUM_PHYS_SEL_LOG2 = 20UL, NUM_CORE_PAD_SEL_LOG2 = 32UL - NUM_TOP_SEL_LOG2 - NUM_CORE_SEL_LOG2, @@ -53,5 +54,4 @@ class Genode::Core_cspace enum { CORE_VM_ID = 1 }; }; - #endif /* _CORE__INCLUDE__CORE_CSPACE_H_ */