Michael Birtwell
c60de48a30
Upgrade smoltcp 0.6.0 -> 0.8.0
...
Main changes:
Deal with interfaces now being generic over mediums, update interface name
and initialisation.
Interfaces now own their sockets. So we store a reference to the Interface
instead of the SocketSet in Scheduler and IO.
Sockets are no longer reference counted. We never called the function to
increase the socket's reference count, so now we just remove it where it
was previously released. This will result in the socket being dropped at
a different time, but I think that should be fine.
Tested firmware upload to the bootloader and spamming artiq_coremgmt log
calls to download the log from the firmware.
Signed-off-by: Michael Birtwell <michael.birtwell@oxionics.com>
2022-04-24 10:09:27 +08:00
Sebastien Bourdeauducq
8415151866
update copyright year
2022-03-10 11:56:16 +08:00
David Nadlinger
e45cb217be
firmware: Explicitly use wrapping integer math in PRNGs
...
Patch by Hannah McLaughlin; apparently, the overflow actually
doesn't get checked/reported without `opt-level = 2` and
`lto = "thin"`.
2022-02-03 23:57:17 +00:00
occheung
b3e315e24a
rust: find json file using CARGO_TRIPLE
2021-11-08 16:59:08 +08:00
occheung
6d3164a912
riscv: print mtval on panic
2021-10-16 17:42:24 +08:00
occheung
dcbd9f905c
cargo: use cargo xbuild
2021-09-10 13:25:12 +08:00
occheung
798774192d
slave_fpga/bootloader: read in little endian
2021-09-10 13:25:12 +08:00
occheung
eecd825d23
firmware: suppress warning
2021-09-10 13:25:12 +08:00
occheung
3d629006df
makefiles: revert byte-swaps
2021-09-10 13:25:12 +08:00
occheung
1293e0750e
ld, makefiles: use ld.lld
2021-09-10 13:25:12 +08:00
occheung
3ff74e0693
bootloader: handle .sbss generation in .ld
...
Signed-off-by: occheung <dc@m-labs.hk>
2021-09-10 13:20:31 +08:00
occheung
448fe0e8cf
bootloader: fix panic
...
Signed-off-by: occheung <dc@m-labs.hk>
2021-09-10 13:20:31 +08:00
occheung
8294d7fea5
bootloader: swap endianness
...
Signed-off-by: occheung <dc@m-labs.hk>
2021-09-10 13:20:31 +08:00
occheung
13032272fd
bootloader: add rv32 exception handler
...
Signed-off-by: occheung <dc@m-labs.hk>
2021-09-10 13:20:31 +08:00
Sebastien Bourdeauducq
14d464b4cf
update copyright year
2021-02-17 15:52:08 +08:00
Sebastien Bourdeauducq
b83afedf43
kasli: light up ERROR LED on panic
2020-05-07 19:06:10 +08:00
Sebastien Bourdeauducq
bfcbffcd8d
update smoltcp
...
This disables the 'log' features which does not compile, and may break net_trace. To be investigated later.
2020-01-21 13:58:23 +08:00
Sebastien Bourdeauducq
9d7196bdb7
update copyright year
2020-01-13 19:33:44 +08:00
Sebastien Bourdeauducq
6644903843
bootloader: fix imports
2019-11-06 14:45:55 +08:00
Sebastien Bourdeauducq
b25a17fa37
netboot: support slave FPGA loading
2019-11-05 16:28:49 +08:00
Sebastien Bourdeauducq
9dc82bd766
bootloader: add no_flash_boot config option to force network boot
2019-11-05 15:31:08 +08:00
Sebastien Bourdeauducq
5362f92b39
bootloader: disable minimum stack space check in linker script
...
* The value varies greatly whether netboot is enabled or not.
* There is no simple solution to detect has_ethmac in the linker script and set the value accordingly.
* The space check is an imperfect solution that will be superseded by stack pointer limits.
* Left commented out so we can re-enable it manually during development if stack corruption is suspected.
2019-11-01 10:25:14 +08:00
Sebastien Bourdeauducq
deadfead2a
bootloader: fix !has_ethmac
2019-11-01 10:19:08 +08:00
Sebastien Bourdeauducq
a78e493b72
firmware: load slave FPGA in bootloader
2019-10-31 12:42:40 +08:00
Sebastien Bourdeauducq
bc050fdeec
bootloader: treat zero-length firmware in flash as no firmware
2019-10-30 21:46:06 +08:00
Sebastien Bourdeauducq
462cf5967e
bootloader: add netboot support
2019-10-30 21:23:42 +08:00
Sebastien Bourdeauducq
818d6b2f5a
bootloader: fix compilation problems
2019-10-21 13:28:17 +08:00
Sebastien Bourdeauducq
8f76a3218e
firmware: move i2c to libboard_misoc, enable IPv6 in bootloader, share network settings
2019-10-21 12:58:52 +08:00
Sebastien Bourdeauducq
390f05f762
firmware: use smoltcp release
2019-01-23 16:15:05 +08:00
Sebastien Bourdeauducq
d6a3172a3e
update copyright year
2019-01-03 20:21:34 +08:00
whitequark
0e7419450e
firmware: update smoltcp.
...
This adds TCP window scaling support.
2018-08-20 00:26:40 +00:00
whitequark
bdd18de2c1
firmware: globally enable LTO.
...
This used to crash with earlier rustc versions, but doesn't anymore,
and gives significant speedup (e.g. 2x on test_dma_record_time).
2018-08-12 19:17:45 +00:00
whitequark
2648b1b7a1
firmware: migrate to Rust 1.28.0.
...
This also updates / is a prerequisite for updating smoltcp.
Rationale for changes made:
* compiler_builtins is now shipped in the rust prefix.
* rustc's libpanic_unwind no longer works for us because it
has a hard dependency on Box (and it's a horrible hack);
fortunately, we only ever needed a personality function
from it.
* panic and oom handlers are now set in a completely different
way.
* allocators are quite different (and finally stable).
* NLL caused internal compiler errors in runtime, so code using
NLL was rewritten to not rely on it and it was turned off.
2018-08-12 19:17:45 +00:00
Sebastien Bourdeauducq
84b3d9ecc6
bootloader: also check firmware CRC in SDRAM ( #1065 )
2018-06-23 11:28:12 +08:00
whitequark
b54926134c
firmware: update the signature of #[lang="panic_fmt"].
2018-05-15 15:05:19 +00:00
whitequark
02b8426f60
firmware: rename libboard to libboard_misoc.
...
By analogy with libbuild_misoc. Hopefully one day it actually gets
moved to misoc...
2018-05-14 18:09:44 +00:00
Robert Jördens
495625b99d
bootloader: repeat memory test 4 times
2018-03-20 09:57:49 +00:00
Sebastien Bourdeauducq
999ec40e79
bootloader: print gateware ident
2018-03-13 00:11:25 +08:00
Sebastien Bourdeauducq
2caeea6f25
update copyright year
2018-03-13 00:09:13 +08:00
whitequark
807eb1155b
Update smoltcp.
...
Fixes #902 .
2018-01-30 03:29:08 +00:00
whitequark
80cbef0031
firmware: always reset PHY when initializing Ethernet.
...
Fixes #897 .
2018-01-19 04:56:11 +00:00
whitequark
267c699835
firmware: support DDRPHY without write leveling ( fixes #886 ).
...
Currently, this is kasli.
2018-01-09 02:41:02 +00:00
whitequark
07ccb9eebd
firmware: support configuration without ethphy ( #886 ).
...
Currently, this is kasli.
2018-01-08 22:16:17 +00:00
whitequark
3a3f44af53
firmware: update smoltcp.
2018-01-08 21:41:53 +00:00
whitequark
fc9766d2fa
firmware: reset ethphy before initializing smoltcp ( fixes #884 ).
2018-01-04 11:42:35 +00:00
whitequark
a371b25525
bootloader: allow using without Ethernet.
2017-12-31 09:21:28 +00:00
whitequark
e1253db0e8
firmware: update crc dependency, use it in libdrtioaux.
2017-12-31 09:16:11 +00:00
whitequark
b8f3d28bc0
firmware: update compiler_builtins dependency and move it to libboard.
...
This is so that we only specify it once.
2017-12-31 09:16:11 +00:00
whitequark
3505878176
bootloader: add basic network support.
2017-12-28 15:26:12 +00:00
whitequark
acd13837ff
firmware: implement the new bootloader.
2017-12-28 13:18:51 +00:00