barrelfish
5 years agoAdded command line arg for overriding default heap pagesize.
Simon Gerber [Mon, 4 Aug 2014 22:50:23 +0000]
Added command line arg for overriding default heap pagesize.

Also removed the vregion flags #define for the heap region as we can infer the
necessary flags from the alignment argument to morecore_init(). We now choose
the pagesize that matches the alignment or 4kB if no match found.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agoAdded Config.hs flag for morecore pagesize.
Simon Gerber [Mon, 4 Aug 2014 21:41:31 +0000]
Added Config.hs flag for morecore pagesize.

Conflicts:
lib/barrelfish/init.c
lib/barrelfish/morecore.c

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agoFixed morecore_reinit() to properly not remap when unnecessary.
Simon Gerber [Sat, 26 Jul 2014 00:36:07 +0000]
Fixed morecore_reinit() to properly not remap when unnecessary.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agox86_64: pmap_map: Fixed size check to actually work for sizes >4GB.
Simon Gerber [Wed, 23 Jul 2014 01:00:58 +0000]
x86_64: pmap_map: Fixed size check to actually work for sizes >4GB.

Conflicts:
lib/barrelfish/target/x86_64/pmap_target.c

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agovspace_mmu_aware: fixed edge case in assertions.
Simon Gerber [Tue, 22 Jul 2014 01:05:57 +0000]
vspace_mmu_aware: fixed edge case in assertions.

Assertions didn't allow freeing the region starting at offset zero in the
vregion.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agoAdded remapping functionality for malloc.
Simon Gerber [Fri, 18 Jul 2014 16:56:24 +0000]
Added remapping functionality for malloc.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agoAdded malloc test to check whether large page magic works.
Simon Gerber [Fri, 18 Jul 2014 00:44:55 +0000]
Added malloc test to check whether large page magic works.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agomake mmu_aware vspace code support multiple page sizes.
Simon Gerber [Thu, 17 Jul 2014 21:40:05 +0000]
make mmu_aware vspace code support multiple page sizes.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agox86_64: cleaned up corner cases in pmap code.
Simon Gerber [Tue, 15 Jul 2014 01:51:37 +0000]
x86_64: cleaned up corner cases in pmap code.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agox86_64: pmap: removed support code for mixed-size mappings.
Simon Gerber [Sat, 12 Jul 2014 00:37:04 +0000]
x86_64: pmap: removed support code for mixed-size mappings.

Mixed-size mappings (e.g. composing a mapping from 4k and 2M pages) don't work
on x86 unless the physical and virtual addresses have matching alignments (a
2M mapping needs both a 2M aligned virtual and physical address).  Thus we
don't support this case in the default library OS.

The kernel doesn't care though and you can roll your own system where you
allocate physical memory that matches the alignment so that the first 2M
aligned virtual address lands on a 2M aligned physical address.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agox86_64: kernel: cleanup trailing spaces.
Simon Gerber [Sat, 12 Jul 2014 00:19:38 +0000]
x86_64: kernel: cleanup trailing spaces.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agoCleanup of unmap error handling and proper checks for slab refilling in map.
Simon Gerber [Fri, 11 Jul 2014 21:32:49 +0000]
Cleanup of unmap error handling and proper checks for slab refilling in map.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agoAdded unaligned mixed 4k/2M test in large page tests.
Simon Gerber [Fri, 11 Jul 2014 20:53:28 +0000]
Added unaligned mixed 4k/2M test in large page tests.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agonewlib: libbarrelfish: properly hook up assert functionality.
Simon Gerber [Tue, 8 Jul 2014 23:59:03 +0000]
newlib: libbarrelfish: properly hook up assert functionality.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agox86_64: pmap: cleanup and added some plumbing for mixed-size mappings.
Simon Gerber [Wed, 2 Jul 2014 21:00:16 +0000]
x86_64: pmap: cleanup and added some plumbing for mixed-size mappings.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agox86_64: cleaned up magic constant 9 (ptable_bits) in pmap code.
Simon Gerber [Mon, 30 Jun 2014 18:51:04 +0000]
x86_64: cleaned up magic constant 9 (ptable_bits) in pmap code.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agoFixed VREGION_FLAGS_MASK.
Simon Gerber [Mon, 30 Jun 2014 18:42:00 +0000]
Fixed VREGION_FLAGS_MASK.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agovspace/utils.c: cleaned up trailing spaces.
Simon Gerber [Thu, 19 Jun 2014 00:22:57 +0000]
vspace/utils.c: cleaned up trailing spaces.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agox86_32: compiles with PAE enabled.
Simon Gerber [Thu, 19 Jun 2014 00:22:15 +0000]
x86_32: compiles with PAE enabled.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agox86_32: Added notice about CONFIG_PSE in large page test.
Simon Gerber [Wed, 18 Jun 2014 23:01:27 +0000]
x86_32: Added notice about CONFIG_PSE in large page test.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agox86_32: kernel: cleaned up large page mapping code.
Simon Gerber [Wed, 18 Jun 2014 21:51:44 +0000]
x86_32: kernel: cleaned up large page mapping code.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agoAdded x86_32 version of large page test.
Simon Gerber [Wed, 18 Jun 2014 21:47:11 +0000]
Added x86_32 version of large page test.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agoproperly zero newly allocated memobj and vregion.
Simon Gerber [Wed, 18 Jun 2014 21:46:39 +0000]
properly zero newly allocated memobj and vregion.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agox86_32: kernel: added support for large pages to paging_dump_tables.
Simon Gerber [Wed, 18 Jun 2014 21:44:14 +0000]
x86_32: kernel: added support for large pages to paging_dump_tables.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agoRefactored pmap code for x86_{64,32}.
Simon Gerber [Wed, 18 Jun 2014 20:02:04 +0000]
Refactored pmap code for x86_{64,32}.

