sel4: update to version 9.0.0
This commit is contained in:
parent
178efe9c97
commit
2278104a8d
|
@ -31,12 +31,12 @@
|
||||||
#endif
|
#endif
|
||||||
--- src/kernel/sel4/include/plat/pc99/plat/64/plat_mode/machine/hardware.h
|
--- src/kernel/sel4/include/plat/pc99/plat/64/plat_mode/machine/hardware.h
|
||||||
+++ src/kernel/sel4/include/plat/pc99/plat/64/plat_mode/machine/hardware.h
|
+++ src/kernel/sel4/include/plat/pc99/plat/64/plat_mode/machine/hardware.h
|
||||||
@@ -23,7 +23,7 @@
|
@@ -19,7 +19,7 @@
|
||||||
* because they need to defined like this in linker.lds
|
* because they need to defined like this in linker.lds
|
||||||
*/
|
*/
|
||||||
#define PADDR_BASE 0x00000000ul
|
#define PADDR_BASE UL_CONST(0x00000000)
|
||||||
-#define PADDR_LOAD 0x00100000ul
|
-#define PADDR_LOAD UL_CONST(0x00100000)
|
||||||
+#define PADDR_LOAD 0x00200000ul
|
+#define PADDR_LOAD UL_CONST(0x00200000)
|
||||||
/* our kernel window is 2^39 bits (2^9 * 1gb) and the virtual address
|
/* our kernel window is 2^39 bits (2^9 * 1gb) and the virtual address
|
||||||
* range is 48 bits. Therefore our base is 2^48 - 2^39
|
* range is 48 bits. Therefore our base is 2^48 - 2^39
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
f3cba0b8aeccaf78be076894186da3503a7e9fd1
|
d006609b01c27aa7f016b2eb8740b1afb3587354
|
||||||
|
|
|
@ -3,8 +3,8 @@ VERSION := git
|
||||||
DOWNLOADS := sel4.git
|
DOWNLOADS := sel4.git
|
||||||
|
|
||||||
URL(sel4) := https://github.com/seL4/seL4.git
|
URL(sel4) := https://github.com/seL4/seL4.git
|
||||||
# master branch, version 7.0 + already merged multiboot2 and uefi support
|
# master branch, version 9.0
|
||||||
REV(sel4) := a2d974f47f876bb71950ef3a7cb8f695fa4f7d80
|
REV(sel4) := f58d22af8b6ce8bfccaa4bac393a31cad670e7c1
|
||||||
DIR(sel4) := src/kernel/sel4
|
DIR(sel4) := src/kernel/sel4
|
||||||
|
|
||||||
$(call check_tool,python)
|
$(call check_tool,python)
|
||||||
|
|
|
@ -66,8 +66,8 @@ void Genode::Thread_info::init_tcb(Platform &platform,
|
||||||
create<Tcb_kobj>(service, platform.core_cnode().sel(), tcb_sel);
|
create<Tcb_kobj>(service, platform.core_cnode().sel(), tcb_sel);
|
||||||
|
|
||||||
/* set scheduling priority */
|
/* set scheduling priority */
|
||||||
seL4_TCB_SetMCPriority(tcb_sel.value(), prio);
|
seL4_TCB_SetMCPriority(tcb_sel.value(), Cnode_index(seL4_CapInitThreadTCB).value(), prio);
|
||||||
seL4_TCB_SetPriority(tcb_sel.value(), prio);
|
seL4_TCB_SetPriority(tcb_sel.value(), Cnode_index(seL4_CapInitThreadTCB).value(), prio);
|
||||||
|
|
||||||
/* place at cpu */
|
/* place at cpu */
|
||||||
affinity_sel4_thread(tcb_sel, cpu);
|
affinity_sel4_thread(tcb_sel, cpu);
|
||||||
|
|
|
@ -378,15 +378,6 @@ void Platform::_init_rom_modules()
|
||||||
Genode::Xml_generator xml(reinterpret_cast<char *>(virt_addr),
|
Genode::Xml_generator xml(reinterpret_cast<char *>(virt_addr),
|
||||||
rom_size, rom_name, [&] ()
|
rom_size, rom_name, [&] ()
|
||||||
{
|
{
|
||||||
xml.node("hardware", [&] () {
|
|
||||||
xml.node("features", [&] () {
|
|
||||||
xml.attribute("svm", false);
|
|
||||||
xml.attribute("vmx", false);
|
|
||||||
});
|
|
||||||
xml.node("tsc", [&] () {
|
|
||||||
xml.attribute("freq_khz" , bi.archInfo * 1000UL);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
if (!bi.extraLen)
|
if (!bi.extraLen)
|
||||||
return;
|
return;
|
||||||
|
@ -402,6 +393,28 @@ void Platform::_init_rom_modules()
|
||||||
next <= last && element->id != SEL4_BOOTINFO_HEADER_PADDING;
|
next <= last && element->id != SEL4_BOOTINFO_HEADER_PADDING;
|
||||||
element = next)
|
element = next)
|
||||||
{
|
{
|
||||||
|
if (element->id == SEL4_BOOTINFO_HEADER_X86_TSC_FREQ) {
|
||||||
|
struct tsc_freq {
|
||||||
|
uint32_t freq_mhz;
|
||||||
|
} __attribute__((packed));
|
||||||
|
if (sizeof(tsc_freq) + sizeof(*element) != element->len) {
|
||||||
|
error("unexpected tsc frequency format");
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
tsc_freq const * boot_freq = reinterpret_cast<tsc_freq const *>(reinterpret_cast<addr_t>(element) + sizeof(* element));
|
||||||
|
|
||||||
|
xml.node("hardware", [&] () {
|
||||||
|
xml.node("features", [&] () {
|
||||||
|
xml.attribute("svm", false);
|
||||||
|
xml.attribute("vmx", false);
|
||||||
|
});
|
||||||
|
xml.node("tsc", [&] () {
|
||||||
|
xml.attribute("freq_khz" , boot_freq->freq_mhz * 1000UL);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
if (element->id == SEL4_BOOTINFO_HEADER_X86_FRAMEBUFFER) {
|
if (element->id == SEL4_BOOTINFO_HEADER_X86_FRAMEBUFFER) {
|
||||||
struct mbi2_framebuffer {
|
struct mbi2_framebuffer {
|
||||||
uint64_t addr;
|
uint64_t addr;
|
||||||
|
|
Loading…
Reference in New Issue