mirror of
https://github.com/genodelabs/genode.git
synced 2025-01-21 03:55:04 +00:00
nova: update to r6 nova kernel branch
- adds general support for semaphore timeouts - fixes PCID feature (aka tagged TLB) seeen on Lenovo X201 Fixes #1211
This commit is contained in:
parent
6cb9559feb
commit
e70c13ce1f
@ -280,9 +280,9 @@ namespace Nova {
|
||||
|
||||
|
||||
ALWAYS_INLINE
|
||||
inline uint8_t sm_ctrl(unsigned sm, Sem_op op)
|
||||
inline uint8_t sm_ctrl(unsigned sm, Sem_op op, unsigned long long timeout = 0)
|
||||
{
|
||||
return syscall_0(NOVA_SM_CTRL, op, sm);
|
||||
return syscall_2(NOVA_SM_CTRL, op, sm, timeout >> 32, timeout);
|
||||
}
|
||||
|
||||
|
||||
|
@ -231,9 +231,10 @@ namespace Nova {
|
||||
|
||||
|
||||
ALWAYS_INLINE
|
||||
inline uint8_t sm_ctrl(mword_t sm, Sem_op op)
|
||||
inline uint8_t sm_ctrl(mword_t sm, Sem_op op, unsigned long long timeout = 0)
|
||||
{
|
||||
return syscall_0(NOVA_SM_CTRL, op, sm);
|
||||
return syscall_2(NOVA_SM_CTRL, op, sm, timeout >> 32,
|
||||
timeout & 0xFFFFFFFFULL);
|
||||
}
|
||||
|
||||
|
||||
|
@ -71,7 +71,7 @@ namespace Nova {
|
||||
enum Status
|
||||
{
|
||||
NOVA_OK = 0,
|
||||
NOVA_IPC_TIMEOUT = 1,
|
||||
NOVA_TIMEOUT = 1,
|
||||
NOVA_IPC_ABORT = 2,
|
||||
NOVA_INV_HYPERCALL = 3,
|
||||
NOVA_INV_SELECTOR = 4,
|
||||
|
@ -1 +1 @@
|
||||
fceaac7f0e0d711be17a2e7f9f4b5d396a4e2b63
|
||||
2876dd57fafcaf860278d38368e7ba9a551393ab
|
||||
|
@ -3,7 +3,8 @@ VERSION := git
|
||||
DOWNLOADS := nova.git
|
||||
|
||||
URL(nova) := https://github.com/alex-ab/NOVA.git
|
||||
REV(nova) := r5
|
||||
# r6 branch
|
||||
REV(nova) := f304d54b176ef7b1de9bd6fff6884e1444a0c116
|
||||
DIR(nova) := src/kernel/nova
|
||||
|
||||
PATCHES := $(wildcard $(REP_DIR)/patches/*.patch)
|
||||
|
@ -73,7 +73,7 @@ proc build_boot_image {binaries} {
|
||||
puts $fh "default 0"
|
||||
puts $fh "\ntitle Genode on NOVA"
|
||||
puts $fh " kernel /boot/bender"
|
||||
puts $fh " module /hypervisor iommu serial nopcid"
|
||||
puts $fh " module /hypervisor iommu serial"
|
||||
puts $fh " module /genode/core"
|
||||
puts $fh " module /genode/config"
|
||||
foreach binary $binaries {
|
||||
@ -89,7 +89,7 @@ proc build_boot_image {binaries} {
|
||||
#
|
||||
set fh [open "[run_dir]/config-52-54-00-12-34-56" "WRONLY CREAT TRUNC"]
|
||||
puts $fh " exec /boot/bender"
|
||||
puts $fh " load /hypervisor iommu serial nopcid"
|
||||
puts $fh " load /hypervisor iommu serial"
|
||||
puts $fh " load /genode/core"
|
||||
puts $fh " load /genode/config"
|
||||
foreach binary $binaries {
|
||||
|
@ -209,7 +209,7 @@ Platform::Platform() :
|
||||
{
|
||||
Hip *hip = (Hip *)__initial_sp;
|
||||
/* check for right API version */
|
||||
if (hip->api_version != 6)
|
||||
if (hip->api_version != 7)
|
||||
nova_die();
|
||||
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user