* factored out common code for vnode manipulation (see pmap_x86.{h,c})
* cleaned up x86_32 pmap implementation

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agoFixed paging_tlb_flush_range to compile on x86_32.
Simon Gerber [Wed, 18 Jun 2014 20:01:31 +0000]
Fixed paging_tlb_flush_range to compile on x86_32.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agoAdded large page test.
Simon Gerber [Wed, 18 Jun 2014 17:47:08 +0000]
Added large page test.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agox86_64: lazily clean up empty page tables when creating large / huge page mappings.
Simon Gerber [Tue, 17 Jun 2014 21:23:52 +0000]
x86_64: lazily clean up empty page tables when creating large / huge page mappings.

This enables reusing address ranges that held smaller mappings before when
creating mappings with large or huge pages.  This is necessary as we never
clean up page tables and page directories when unmapping regardless of whether
there's valid entries left in them.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agox86_64: pmap do_map fine-grained debug output ctrl.
Simon Gerber [Tue, 17 Jun 2014 20:43:14 +0000]
x86_64: pmap do_map fine-grained debug output ctrl.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agox86_64: fix is_same_{pdir,pdpt,pml4} functions to properly identify ranges that span...
Simon Gerber [Tue, 17 Jun 2014 20:42:53 +0000]
x86_64: fix is_same_{pdir,pdpt,pml4} functions to properly identify ranges that span exactly one table.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agokernel: x86_64: updated paging_dump_tables to understand large/huge pages.
Simon Gerber [Tue, 17 Jun 2014 00:41:14 +0000]
kernel: x86_64: updated paging_dump_tables to understand large/huge pages.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agox86_64: fixed unmap last leaf, added code to allow users to easily map large/huge...
Simon Gerber [Tue, 17 Jun 2014 00:19:33 +0000]
x86_64: fixed unmap last leaf, added code to allow users to easily map large/huge pages.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agox86_64: fix page sizes to be derived from sizes in bits.
Simon Gerber [Tue, 17 Jun 2014 00:17:01 +0000]
x86_64: fix page sizes to be derived from sizes in bits.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agox86_64: cleaned up and refactored pmap unmap code.
Simon Gerber [Mon, 16 Jun 2014 19:54:42 +0000]
x86_64: cleaned up and refactored pmap unmap code.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agox86_64: fixed selective tlb flushing page size choice.
Simon Gerber [Mon, 16 Jun 2014 19:54:02 +0000]
x86_64: fixed selective tlb flushing page size choice.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agox86_64: cleanup of pmap do_map and supporting code.
Simon Gerber [Mon, 16 Jun 2014 18:38:45 +0000]
x86_64: cleanup of pmap do_map and supporting code.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agox86_64: Fixed typo in determine_addr_raw.
Simon Gerber [Fri, 13 Jun 2014 23:07:21 +0000]
x86_64: Fixed typo in determine_addr_raw.

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agoKernel test that checks that we preserve page table hierarchy constraints
Simon Gerber [Fri, 13 Jun 2014 21:45:54 +0000]
Kernel test that checks that we preserve page table hierarchy constraints

