barrelfish
6 years agoXeon Phi Benchmarking and DMA
Reto Achermann [Sun, 22 Jun 2014 20:01:12 +0000]
Xeon Phi Benchmarking and DMA

Benchmark: Bugfixes in the benchmarking scenario

SMTP: bugfix in setting the SMTP entries

DMA: initial implementation and stubs for the DMA functionality.

6 years agoBugfix in the xeon phi driver: smpt entries not propperly set
Reto Achermann [Fri, 20 Jun 2014 20:55:42 +0000]
Bugfix in the xeon phi driver: smpt entries not propperly set

Some bugfixes in the benchmark.

6 years agoBenchmarking Fixes and refactorings.
Reto Achermann [Fri, 20 Jun 2014 13:21:01 +0000]
Benchmarking Fixes and refactorings.

6 years agoRemoved service.c from xeon_phi_test hakefile
Reto Achermann [Fri, 20 Jun 2014 07:38:29 +0000]
Removed service.c from xeon_phi_test hakefile

Reason: functionality moved into lirbary.

6 years agoFix: Benchmark Messaging Host<->Xeon Phi
Reto Achermann [Thu, 19 Jun 2014 20:43:57 +0000]
Fix: Benchmark Messaging Host<->Xeon Phi

6 years agoBugfix in benchmark.c
Reto Achermann [Thu, 19 Jun 2014 16:30:02 +0000]
Bugfix in benchmark.c

6 years agoMerge with master
Stefan Kaestle [Wed, 20 Aug 2014 21:23:24 +0000]
Merge with master

6 years agoCleanup
Stefan Kaestle [Wed, 20 Aug 2014 21:21:14 +0000]
Cleanup

6 years agoFix: make lib posixcompat compile in release mode
Stefan Kaestle [Thu, 19 Jun 2014 16:02:03 +0000]
Fix: make lib posixcompat compile in release mode

6 years agoFix: Added missing dependencies
Stefan Kaestle [Thu, 19 Jun 2014 15:55:56 +0000]
Fix: Added missing dependencies

6 years agoFix: unified signatures for fill function
Stefan Kaestle [Thu, 19 Jun 2014 15:54:42 +0000]
Fix: unified signatures for fill function

6 years agoReplaced weird characters
Stefan Kaestle [Thu, 19 Jun 2014 14:13:13 +0000]
Replaced weird characters

6 years agoVirtIO and Benchmark: vrings are now working revides the buffer management to be...
Reto Achermann [Thu, 19 Jun 2014 12:33:27 +0000]
VirtIO and Benchmark: vrings are now working revides the buffer management to be able to issue header buffer addapted the vblock driver to deal with header buffers

Benchmark
adapted the xeon_phi_test to an early version of the benchmark test

6 years agoVirtio Implementation: Handling of VirtQueue enq/deq
Reto Achermann [Wed, 18 Jun 2014 16:10:08 +0000]
Virtio Implementation: Handling of VirtQueue enq/deq

6 years agoVirtIO library
Reto Achermann [Tue, 17 Jun 2014 18:51:59 +0000]
VirtIO library

Added guest to virt translations and buffer management on the host side.

6 years agoBig refactoring of libvirtio
Reto Achermann [Tue, 17 Jun 2014 16:10:12 +0000]
Big refactoring of libvirtio

use of the same structs with small differences on host and guest side.

6 years agoAdded comments to the functions.
Reto Achermann [Mon, 16 Jun 2014 19:02:03 +0000]
Added comments to the functions.

6 years agoVirtIO: Adapted the device initialization process to make it work.
Reto Achermann [Mon, 16 Jun 2014 14:26:10 +0000]
VirtIO: Adapted the device initialization process to make it work.

- Changes in the notification protocol between host and guest
- Addition of information to serve the device intitalization (host side)
- introduced a yield when waiting for the ready bit.
- device specific setup is now handled during device_open

6 years agoVirtIO:
Reto Achermann [Sun, 15 Jun 2014 20:56:20 +0000]
VirtIO:

