summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-01-10Merge pull request #44 from sifive/led_fade_demoMegan Wachs
Add the led_fade demo which ships on HiFive1 boards
2017-01-10Add the led_fade demo which ships on HiFive1 boardsmwachs5
2017-01-05Merge pull request #38 from sifive/benchmarkingAndrew Waterman
Benchmarking
2017-01-03Add benchmarking READMEAndrew Waterman
2017-01-03Add CoreMark build skeletonAndrew Waterman
2017-01-03Compile Dhrystone without RVCAndrew Waterman
Branch target misalignment reduces performance by about 10%.
2017-01-03Regularize timing codeAndrew Waterman
Provide get_timer_value() and get_timer_freq() and use them. On Arty, they use mcycle and the known-fixed core frequency, whereas on HiFive1 they use mtime and the known-fixed mtime frequency.
2017-01-03Improve HiFive1 CPU frequency measurement routineAndrew Waterman
- Warm up I$ first. - Correct for integer division truncation error. - Wait for an RTC clock edge before starting the timing loop, which removes an error proportional to the number of loop iterations, allowing us to run for far less time.
2017-01-03Keep mtvec 4-byte alignedAndrew Waterman
2017-01-03Merge pull request #37 from NonerKao/masterRichard Xia
Fixes in the root makefile
2017-01-04Fixes in the root makefileQuey-Liang Kao
Each cd command in the targets software, software_clean, and dasm is unnecessary. Also, fixes from make to $(MAKE) help the readability of build/dry-run output.
2016-12-24Merge pull request #33 from sifive/verify_openocd_flashMegan Wachs
Bump OpenOCD to pick up corrected malloc in Flashing code.
2016-12-24Bump OpenOCD to pick up corrected malloc in Flashing code. Add 'verify' to ↵mwachs5
ensure Flash is loaded correctly.
2016-12-20Separate .text.unlikely and .text.startup from .textAndrew Waterman
This improves the instruction stream's spatial locality.
2016-12-20Avoid jal to weak symbolsAndrew Waterman
The symbol may be overridden and end up out of range of JAL.
2016-12-20Enable RVC by defaultAndrew Waterman
2016-12-20Pass argc and argv to main()Andrew Waterman
2016-12-20Merge pull request #32 from sifive/default-hifive1Megan Wachs
Default to freedom-e300-hifive1
2016-12-20Default to freedom-e300-hifive1Andrew Waterman
And parameterize the help message on the default options.
2016-12-20Completely ignore RISCV environment variableAndrew Waterman
This Makefile installs the tools in a fixed location and ignores $RISCV, so $RISCV should not be used to set $PATH. The incorrect $PATH setting prevents the compiler from building, as it can't find the assembler.
2016-12-19Merge pull request #30 from sifive/bump_openocdMegan Wachs
Bump OpenOCD to get around assertion error for flashing programs.
2016-12-19Bump OpenOCD to get around assertion error for flashign programs.Megan Wachs
2016-12-17Merge pull request #29 from sifive/remove_srst_delayMegan Wachs
Remove unncessary srst delay when connecting with OpenOCD to HiFive1
2016-12-17Merge pull request #28 from sifive/init_finiMegan Wachs
Correct init/fini functions for Arty Dev Kit
2016-12-17Remove unncessary srst delay when connecting with OpenOCD to HiFive1Megan Wachs
2016-12-17Correct init/fini functions for Arty Dev KitMegan Wachs
2016-12-14Move start.S and entry.S to a common directoryAlbert Ou
2016-12-14Merge pull request #25 from sifive/add_srst_optionMegan Wachs
hifive1: Update OpenOCD Config script to optionally allow pulsing SRST
2016-12-14Merge pull request #26 from sifive/readme-zlib1g-devMegan Wachs
Update README.md
2016-12-14Update README.mdMegan Wachs
Add additional package dependency due to new versions of the tools
2016-12-14hifive1: Update OpenOCD Config script to optionally allow pulsing SRSTMegan Wachs
2016-12-14Refactor libc stubs into libwrapAlbert Ou
The --wrap feature of GNU ld supports a cleaner framework for linking in alternative implementations of libc functions without cpp hacks. Place wrappers in separate object files to reduce static code size.
2016-12-14Bump riscv-gnu-toolchain and update configure optionsAlbert Ou
2016-12-13Use more standard form of _init()Megan Wachs
2016-12-13Correct ifdef guards for HiFive1 demo_gpioMegan Wachs
2016-12-13Use cleaner .S filesMegan Wachs
2016-12-11Merge pull request #22 from sifive/more_definesMegan Wachs
Add NUM_GPIO definitions
2016-12-11Add some missing LICENSE headers.Megan Wachs
2016-12-11platform: add more defines which are generally neededMegan Wachs
2016-12-11Update README.mdMegan Wachs
2016-12-09Merge pull request #21 from sifive/openocd_verifyMegan Wachs
Bump OpenOCD to Allow for Verify and Blank Check
2016-12-09Merge pull request #20 from sifive/trap_entryMegan Wachs
demo_gpio: Correct trap_entry handling to enable timer/ext interrupts
2016-12-09demo_gpio: Make the demo more interesting with interrupts that actually do ↵Megan Wachs
things.
2016-12-09demo_gpio: Correct trap_entry handling to enable timer/ext interruptsMegan Wachs
2016-12-09Bump OpenOCD to Allow for Verify and Blank CheckMegan Wachs
2016-12-07Merge pull request #17 from sifive/enable-fpuScott Johnson
Enable FPU in MSTATUS CSR during init
2016-12-07Initialize FPU properlyScott Johnson
* Only attempts if FPU actually implemented in design * Also initializes rounding modes, which are undefined at reset
2016-12-07Place .init_array/.fini_array sections in flash instead of RAMAlbert Ou
This appears to resolve the issue of .sdata being assigned an incorrect LMA (ld warning "section `.sdata' can't be allocated in segment 1").
2016-12-07Deduplicate freedom-e300-arty filesAlbert Ou
2016-12-06Enable FPU in MSTATUS CSR during initScott Johnson
This way, chips with FPU can run FPU instructions without taking exceptions. I've confirmed that dhrystone still runs successfully even on chips with no FPU.