Commit Graph

157 Commits

Author SHA1 Message Date
Sean Cross
eb6fa89452 merge debug
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-21 21:48:16 +08:00
Sean Cross
bfd1ddc957 sw: update csr definition for bios
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-11 15:57:36 +08:00
Sean Cross
faf431dd58 hw: fix tests line endings
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-11 15:54:06 +08:00
Sean Cross
92bf1ff546 doc: fix line endings
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-11 15:53:37 +08:00
Sean Cross
e5a2b29456 sw: fix line endings
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-11 15:53:08 +08:00
Sean Cross
f30fbce79f gitignore: ignore all elf, bin, and hex files
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-11 15:51:23 +08:00
Sean Cross
3b809e70f7 hw: minor text cleanup on foboot-bitstream
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-11 15:48:24 +08:00
Sean Cross
35d4333c13 examples: riscv-blink: first working iteration
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-11 15:17:03 +08:00
Sean Cross
ddff12cd02 hw: fix spi so code execution works
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-11 13:23:44 +08:00
Sean Cross
9144b767a8 sw: fix line endings
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-11 11:48:57 +08:00
Sean Cross
482708d6fb sw: spi: remove broken, unused Write command
The Write command was from fomu-flash, and didn't properly erase the
required sectors.  This wasn't an issue, because it is entirely unused.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-11 11:47:10 +08:00
Sean Cross
e69429fb0c gitattributes: try fixing lf/crlf issue
We should only use lf, since that's all Linux understands.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-11 10:41:23 +08:00
Sean Cross
9e8bcc3350 lxbuildenv: convert to unix line endings
This should have been done a while ago.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-11 10:34:35 +08:00
Sean Cross
d8821dff99 example: add riscv example
Still experimental.  It'll probably move later.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-11 09:58:22 +08:00
Sean Cross
9cb4e4a8ce WIP: riscv boot
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-11 09:40:28 +08:00
Sean Cross
cf574019a0 hw: remove obsolete call to icemulti
We make our images from scratch.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-11 09:38:44 +08:00
Sean Cross
acb4b998da hw: add another boot image
Still trying to decide on the image order.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-11 09:38:09 +08:00
Sean Cross
0bcc45b185 sw: update to use picospi
Use the new picospi instead of bbspi.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-10 17:02:02 +08:00
Sean Cross
3a51f55ee7 hw: foboot-bitstream: replace bbspi with picorvspi
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-10 16:44:05 +08:00
Sean Cross
7774fdd7e7 hw: fomu_flash: add spi controller from picorv32
This controller supports many features, including bit-bang mode and
memory-mapped access.  It should replace the previous module
entirely.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-10 16:42:59 +08:00
Sean Cross
63f5dc75de hw: foboot-bitstream: add an option to build with no cpu
Building with no CPU is faster, and can be very handy for debugging
various hardware blocks when using litex_server.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-10 16:41:17 +08:00
Sean Cross
d89eea3934 usb: refactor state machine to work with xhci devices
Due to some subtle quirks, as well as a poorly-implemented state machine,
foboot was not compatible with many Desktop devices.

This should fix the implementation so that it is more compatible.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-08 17:19:54 +08:00
Sean Cross
20c0fb2b2b valentyusb: revert shorter-pipeline patch
It didn't seem to fix anything, and may have made things worse.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-07 22:57:05 +08:00
Sean Cross
239aa660ef documentation: update readme and license
Update the LICENSE file to Apache 2.0.

Modify README.md to include information for the end-user.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-07 13:47:29 +08:00
Sean Cross
5f7cd9d2ab foboot-bitstream: disable pll by default, add -with-dsp option
Disable building the PLL by default.  While we're at it, add
an argument to attempt to infer the DSP.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-07 06:27:13 +01:00
Sean Cross
595be29063 sw: Makefile: use 32-bit riscv compiler on rpi
The rpi image does not have a 64-bit riscv compiler.  Use the
32-bit version of the toolchain if we detect we're on an rpi.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-07 04:55:13 +01:00
Sean Cross
c0df98f66e hw: correct crystal pin for Hacker board
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-06 17:08:01 +08:00
Sean Cross
6d9028f505 hw: foboot-bitstream: create multiboot image after build
This fixes an issue where the directory wasn't created first.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-06 16:19:30 +08:00
Sean Cross
7ee97214e6 foboot-bitstream: generate multiboot and print helpful message
Generate a multiboot version of the bitstream image.  While we're at it,
print a helpful message indicating what each output image is.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-06 11:07:39 +08:00
Sean Cross
4b6ad47705 sw: spi-gpio: remove unused files
These were moved into spi.c to allow them to be inlined.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-06 11:04:43 +08:00
Sean Cross
91a23d808c sw: Makefile: fix third_party and package naming
With these changes, litex mode should now work.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-06 10:51:08 +08:00
Sean Cross
2a7e431947 hw: foboot-bitstream: support building bios
Now that the failsafe bios has stabilized, support building it as part
of the ROM.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-06 09:42:29 +08:00
Sean Cross
a9a5f0cc0d sw: minor removal of unused code
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-06 09:35:50 +08:00
Sean Cross
d6ae51f69b sw: ld: add support for litex build
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-06 09:35:23 +08:00
Sean Cross
2437e8b5c1 sw: Makefile: support litex build environment
Allow this software package to be built from within the Litex build system.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-06 09:34:26 +08:00
Sean Cross
6435aec3db foboot-bitstream: add hacker revision
Untested commit -- this should add support for the Hacker version of the
PCB.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-05 18:58:19 +08:00
Sean Cross
b40a9bad43 rgb: fix typo in macro
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-05 18:17:11 +08:00
Sean Cross
b5f17acdf6 sw: enable fancy led effects
Support different LED patterns depending on the mode.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-05 18:10:05 +08:00
Sean Cross
db65ccc199 hw: document warmboot some more
Realized that there are 5 images and not 4.  With this, everything
works as it should.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-05 17:34:10 +08:00
Sean Cross
fd76536351 usb-dev: reboot to image 0
Since this is a failsafe bootloader, reboot to Image 0.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-05 17:33:28 +08:00
Sean Cross
eaa0d63ccb usb-epfifo: fix DATA0/DATA1 swaps for Tx
We were sometimes sending DATA0 instead of DATA1.  Fix that.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-05 17:33:02 +08:00
Sean Cross
7d091a72b9 main: poll dfu in main loop
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-05 15:10:19 +08:00
Sean Cross
7bcc8529d6 dfu: initial working commit
This commit actually works, but still has a few issues.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-05 15:09:52 +08:00
Sean Cross
ac349ce1a1 spi: support 32- and 64-kB erase blocks
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-05 15:09:04 +08:00
Sean Cross
cbf4958236 usb-epfifo: remove extra USB_NAK setting
This works around an issue, though it's still not properly working.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-05 13:21:09 +08:00
Sean Cross
2b0575889f usb-dev: remove commented-out printf statements
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-05 13:20:54 +08:00
Sean Cross
c92af747cd spi: actually transmit data
We were sending data on CS, not on CLK.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-05 13:19:46 +08:00
Sean Cross
d72925fdeb sw: experimental improved dfu performance
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-03 22:11:31 +08:00
Sean Cross
4c3f0f2402 valentyusb: use experimental shorter pipeline
This helps to improve timing.

Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-03 22:11:02 +08:00
Sean Cross
1660681d38 hw: add 2-stage-1024-cache
Signed-off-by: Sean Cross <sean@xobs.io>
2019-04-03 21:57:53 +08:00