extended library to distinguish between host and guest
added flounder / xeon phi channels for opening devices etc

Block Driver
Parts of an initiali implementation
Device initialization

6 years agoVirtIO
Reto Achermann [Fri, 13 Jun 2014 12:36:49 +0000]
VirtIO

- Addition of block device specific files in the VirtIO Library
- Changes to the block devices Mackerel specification
- Implementation of dequeue / enqueue of Virtqueues

6 years agoBugfixes Xeon Phi Driver startup - removed check for boot info - added initialization...
Reto Achermann [Thu, 12 Jun 2014 16:08:19 +0000]
Bugfixes Xeon Phi Driver startup - removed check for boot info - added initialization of vfs - added core offset when starting the second xeon phi driver - changed menu.lst.k1om to boot on multiple cores instead on threads.

VirtIO
added buffer allocation and buffer management functions
added handling of buffer lists for enqueuing into descriptor ring
additional error numbers for VirtIO

6 years agorenamed initialization functions of virtio devices to open instead of init.
Reto Achermann [Thu, 12 Jun 2014 08:48:54 +0000]
renamed initialization functions of virtio devices to open instead of init.

6 years agoRefactoring of libvirtio
Reto Achermann [Thu, 12 Jun 2014 08:21:20 +0000]
Refactoring of libvirtio

Renaming and merging of some files in libvirtio.

6 years agoAdapted the xeon_phi messaging library to handle multiple cards
Reto Achermann [Thu, 12 Jun 2014 08:05:37 +0000]
Adapted the xeon_phi messaging library to handle multiple cards

Extended the interface with xeon_phi_id parameter to specify to which
xeon_phi driver one wants to talk to.

6 years agoXeon Phi boot process:
Reto Achermann [Wed, 11 Jun 2014 17:27:16 +0000]
Xeon Phi boot process:

switched from the bootmodules to the vfs way in oder to be able to start
the driver on other cores than BSP.

6 years agoFixed bug in Kaluga when starting the same driver multiple times
Reto Achermann [Wed, 11 Jun 2014 14:50:23 +0000]
Fixed bug in Kaluga when starting the same driver multiple times

Increase of the argc value of module info was stored. This introduced a
NULL hole in the argv array and spawn did not get all the arguments.

6 years agoKaluga: allowed only to start the xeon_phi driver twice, added a coreoffset for the...
Reto Achermann [Wed, 11 Jun 2014 13:28:00 +0000]
Kaluga: allowed only to start the xeon_phi driver twice, added a coreoffset for the second driver

6 years agoAdapted the xeon phi driver to deal with arguments.
Reto Achermann [Wed, 11 Jun 2014 12:38:40 +0000]
Adapted the xeon phi driver to deal with arguments.

6 years agoAdapted the driver startup of kaluga to supply the pci address aswell. Removed the...
Reto Achermann [Wed, 11 Jun 2014 12:36:25 +0000]
Adapted the driver startup of kaluga to supply the pci address aswell. Removed the restriction that a driver can only be started once.

6 years agoTrying out of UMP channel
Reto Achermann [Wed, 11 Jun 2014 11:33:37 +0000]
Trying out of UMP channel

6 years agoVirtIO and Xeon Phi Messaging
Reto Achermann [Tue, 10 Jun 2014 15:49:35 +0000]
VirtIO and Xeon Phi Messaging

Added a new message type for the xeon phi messaging subsystem to handle
addition of new ring buffer descriptors.

Extended the implementation of VirtIO. Refactoring of the internal and
external headers to match data encapsulation.

6 years agoEdits in the xeon_phi_test domains
Reto Achermann [Mon, 9 Jun 2014 20:36:50 +0000]
Edits in the xeon_phi_test domains

6 years agoSome initial implementations of VirtIO - libvirtio - driver stubs
Reto Achermann [Mon, 9 Jun 2014 20:36:18 +0000]
Some initial implementations of VirtIO - libvirtio - driver stubs

