diff options
| author | Megan Wachs <megan@sifive.com> | 2016-11-30 10:55:18 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2016-11-30 10:55:18 -0800 |
| commit | ae5f878d6acadabaa671a7a30b87e16eb1d718a7 (patch) | |
| tree | 20749a4e80815136d2129486b25202427b9ea30b /software/dhrystone/dhry_stubs.c | |
| parent | e12b0338d24597f12263322216fbe4e6c6b8e12a (diff) | |
Bump Everything to Match new Freedom Repo (#8)
* Bump tool versions
* Use version of OpenOCD which can load programs into flash
* Bump OpenOCD to Handle ISSI Flash Programming
* Update Header files
* add initial support for hifive1
* add dhrystone
* add clock helper functions
* add openocd cfg file
* Demo_GPIO checkpoint -- compiles and runs but no blinky LEDs
* Remove riscv-tests submodule
* Remove FPGA files, as they are no longer relevant to this Repository
* Add openocd_upload script
* Add Pinmux Mappings
Adding the pinmux mappings to the Platform Header
* Add IOF Mappings to platform header
* Re-order the IOF Mapping declarations
* Add more useful things to platform headers
* Get GPIO Demo working again (except interrupts aren't working)
* Update README with more OS packages needed
A bare ubuntu-16.04.1-server installation could not run `make tools`
without these packages.
* bump openocd to get SCKDIV fix
* Remove duplicated help text for run_debug target
* Add package to README that is needed for openocd build
Without this package I was seeing two different failures like below
when running `make tools`.
/home/scottj/freedom-e-sdk/openocd/configure: line 4533: syntax error near unexpected token `0.23'
/home/scottj/freedom-e-sdk/openocd/configure: line 4533: `PKG_PROG_PKG_CONFIG(0.23)'
Makefile:70: recipe for target '/home/scottj/freedom-e-sdk/toolchain/bin/openocd' failed
make: *** [/home/scottj/freedom-e-sdk/toolchain/bin/openocd] Error 2
... or ...
+ autoconf
configure.ac:12: error: possibly undefined macro: AC_MSG_WARN
If this token and others are legitimate, please use m4_pattern_allow.
See the Autoconf documentation.
configure.ac:240: error: possibly undefined macro: AC_MSG_NOTICE
configure.ac:342: error: possibly undefined macro: AC_DEFINE
Makefile:70: recipe for target '/home/scottj/freedom-e-sdk/toolchain/bin/openocd' failed
make: *** [/home/scottj/freedom-e-sdk/toolchain/bin/openocd] Error 1
* Bump OpenOCD to not overwrite SCKDIV when flashing
* Roll back CoreMark
Diffstat (limited to 'software/dhrystone/dhry_stubs.c')
| -rw-r--r-- | software/dhrystone/dhry_stubs.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/software/dhrystone/dhry_stubs.c b/software/dhrystone/dhry_stubs.c new file mode 100644 index 0000000..d384bf1 --- /dev/null +++ b/software/dhrystone/dhry_stubs.c @@ -0,0 +1,31 @@ +#include "platform.h" + +/* The functions in this file are only meant to support Dhrystone on an + * embedded RV32 system and are obviously incorrect in general. */ + +// return the cycle counter as though it were the current time +long time(void) +{ + long t; + asm volatile ("csrr %0, mcycle" : "=r" (t)); + return t / (get_cpu_freq() / 1000); +} + +// set the number of dhrystone iterations +void scanf(const char* fmt, int* n) +{ + *n = 1500000; +} + +// simple memory allocator +void* malloc(unsigned long sz) +{ + extern void* sbrk(long); + void* res = sbrk(sz); + if ((long)res == -1) + return 0; + return res; +} + +// simple memory deallocator +void free(void* ptr) {} |