Signed-off-by: Simon Gerber <simon.gerber@hp.com>

5 years agoLargepage Code, arm addition
Andreas Dillier [Mon, 2 Dec 2013 00:59:18 +0000]
Largepage Code, arm addition

Added arm/omap4460 files, just for completeness, it does not work yet.

Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>

5 years agoLargepage repository
Andreas Dillier [Sun, 1 Dec 2013 23:42:50 +0000]
Largepage repository

Fixing the issue with the repository not having a history

Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>

5 years agoAdded large page capabilities to the x86 architecture.
Andreas Dillier [Mon, 25 Nov 2013 01:45:29 +0000]
Added large page capabilities to the x86 architecture.

Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>

6 years agoadding a tag for release 2014-05-22
Stefan Kaestle [Thu, 22 May 2014 14:25:32 +0000]
adding a tag for release 2014-05-22

6 years agopartially revert ARMv7 SVC commit release2014-05-22
Kornilios Kourtis [Tue, 20 May 2014 11:35:42 +0000]
partially revert ARMv7 SVC commit

This partially reverts commit 'make ARMv7 cpu driver run in SVC mode'
(0d0727072557f24bd66686e37dc8ddbda328cf15) because it does not boot on
GEM5.

6 years agoarmv7: use A9 timer functions only in pandaboard
Kornilios Kourtis [Tue, 20 May 2014 08:57:41 +0000]
armv7: use A9 timer functions only in pandaboard