6 years agoFixed adding offset to host side cap manager.
Reto Achermann [Fri, 6 Jun 2014 12:57:15 +0000]
Fixed adding offset to host side cap manager.

6 years agoBugfix in message handling of xeon phi drivers and library - wrong cmd for open comma...
Reto Achermann [Fri, 6 Jun 2014 12:33:38 +0000]
Bugfix in message handling of xeon phi drivers and library - wrong cmd for open commands - no callback for open commands

6 years agoRemoved the test send messaging from the xeon phi driver to a separate domain.
Reto Achermann [Fri, 6 Jun 2014 12:05:13 +0000]
Removed the test send messaging from the xeon phi driver to a separate domain.

Implemented the flounder interface of the messaging requests between the
xeon phi driver and the domains.

6 years agoRevised the initialization process of the xeon phi to avoid mapping the entire aperture.
Reto Achermann [Fri, 6 Jun 2014 09:51:04 +0000]
Revised the initialization process of the xeon phi to avoid mapping the entire aperture.

Introduces cap manager also for the aperture memory to serve the msg
OPEN commands.

6 years agoMoved the messaging handling into a library
Reto Achermann [Thu, 5 Jun 2014 12:31:35 +0000]
Moved the messaging handling into a library

- renamed the library folder
- added: xeon_phi_messaging library with it client pendent

6 years agoBugfixes in Xeon Phi message handling
Reto Achermann [Wed, 4 Jun 2014 19:58:55 +0000]
Bugfixes in Xeon Phi message handling

The message handling has been extended by the spawning and channel
opening commands.

The test application has been adapted to listen to the flounder
interface.

6 years agoExtended the message handling
Reto Achermann [Wed, 4 Jun 2014 16:21:27 +0000]
Extended the message handling

- Support and recogintion of different message types
- handling of spawn requests

Refactoration of the debug outputs into debug.h

6 years agobugfixes
Reto Achermann [Wed, 4 Jun 2014 13:23:23 +0000]
bugfixes

6 years agoRewritten Messaging Bootstrap Host-Card
Reto Achermann [Wed, 4 Jun 2014 13:15:51 +0000]
Rewritten Messaging Bootstrap Host-Card

Adding of test domains on host and card side to test the implementeation

Adding of a new flounder interface to subscribe for new message channel
events.

6 years agoInitial version of the message handling implementation (meta part)
Reto Achermann [Tue, 3 Jun 2014 20:09:02 +0000]
Initial version of the message handling implementation (meta part)

6 years agoAdded: new debug output to the xeon phi driver for system memory management.
Reto Achermann [Tue, 3 Jun 2014 14:32:29 +0000]
Added: new debug output to the xeon phi driver for system memory management.

6 years agoExchange of base address for messaging bootstrap
Reto Achermann [Tue, 3 Jun 2014 14:24:10 +0000]
Exchange of base address for messaging bootstrap

When the host starts the Xeon Phi it writes the address of the messaging
frame into the bootparams and this address is passed to the xeon phi
cardside driver which contacts the host and uses this frame to establish
more messaging channels.

