Commit Graph

1171 Commits

Author SHA1 Message Date
Christian Prochaska
621b579023 base-foc: fix 'core' build for Arndale
Fixes #671.
2013-02-26 12:56:44 +01:00
Martin Stein
571f8fb2f3 omap_fb_drv: use usleep in 'Timer_delayer'
fix #670
2013-02-25 22:14:22 +01:00
Alexander Boettcher
430d4064b8 acpi: free mapping of rsdp before using rsdt/xsdt
Fix #635
2013-02-25 22:14:22 +01:00
Norman Feske
57b0c4dd52 demo: Avoid debug message in demo/src/lib/mini_c
The "strncpy - not implemented" message appeared on the use of libpng.
Even though it did not cause trouble, spilling the log with such
easy-to-fix issues should better be avoided.
2013-02-25 22:14:22 +01:00
Norman Feske
134f54a602 noux_tool_chain_nova: Don't restrict to Fiasco.OC
Thanks to @alexab's recent work on base-nova and the NOVA kernel, the
test is expected to run successfully on NOVA too.
2013-02-25 22:14:22 +01:00
Norman Feske
4fbd74f3aa nova: Support upgrading kernel via 'make prepare' 2013-02-25 22:14:22 +01:00
Norman Feske
fb3933faf3 nova: use bender by default
Bender fixes the serial output on modern PC hardware. Prior this patch,
it was used only when combined with pulsar. Now, we also use it when
booting via GRUB.
2013-02-25 22:14:22 +01:00
Alexander Boettcher
0ac6be3c70 nova: fix boot modules and command line bootstrap
Allocate ever an extra page behind the commandline pointer. If it turns out
that this page is unused, because commandline was short enough, unmap the
memory and put the virtual and physical regions back to the allocator.

Fix #664
2013-02-25 22:14:21 +01:00
Josef Söntgen
323ab39582 libports: add iconv-1.14
Fixes #669
2013-02-25 22:14:21 +01:00
Josef Söntgen
f3864f673b libports: add curl-7.29.0
For now the port is x86_* only because it depends on libcrypto which
is currently not available (as in tested) on arm.

Fixes #669
2013-02-25 22:14:21 +01:00
Josef Söntgen
814c6fc9d5 libports: add libssh-0.5.4
Fixes #669
2013-02-25 22:14:21 +01:00
Josef Söntgen
15dc2f3642 libports: add missing import-libcrypto.mk
Fixes #669
2013-02-25 22:14:21 +01:00
Christian Prochaska
a99193ad90 Rework the internal lock interface
With this patch, the 'futex' syscall gets used for blocking and unblocking
of threads in the Linux-specific lock implementation.

The 'Native_thread_id' type, which was previously used in the
lock-internal 'Applicant' class to identify a thread to be woken up,
was not suitable anymore for implementing this change. With this patch,
the 'Thread_base*' type gets used instead, which also has the positive
effect of making the public 'cancelable_lock.h' header file
platform-independent.

Fixes #646.
2013-02-25 22:14:21 +01:00
Norman Feske
7fef0ba931 base: Increase stack size of signal thread
On foc_pbxa9, the stack size did not suffice within core.
2013-02-25 16:45:50 +01:00
Norman Feske
4828a2daf2 ports-foc: Adaptation to Fiasco.OC rev 47 2013-02-25 16:45:50 +01:00
Alexander Boettcher
b4805af5bc nova: update kernel revision to r2
Fix #667
2013-02-25 16:45:50 +01:00
Alexander Boettcher
801d09f166 nova: revoke set portal id right
Revoke the right to set the portal id (aka label) when it is not needed
anymore. Otherwise everybody in the system having a mapping of the portal can
reset the label to something we don't expect.

Issue #667
2013-02-25 16:45:50 +01:00
Alexander Boettcher
46447d531e nova: add syscall pt_ctrl bindings
Issue #667
2013-02-25 16:45:49 +01:00
Christian Prochaska
2664afbd7d Remove context area from physical RAM allocator
In base-fiasco, base-foc and base-pistachio, physical memory gets mapped
1:1 to core virtual memory. When the 'Ram_session_component' allocates
physical memory for a client, it zeroes out the corresponding area in
core's virtual address space and then maps the area to the client. If this
area overlaps with core's virtual thread context area (usually at
0x40000000-0x4fffffff), the stack of one or more core threads can get
overwritten.

To avoid this problem, with this patch, the thread context area gets
removed from the physical RAM allocator on these platforms.

Fixes #660.
2013-02-25 16:45:49 +01:00
Alexander Boettcher
439315d918 timer: Don't set default cap as custom cap
Without the patch the signal cap was ever transferred to the timer session
when a usleep/msleep was called, even when unneeded. On base-nova this
causes the allocation of new capability indexes which are not freed up.
So the timer service run quickly out of indexes and get out of order...