These functions are only defined for pandaboard:
 collect2: ld terminated with signal 11 [Segmentation fault]
 ./armv7/kernel/arch/armv7/syscall.o: In function `sys_syscall':
 syscall.c:(.text+0x9ac): undefined reference to `gt_read_high'
 syscall.c:(.text+0x9c0): undefined reference to `gt_read_low'

Guard them with an #if for now.

6 years agoMake vmkit test-case pass again.
Gerd Zellweger [Mon, 19 May 2014 11:46:44 +0000]
Make vmkit test-case pass again.

vmkit linux execution stopped after:
[0:05:20] handle_vmexit_cpuid: CPUID: func 40000000, host reports: eax 0, ebx 0,
ecx 0, edx 0
[0:05:20] VMKit PCI host: reading register 2, opsize 1: 0
[0:05:20] VMKit PCI host: reading register 0, opsize 1: 0
[0:05:20] VMKit PCI host: reading register 0, opsize 1: 0
[0:05:20] VMKit PCI host: reading register 3, opsize 0: 0
[0:05:20] handle_vmexit_cpuid: CPUID: func 40000000, host reports: eax 0, ebx 0,
ecx 0, edx 0
[0:16:13] [Error: test timed out]

There seems to be a hard-coded assumption in there about the
PCI function of the NIC it uses for PCI pass-through?
I did not find it with a quick glance, but I'll need to have
another look as this will likely break again in the future.

6 years agoMerge remote-tracking branch 'origin/master' into sdma-swicki
Kornilios Kourtis [Mon, 12 May 2014 16:42:13 +0000]
Merge remote-tracking branch 'origin/master' into sdma-swicki

6 years agoRevert THC using GCC thread local storage.
Gerd Zellweger [Mon, 12 May 2014 16:18:16 +0000]
Revert THC using GCC thread local storage.

As it turns out this is only really support on x86-64.
For x86-32 I need to add LDT support first.

This reverts commit 15237af3c7c5007ba74b452d961cf22a613b9b60.
This reverts commit 9cdc2018f4728271fde24fb9f59576b103c975a6.

6 years agoMerge remote-tracking branch 'swicki/master'
Kornilios Kourtis [Mon, 12 May 2014 12:08:32 +0000]
Merge remote-tracking branch 'swicki/master'

Conflicts:
hake/menu.lst.pandaboard
include/arch/arm/omap44xx/device_registers.h
kernel/arch/arm/exec.c
usr/kaluga/main.c
usr/kaluga/omap_startup.c

6 years agoharness: Added burrata.
Simon Gerber [Fri, 9 May 2014 11:57:21 +0000]
harness: Added burrata.

6 years agoRemove now empty function thc_set_pts_0.
Gerd Zellweger [Wed, 7 May 2014 12:31:04 +0000]
Remove now empty function thc_set_pts_0.

6 years agoAdd vacherin to scalebench. Cleanup old entries.
Gerd Zellweger [Wed, 7 May 2014 12:23:34 +0000]
Add vacherin to scalebench. Cleanup old entries.

6 years agoAdd support for I210 e1000 card to SKB.
Gerd Zellweger [Wed, 7 May 2014 12:38:20 +0000]
Add support for I210 e1000 card to SKB.

6 years agoFix E1000 debug print.
Gerd Zellweger [Wed, 7 May 2014 12:54:31 +0000]
Fix E1000 debug print.

6 years agoSupport for Intel I210 Ethernet card in e1000.
Gerd Zellweger [Sun, 27 Apr 2014 21:24:13 +0000]
Support for Intel I210 Ethernet card in e1000.

Makes networking work on our vacherin machine.

Right now this is another card type in e1000, however, it may be the same as
82576 card but at least, juding from the code we have for 82576 some of the
init code has to be different.

Also, change e1000 to select first card found instead of last, usually
first card has function 0x0 so we will choose the right one for machines
with only one cable. Better would probably be to try them all and see
where we get a link.

6 years agoAdding fixes to THC that make it work with threads.
Gerd Zellweger [Wed, 7 May 2014 10:17:29 +0000]
Adding fixes to THC that make it work with threads.

Using GCC thread local storage for TLS state in BF.
See also https://lists.inf.ethz.ch/mailman/private/barrelfish/2012/002576.html

6 years agoTraceing: Export all event info in JSON
Gerd Zellweger [Sat, 5 Apr 2014 17:19:46 +0000]
Traceing: Export all event info in JSON

Before Pleco exported either DESC if set or NAME of event when
writing the JSON. This makes it awkward to write Javascript
programs to parse the trace in aquarium. Now we export both
with means we can always rely on event NAME in javascript.

6 years agoFixed posixcompat_unpack_fds to not try to map an empty slot.
Simon Gerber [Mon, 20 Jan 2014 14:54:51 +0000]
Fixed posixcompat_unpack_fds to not try to map an empty slot.

6 years agoRemove Beehive intermon messages.
Gerd Zellweger [Thu, 14 Nov 2013 09:10:57 +0000]
Remove Beehive intermon messages.

Beehvive support was removed a long time ago.

Conflicts:
if/intermon.if

6 years agokernel: enable mapping of up to 1TB of physical memory.
Simon Gerber [Tue, 6 May 2014 11:45:30 +0000]
kernel: enable mapping of up to 1TB of physical memory.

6 years agox86_64: memserv: change MAXSIZEBITS to 48 to handle machines with large RAM.
Simon Gerber [Tue, 6 May 2014 11:44:43 +0000]
x86_64: memserv: change MAXSIZEBITS to 48 to handle machines with large RAM.

6 years agokernel: 4x size of supercn to handle larger amounts of RAM.
Simon Gerber [Wed, 30 Apr 2014 11:14:33 +0000]
kernel: 4x size of supercn to handle larger amounts of RAM.

6 years agopaging: partially fixed unmap in floating page tables.
Simon Gerber [Wed, 30 Apr 2014 11:21:57 +0000]
paging: partially fixed unmap in floating page tables.

6 years agoFix bug in octopus locking code.
Gerd Zellweger [Tue, 15 Apr 2014 19:55:26 +0000]
Fix bug in octopus locking code.

Trigger and Return binding was switched when creating the trigger
struct which lead to trigger not being installed on server side.
Unfortunately this is not type checked :-(

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

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

7 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.

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

7 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.

7 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.

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

7 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

7 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.

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

7 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.

7 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

7 years agoFixed messed up function call ordering in set_with_idcap_handler in octopus service.
Simon Gerber [Tue, 25 Feb 2014 16:57:07 +0000]
Fixed messed up function call ordering in set_with_idcap_handler in octopus service.

7 years agoCleaned up omap44xx uart3 device file.
Simon Gerber [Tue, 25 Feb 2014 16:56:02 +0000]
Cleaned up omap44xx uart3 device file.

7 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.

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

7 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.

7 years agocp15: use clean & invalidate instead of clean only
Sebastian Wicki [Wed, 5 Feb 2014 22:21:24 +0000]
cp15: use clean & invalidate instead of clean only

The current implementation of cp15_invalidate_d_cache() only cleans
the cache, which means that dirty cache lines are written back to
memory. However, cache lines which were modified in memory, for
example by a DMA engine, are not re-read.

This change uses the clean & invalidate operation, which means that
the cache lines are cleaned and invalidated: All dirty cache lines
are written back to memory, all other other cache lines are marked
as invalid until they are re-read from memory.

7 years agoMake ARMv7 cpu driver run in SVC mode
Wang Nan [Wed, 5 Feb 2014 21:36:50 +0000]
Make ARMv7 cpu driver run in SVC mode

From https://lists.inf.ethz.ch/pipermail/barrelfish-users/2013-July/001092.html

7 years agoAdded benchmarks for the SDMA driver
Sebastian Wicki [Tue, 4 Feb 2014 23:33:52 +0000]
Added benchmarks for the SDMA driver

The code /usr/bench/sdma_bench performs and measures multiple
transfer requests. It optionally spawns a number of worker in
order to simulate multiple clients and uses distributed
barriers to synchronize all these workers.

The benchmark in /usr/bench/bulk_sdma implements a simple bulk
transfer framework for test purposes. The different implementations
either perform the copy themselves in software, or offload them to
the SDMA driver.

7 years agoAdded basic support for the Cortex A9 Global Timer
Sebastian Wicki [Tue, 4 Feb 2014 23:11:20 +0000]
Added basic support for the Cortex A9 Global Timer

The Cortex A9 global timer is a 64-bit incrementing counter, which
is memory mapped in the private memory region. Thus, the code for
the timer is currently all in the CPU driver.

To read out the timer in userspace, two system calls are needed,
one for the lower and and one for the upper half of the counter.
The following helper function is provided to correctly read out
the timer value in two 32 bit reads as suggested in the ARM TRM:

  errval_t sys_debug_hardware_global_timer_read(uint64_t *ret)

7 years agoAdded tests for SDMA driver
Sebastian Wicki [Tue, 4 Feb 2014 22:40:57 +0000]
Added tests for SDMA driver

7 years agoAdded SDMA driver to kaluga
Sebastian Wicki [Tue, 4 Feb 2014 22:19:00 +0000]
Added SDMA driver to kaluga

7 years agoAdded SDMA driver for memory-to-memory transfers
Sebastian Wicki [Tue, 4 Feb 2014 21:45:47 +0000]
Added SDMA driver for memory-to-memory transfers

This adds support for the OMAP4460 SDMA engine found on the Pandaboard.
The driver currently only supports memory-to-memory transfer. Those can
be requested through the Flounder interface described in if/omap_sdma.if.

7 years agoCleaned up OMAP4460 SDMA Mackerel file
Sebastian Wicki [Tue, 4 Feb 2014 21:34:13 +0000]
Cleaned up OMAP4460 SDMA Mackerel file

Changed to use regarrays for channels, instead of individual definitions,
added scatter-gather descriptors and fixed some minor typos.

7 years agoFlush affected TLB entries on modify_flags.
Simon Gerber [Mon, 27 Jan 2014 17:06:21 +0000]
Flush affected TLB entries on modify_flags.

7 years agoFixed libbarrelfish modify_flags code to do correct inside_region() calls.
Simon Gerber [Wed, 22 Jan 2014 14:54:48 +0000]
Fixed libbarrelfish modify_flags code to do correct inside_region() calls.

7 years agoAdded modify_flags test. Fixed missing local_phys_to_mem in kernel modify_flags.
Simon Gerber [Wed, 22 Jan 2014 14:46:43 +0000]
Added modify_flags test. Fixed missing local_phys_to_mem in kernel modify_flags.

7 years agoFixed caps_copy_to_cte to insert new cap after minting.
Simon Gerber [Mon, 13 Jan 2014 17:20:58 +0000]
Fixed caps_copy_to_cte to insert new cap after minting.

7 years agoFixed mdb_skew and mdb_split to properly update root node if necessary.
Simon Gerber [Tue, 17 Dec 2013 14:57:47 +0000]
Fixed mdb_skew and mdb_split to properly update root node if necessary.

7 years agoFixed minor error in function signature for compilation of eMAC driver for SCC.
pravin@inf.ethz.ch [Sun, 22 Dec 2013 12:52:14 +0000]
Fixed minor error in function signature for compilation of eMAC driver for SCC.

7 years agoFixed couple of minor typos in symbolic targets for arm
pravin@inf.ethz.ch [Sat, 21 Dec 2013 01:04:21 +0000]
Fixed couple of minor typos in symbolic targets for arm

7 years agoreverted the code to support software filtering for chained incoming packets,
pravin@inf.ethz.ch [Fri, 20 Dec 2013 22:23:00 +0000]
reverted the code to support software filtering for chained incoming packets,
as that code was not working.