6 years agoChanged the device db to start the Xeon Phi driver on core 0 (otherwise it does not...
Reto Achermann [Tue, 3 Jun 2014 14:12:18 +0000]
Changed the device db to start the Xeon Phi driver on core 0 (otherwise it does not get the bootinfo)

6 years agoAdded K1OM architecture specific extensions that pass certain caps / values to the...
Reto Achermann [Tue, 3 Jun 2014 11:58:42 +0000]
Added K1OM architecture specific extensions that pass certain caps / values to the Xeon Phi manager (card side)

- Passing of cap for the MMIO space and the System Memory range
- passing of base address for the host messaging listener
- Removed IO cap

6 years agoAddition of a card-side Xeon Phi Manager
Reto Achermann [Tue, 3 Jun 2014 11:56:47 +0000]
Addition of a card-side Xeon Phi Manager

6 years agoRenamed weever_builder into weever_creator because hake ignores build* directories
Reto Achermann [Tue, 3 Jun 2014 11:55:58 +0000]
Renamed weever_builder into weever_creator because hake ignores build* directories

6 years agoAdapted xeon phi boot params and passing of cmd lines.
Reto Achermann [Mon, 2 Jun 2014 19:17:15 +0000]
Adapted xeon phi boot params and passing of cmd lines.

6 years agoPatches b03c1b through 3f00b5
Stefan Kaestle [Wed, 20 Aug 2014 20:00:51 +0000]
Patches b03c1b through 3f00b5

6 years agoCleanup
Stefan Kaestle [Wed, 20 Aug 2014 19:58:52 +0000]
Cleanup

6 years agoCleanup of boot messages in the xeon phi driver module.
Reto Achermann [Sat, 31 May 2014 15:39:04 +0000]
Cleanup of boot messages in the xeon phi driver module.

6 years agoBugfix in service init
Reto Achermann [Sat, 31 May 2014 15:34:34 +0000]
Bugfix in service init

Message handler accessed the xeon phi registers too early resulting in a
page fault.

6 years agoRenamed xloader to weever
Reto Achermann [Sat, 31 May 2014 14:55:10 +0000]
Renamed xloader to weever

6 years agoNew Xeon Phi bootloader
Reto Achermann [Fri, 30 May 2014 19:30:28 +0000]
New Xeon Phi bootloader

This version of the xeon phi bootloader assembles a bootable loader from
the compiled xloader and prepends a 1k mostly zero header to it with the
necessary fields filled with the signature and the size information.

6 years agoChanged the message handling of the xeon phi driver.
Reto Achermann [Sun, 25 May 2014 15:27:09 +0000]
Changed the message handling of the xeon phi driver.

6 years agoAdded bootcodes to the xeon phi boot protocol
Reto Achermann [Sun, 18 May 2014 15:04:48 +0000]
Added bootcodes to the xeon phi boot protocol

6 years agoAdapted symbolic targets to work with the barrelfish host.
Reto Achermann [Sun, 18 May 2014 14:24:54 +0000]
Adapted symbolic targets to work with the barrelfish host.

6 years agoAdded dependencies to various Hakefiles to make compilation work. Also fixed some...
Reto Achermann [Sun, 18 May 2014 14:24:13 +0000]
Added dependencies to various Hakefiles to make compilation work. Also fixed some ifdefs with the vmkit and the K1OM architecture.

6 years agoSKB: Enabling SKB simple for K1OM, Extended Buffers
Reto Achermann [Sun, 18 May 2014 14:22:58 +0000]
SKB: Enabling SKB simple for K1OM, Extended Buffers

When running the SKB on Babybel, the size of the buffer was too small to
receive the entire bridge programming plan, so the buffers are extended
on SKB service and client side with a common define to make sure the
buffers have matching size.

6 years agoExtended the size of the Base address in the page table entries to 48bits to make...
Reto Achermann [Sun, 18 May 2014 14:20:58 +0000]
Extended the size of the Base address in the page table entries to 48bits to make high addresses work. Extended the amount of reserved SLAB space in PMAP to be able to map more than 4G of memory.

6 years agoAdded some bug fixes to the Xeon Phi Driver
Reto Achermann [Sun, 18 May 2014 14:16:55 +0000]
Added some bug fixes to the Xeon Phi Driver

6 years agoSome additonal debug prints in the xeon phi driver
Reto Achermann [Sun, 4 May 2014 16:25:58 +0000]
Some additonal debug prints in the xeon phi driver

6 years agoSome bugfixes in the register definitons of the Xeon Phi.
Reto Achermann [Sat, 3 May 2014 21:25:57 +0000]
Some bugfixes in the register definitons of the Xeon Phi.

6 years agoXeon Phi Driver: adjusted the number of expected caps.
Reto Achermann [Fri, 2 May 2014 21:21:28 +0000]
Xeon Phi Driver: adjusted the number of expected caps.

6 years agoFixed: bug in PCI configuration.
Reto Achermann [Fri, 2 May 2014 21:18:34 +0000]
Fixed: bug in PCI configuration.

Checking of implementation of the membar should be done with the entire
register zero and not just the base address.

6 years agoAdded: hardcoded pci configuration for babybel.
Reto Achermann [Fri, 2 May 2014 12:59:56 +0000]
Added: hardcoded pci configuration for babybel.

6 years agoMerge with Arrakis branch
Stefan Kaestle [Wed, 20 Aug 2014 14:52:02 +0000]
Merge with Arrakis branch

6 years agoRevert "flounder: fixed UMP capability receive stub to properly call receive handler...
Simon Gerber [Thu, 20 Mar 2014 16:09:54 +0000]
Revert "flounder: fixed UMP capability receive stub to properly call receive handler under all circumstances."

As it turns out this wasn't a bug at all, I just didn't understand how UMP
transfers multiple caps.

This reverts commit
git: 65b4f2e4e08ed0b126eb8be03ac5bea8a63dc1b6
hg:  f633ef1624182427285b9445d40e0c485fd51ffa

6 years agoflounder: fixed UMP capability receive stub to properly call receive handler under...
Simon Gerber [Mon, 17 Mar 2014 12:31:28 +0000]
flounder: fixed UMP capability receive stub to properly call receive handler under all circumstances.

6 years agoAssert that connect callback function is set.
Gerd Zellweger [Sat, 21 Dec 2013 15:07:24 +0000]
Assert that connect callback function is set.

You can run into this beeing a problem when playing around with the build and
not defining for example UMP in flounderBackends but not in interconnectDrivers.
Having ifdefs in a struct can lead to ugly bugs in that case :-(.

6 years agoMake everything compile for 32bit.
Gerd Zellweger [Wed, 12 Mar 2014 09:15:35 +0000]
Make everything compile for 32bit.

Fixes mostly printf specifiers all over the source tree.

6 years agoadding a tag for release 2014-03-11
Simon Gerber [Tue, 11 Mar 2014 15:28:30 +0000]
adding a tag for release 2014-03-11

6 years agofixed missing perfcount_type in brie machine data.
Simon Gerber [Fri, 7 Mar 2014 15:31:42 +0000]
fixed missing perfcount_type in brie machine data.

6 years agoarm_molly: able to handle <=20 modules now.
Simon Gerber [Fri, 28 Feb 2014 14:11:20 +0000]
arm_molly: able to handle <=20 modules now.

6 years agoAdded missing modules in PANDABOARD_MODULES.
Simon Gerber [Fri, 28 Feb 2014 13:46:17 +0000]
Added missing modules in PANDABOARD_MODULES.

6 years agoharness: added bits necessary for pandaboard buildtest.
Simon Gerber [Thu, 27 Feb 2014 10:18:36 +0000]
harness: added bits necessary for pandaboard buildtest.

6 years agoFixed missing CPU_ARM5 in spawn_setup_vspace.
Simon Gerber [Wed, 26 Feb 2014 09:49:04 +0000]
Fixed missing CPU_ARM5 in spawn_setup_vspace.

6 years agoxscale: define __ARM_ARCH_5__.
Simon Gerber [Wed, 26 Feb 2014 09:48:41 +0000]
xscale: define __ARM_ARCH_5__.

6 years agoarmv5: Fixed wait_for_interrupt to work on qemu 0.14
Simon Gerber [Wed, 26 Feb 2014 09:48:25 +0000]
armv5: Fixed wait_for_interrupt to work on qemu 0.14

6 years agoRemoved offending utf-8 character in omap44xx_uart3 device file.
Simon Gerber [Wed, 26 Feb 2014 09:47:24 +0000]
Removed offending utf-8 character in omap44xx_uart3 device file.

6 years agoomap44xx: Implemented serial driver.
Simon Gerber [Tue, 25 Feb 2014 17:04:35 +0000]
omap44xx: Implemented serial driver.

6 years agoarm: added missing bits for ID cap creation.
Simon Gerber [Tue, 25 Feb 2014 17:02:02 +0000]
arm: added missing bits for ID cap creation.

6 years agoSplit CPU_ARM into CPU_ARM5 and CPU_ARM7
Simon Gerber [Tue, 25 Feb 2014 16:59:30 +0000]
Split CPU_ARM into CPU_ARM5 and CPU_ARM7

6 years agoMerge commit try 2
Reto Achermann [Wed, 30 Apr 2014 18:34:27 +0000]
Merge commit try 2

6 years agoChange fish_arm to new terminal API.
Simon Gerber [Mon, 24 Feb 2014 10:18:53 +0000]
Change fish_arm to new terminal API.

6 years agoDeduplicated armv7 paging code.
Simon Gerber [Tue, 18 Feb 2014 14:39:33 +0000]
Deduplicated armv7 paging code.

6 years agoFixed generic tlb flushing code to use generic pte size define.
Simon Gerber [Fri, 7 Feb 2014 14:06:16 +0000]
Fixed generic tlb flushing code to use generic pte size define.

6 years agoReplaced skb and ACPI with arrakis branch.
Reto Achermann [Wed, 30 Apr 2014 13:38:12 +0000]
Replaced skb and ACPI with arrakis branch.

6 years agoReplaced pci with arrakis branch
Reto Achermann [Wed, 30 Apr 2014 13:26:46 +0000]
Replaced pci with arrakis branch

6 years agoReverted and applied Simon's patch to solve the supercn problem.
Reto Achermann [Wed, 30 Apr 2014 13:02:53 +0000]
Reverted and applied Simon's patch to solve the supercn problem.

6 years agoadded entries to gitignore
Reto Achermann [Wed, 30 Apr 2014 12:33:50 +0000]
added entries to gitignore

6 years agoBugfix: Switching to other supercn cnode while in the loop.
Reto Achermann [Wed, 30 Apr 2014 08:45:04 +0000]
Bugfix: Switching to other supercn cnode while in the loop.

6 years agoAddition of a second supercn.
Reto Achermann [Tue, 29 Apr 2014 14:56:11 +0000]
Addition of a second supercn.

It turned out that running Barrelfish on machines with lots of RAM will
results in a error during booting that the supercn has no more space
left. As soon as supercn0 has no space left, the allocator will switch
to the second supercn1 to store the capabilities.

Also memserver will get both endpoints and switches automatically to the
next supercn while building up the memory allocator. The maximum size
bits are extended to 40.

The offsets are adapted to support 1024GB physical memory.

The implementation has been tested on qemu prior commit.

6 years agoAdded: waiting for host notify when booting the card.
Reto Achermann [Tue, 29 Apr 2014 08:30:31 +0000]
Added: waiting for host notify when booting the card.

6 years agoAdded: Xeon Phi Manager
Reto Achermann [Mon, 28 Apr 2014 15:42:04 +0000]
Added: Xeon Phi Manager

Responsible for assigning a unique ID to the Xeon Phi drivers and
exchanging the irefs of xeon phi drivers such that they can connect
to eachother

6 years agoAdded: Postcodes to the Xeon Phi Boot device
Reto Achermann [Sun, 27 Apr 2014 14:42:30 +0000]
Added: Postcodes to the Xeon Phi Boot device

6 years agoXeon Phi Host Driver
Reto Achermann [Sat, 26 Apr 2014 20:11:24 +0000]
Xeon Phi Host Driver

- Initialization of the PCI device
- Interrupt enable/disable
- SMPT management
- Reset sequence
- Diverse additions to the mackerel device specification

6 years agoRemoved some of the earlier printfs.
Reto Achermann [Fri, 25 Apr 2014 13:03:31 +0000]
Removed some of the earlier printfs.

Some bugfixes in the xeon phi host driver to make it run on QEMU.