genode/base-foc/patches/sigma0_ioport.patch

17 lines
557 B
Diff

Index: l4/pkg/sigma0/server/src/ioports_x86.cc
===================================================================
--- l4/pkg/sigma0/server/src/ioports_x86.cc (revision 40)
+++ l4/pkg/sigma0/server/src/ioports_x86.cc (working copy)
@@ -39,8 +39,9 @@
size = l4_fpage_size(fp) + PORT_SHIFT;
unsigned long i = io_ports.alloc(Region::bs(port, 1UL << size, t));
- if (i == port)
+ if (i == port) {
a->snd_fpage(l4_iofpage(port >> PORT_SHIFT, size - PORT_SHIFT));
- else
+ a->tag = l4_msgtag(0, 0, 1, 0);
+ } else
a->error(L4_ENOMEM);
}