Related to issue #1
2013-02-25 16:45:49 +01:00
Norman Feske
26e8e0ebdd Add the 'cxx' lib in base.mk for 64-bit Linux
This is a follow-up fix for fae63f4fa9.
Thanks to Christian Prochaska for the patch.
2013-02-25 16:45:49 +01:00
Torsten Hilbrich
ab89304ffd base-linux: Don't busywait if lx_pollpid returns 0
This happened when I killed one of the genode clients which was
tracked via an expception_handler. In this case the wait4 syscall
returned 0 and the for(;;) was looped eternally. This caused an
100% CPU utilization for the core binary.
2013-02-25 16:45:49 +01:00
Torsten Hilbrich
257cf4800d Fixed some unused parameters warnings
They cause problems when using -Werror in your compilation.
2013-02-25 16:45:49 +01:00
Sebastian Sumpf
6ef3f0f153 usb: Move driver into library
This raised the opportunity to structure the library more cleanly for each
supported platform.
2013-02-25 16:45:49 +01:00
Sebastian Sumpf
ebc76fc13b foc: SVN revision r47 2013-02-25 16:45:49 +01:00
Sebastian Sumpf
e901bca416 usb: Arndale EHCI controller support 2013-02-25 16:45:48 +01:00
Sebastian Sumpf
79949bb338 foc: Add 'uboot' spec to Arndale 2013-02-25 16:45:48 +01:00
Sebastian Sumpf
f9ba60e501 foc: Make context area configurable in core
Make 'context_area_virtual_base' platform configurable. On Arndale, we
need to move the context area to a location that does not interfere with
the address range of physical memory.
2013-02-25 16:45:48 +01:00
Sebastian Sumpf
6e034efca4 foc: Use L2-cache synchronization calls
Replace L1 cache clean operations with L2 versions.
2013-02-25 16:45:48 +01:00
Sebastian Sumpf
f3ba58059a foc: Arndale kernel configuration 2013-02-25 16:45:48 +01:00
Sebastian Sumpf
b10d6deb37 foc: Change core's base address 2013-02-25 16:45:48 +01:00
Sebastian Sumpf
7389e364fa Arndale: Build uImage, kernel, bootstrap 2013-02-25 16:45:48 +01:00
Sebastian Sumpf
805d5050f7 base-foc: Generate u-boot image if 'uboot' SPEC is set 2013-02-25 16:45:48 +01:00
Sebastian Sumpf
554876ceee foc_arndale: Added 'create_buildir' support 2013-02-25 16:45:47 +01:00
Sebastian Sumpf
fe13cd2938 foc: SVN revision r42 2013-02-25 16:45:47 +01:00
Sebastian Sumpf
0ef936a1a0 foc: Use git for contrib preparation
Download Fiasco.OC/L4RE from our 'GitHub' fork. Deleted all patches.
2013-02-25 16:45:47 +01:00
Norman Feske
a61bd71a4f Terminal multiplexer
The new terminal_mux server is able to provide multiple terminal
sessions over one terminal-client session. The user can switch
between the different sessions using the keyboard shortcut C-y,
which brings up an ncurses-based menu.
2013-02-25 16:45:47 +01:00
Norman Feske
97b27ee62f ncurses: Add vt102 to builtin termcaps 2013-02-22 20:28:28 +01:00
Norman Feske
1009d00168 libc: Handle dup2 with two equal arguments 2013-02-22 20:28:28 +01:00
Norman Feske
fbd4b5f6df libc_terminal: Support for dup2 and TIOCGWINSZ 2013-02-22 20:28:28 +01:00
Norman Feske
d1c2a7126a terminal: Generalize character-screen code
This patch moves the further reusable parts of the terminal into public
header files. It also slightly tweaks the color table to give all colors
a similar brightness level.
2013-02-22 20:28:28 +01:00
Martin Stein
438b8be2fa base-hw: destroy signal contexts, generic signal.h
fix #641
2013-02-22 20:28:28 +01:00
Martin Stein
0f8803245a base: make signal framework usable for base-hw
ref #641
2013-02-22 20:28:28 +01:00
Alexander Boettcher
b35484b8b0 nova: enable iommu in kernel by default 2013-02-22 20:28:27 +01:00
Alexander Boettcher
5f90b93f80 ahci: adjust run script to run with new pci_drv 2013-02-22 20:28:27 +01:00
Alexander Boettcher
554ab8372f usb_hid: adjust run script to run with new pci_drv 2013-02-22 20:28:27 +01:00
Alexander Boettcher
ffeb4f5816 oss: adjust run script to run with new pci drv 2013-02-22 20:28:27 +01:00
Alexander Boettcher
7e7fa81c8f acpi: reserve 2MB for ACPI and rest is for PCI_DRV 2013-02-22 20:28:27 +01:00
Alexander Boettcher
6d25c735d2 usb: use pci_drv on x86 to allocate dma memory 2013-02-22 20:28:27 +01:00
Alexander Boettcher
5a067a101a dde_linux: use pci_drv with class code/mask 2013-02-22 20:28:27 +01:00