pca006132
6f5ba46e89
runtime/eh_artiq: support exception allocation
...
The backtrace is now nested, and should be used together with the stack
pointer array to construct the full backtrace for each exception.
We now allocate exception objects in a stack, but their names are still
not allocated. This is fine for exceptions raised in the driver or artiq
code, but we will have to implement allocation for names of exceptions
raised in RPC calls. The compiler should also emit code to store the
exception names once they catch it, to prepare for later reraising.
2022-01-23 21:31:22 +08:00
pca006132
8923feceac
runtime/eh_artiq: use forced unwind
...
This patches ports the LLVM libunwind newly added forced unwinding
function. This enables us to run forced unwinding to obtain correct
backtrace when uncaught exceptions occur.
This patch also changes the exception handling scheme from the standard
two-phase unwinding to single phase using forced unwinding. This brings
some performance improvement and prepared for later nested exception
support. For nested exceptions, we will have to record the backtrace
regardless if the exception is an uncaught exception, as there can be
another exception being thrown while executing the finally block for
caught exceptions, and we will lose the backtrace if we don't store it
earlier before running the cleanup pads.
2022-01-14 13:35:24 +08:00
pca006132
97ca72f7f1
libunwind: enable lto
2022-01-06 14:04:04 +08:00
pca006132
acaf388dbb
eh_artiq: handle catch clauses appropriately
2022-01-06 13:41:47 +08:00
pca006132
8788d6458e
runtime/rpc: fixes alignment and size problem
2022-01-04 18:25:53 +08:00
pca006132
efe315c21d
libdyld: accepts R_ARM_ABS32
...
Somehow this relocation type is emitted by nac3.
According to table 4-9 of ARM ELF ABI and discussion in ld bugzilla
(https://sourceware.org/bugzilla/show_bug.cgi?id=16163 ), this behaves
the same as R_ARM_GLOB_DAT and R_ARM_JUMP_SLOT.
2021-12-30 00:05:47 +08:00
stevefan1999
84becfe2c0
report async errors upon kernel termination
...
Port of 4a6bea479a
Co-authored-by: Steve Fan <sf@m-labs.hk>
Reviewed-on: #156
Co-authored-by: stevefan1999 <sf@m-labs.hk>
Co-committed-by: stevefan1999 <sf@m-labs.hk>
2021-12-06 17:38:55 +08:00
stevefan1999
a4fbb96296
little fixes for README ( #157 )
...
Co-authored-by: Steve Fan <sf@m-labs.hk>
Reviewed-on: #157
Co-authored-by: stevefan1999 <sf@m-labs.hk>
Co-committed-by: stevefan1999 <sf@m-labs.hk>
2021-12-06 15:20:55 +08:00
mwojcik
64fecf09b7
restore kasli-soc satellite variant check
2021-12-03 19:20:54 +08:00
mwojcik
31fb2b388a
Support for DRTIO 100MHz ( #155 )
...
Co-authored-by: mwojcik <mw@m-labs.hk>
Co-committed-by: mwojcik <mw@m-labs.hk>
2021-12-03 17:19:42 +08:00
mwojcik
e045837b67
zc706: not actually ultrascale
2021-11-29 12:48:45 +08:00
mwojcik
ada3f2e704
drtio: reading still needs work buffer after all
2021-11-29 12:46:08 +08:00
mwojcik
8be5048cd3
upgrade to new clock configuration system ( #152 )
...
As mentioned in https://github.com/m-labs/artiq/issues/1735 - this is the Zynq version.
Reviewed-on: #152
Co-authored-by: mwojcik <mw@m-labs.hk>
Co-committed-by: mwojcik <mw@m-labs.hk>
2021-11-29 11:17:59 +08:00
mwojcik
e8db2a4b49
drtio: crc from mainline, removed byte swap
2021-11-24 12:12:40 +08:00
mwojcik
4218354e65
zc706: updated device_db for tests
2021-10-16 19:01:54 +08:00
mwojcik
2376f9ab5e
Merge pull request 'zc706: added dummy spi' ( #149 ) from mwojcik/artiq-zynq:zc706_dummy_spi into master
...
Reviewed-on: #149
2021-10-14 16:38:06 +08:00
mwojcik
0b27349ec4
dummy_spi -> pmod_spi
2021-10-14 16:37:13 +08:00
mwojcik
21eb1cab1a
zc706: added dummy spi in place of sdio
2021-10-14 15:43:51 +08:00
mwojcik
3096daaaee
zc706: removed nist_clock sdcard, put pmod instead
2021-10-14 15:01:38 +08:00
mwojcik
4fbfccf575
zc706: fix nist_qc2 extension, ams101 iostandard
2021-10-14 12:39:09 +08:00
mwojcik
5c40115945
make ZC706 RTIO channels consistent with KC705
...
Reviewed-on: #147
Co-authored-by: mwojcik <mw@m-labs.hk>
Co-committed-by: mwojcik <mw@m-labs.hk>
2021-10-13 17:20:25 +08:00
Sebastien Bourdeauducq
a5e3580d18
Revert "runtime: expose rint from libm"
...
This reverts commit 3582af564d
.
2021-10-11 08:13:26 +08:00
Sebastien Bourdeauducq
3582af564d
runtime: expose rint from libm
2021-10-10 20:40:29 +08:00
mwojcik
742ce9fdde
fix sd and acpki satellite builds
2021-10-08 15:18:23 +02:00
mwojcik
c4de1c261a
default.nix: restored proper satellite variants
2021-10-08 15:13:56 +02:00
mwojcik
219c075931
added explicit runtime/satman targets for makefile
...
Reviewed-on: #144
Co-authored-by: mwojcik <mw@m-labs.hk>
Co-committed-by: mwojcik <mw@m-labs.hk>
2021-10-08 21:06:23 +08:00
mwojcik
d04a7decfe
removed simple variants from zc706
2021-10-08 11:07:12 +02:00
mwojcik
0efa83e956
update build scripts for DRTIO
...
Reviewed-on: #135
Co-authored-by: mwojcik <mw@m-labs.hk>
Co-committed-by: mwojcik <mw@m-labs.hk>
2021-10-08 16:25:13 +08:00
Sebastien Bourdeauducq
4fa824f42b
kasli-soc: remove irrelevant comment
2021-10-08 16:13:17 +08:00
mwojcik
ab0c205dd2
gateware: add DRTIO
...
Reviewed-on: #140
Co-authored-by: mwojcik <mw@m-labs.hk>
Co-committed-by: mwojcik <mw@m-labs.hk>
2021-10-08 16:12:30 +08:00
mwojcik
8d2bb09149
add satman firmware ( #136 )
...
Reviewed-on: #136
Co-authored-by: mwojcik <mw@m-labs.hk>
Co-committed-by: mwojcik <mw@m-labs.hk>
2021-10-08 16:04:50 +08:00
Sebastien Bourdeauducq
41295b0e01
update cargoSha256
2021-10-06 19:43:01 +08:00
mwojcik
aaec0abdf6
fix build/warnings before drtio is fully merged
2021-10-06 16:17:19 +08:00
mwojcik
e241957419
add libbuild_zynq
...
Reviewed-on: #141
Co-authored-by: mwojcik <mw@m-labs.hk>
Co-committed-by: mwojcik <mw@m-labs.hk>
2021-10-06 16:16:49 +08:00
mwojcik
50262b3f0c
runtime: link_thread -> link_task
2021-10-06 07:59:55 +02:00
mwojcik
827c6c1306
runtime: switch to libio/libboard_artiq, add DRTIO mastering support
...
Reviewed-on: #137
Co-authored-by: mwojcik <mw@m-labs.hk>
Co-committed-by: mwojcik <mw@m-labs.hk>
2021-10-06 13:05:45 +08:00
mwojcik
e6863263b4
add libboard_artiq (to be shared between runtime and satman)
...
Reviewed-on: #139
Co-authored-by: mwojcik <mw@m-labs.hk>
Co-committed-by: mwojcik <mw@m-labs.hk>
2021-10-06 13:02:28 +08:00
mwojcik
d7f45d473e
add libio (to be shared between runtime and satman)
...
Reviewed-on: #138
Co-authored-by: mwojcik <mw@m-labs.hk>
Co-committed-by: mwojcik <mw@m-labs.hk>
2021-10-06 13:01:52 +08:00
pca006132
35250b3f56
libdyld: fixed symbol relocation
...
Note that in libdyld/src/lib.rs #117-118, image pointer is already added
to the symbol offset, so we do not need to add the pointer again
2021-09-25 11:30:45 +08:00
Sebastien Bourdeauducq
2ed2ffe417
update dependencies
2021-08-09 15:16:54 +08:00
Sebastien Bourdeauducq
18e05c91e1
zc706: si5324 is not needed for standalone target
2021-08-04 09:14:19 +08:00
mwojcik
e3d3cb2311
si5324: bring on par with mainline ARTIQ ( #132 )
...
si5324 driver in runtime should be now equal in function to the one in artiq.
kasli-soc has no way of doing a hard reset on the peripheral, but zc706 does.
Reviewed-on: #132
Co-authored-by: mwojcik <mw@m-labs.hk>
Co-committed-by: mwojcik <mw@m-labs.hk>
2021-08-04 09:12:38 +08:00
Sebastien Bourdeauducq
f543501012
si5324: remove debug print
2021-08-02 14:14:59 +08:00
Sebastien Bourdeauducq
111ac0c716
runtime: clock Si5324 from its crystal
2021-07-30 17:07:58 +08:00
Sebastien Bourdeauducq
8128dc0b56
Revert "kasli-soc: work around I2C breakage ( #130 )"
...
This reverts commit f1fd55dee5
.
2021-07-30 16:55:06 +08:00
Sebastien Bourdeauducq
cbcda286dc
Revert "README: stable ARTIQ channel"
...
This reverts commit 4f1689f254
.
2021-07-07 18:07:49 +08:00
Sebastien Bourdeauducq
dcb6129b0e
update dependencies
2021-07-05 13:56:40 +08:00
Sebastien Bourdeauducq
f5933092c9
nixpkgs 21.05
2021-06-29 15:07:26 +08:00
Sebastien Bourdeauducq
f25e261bdd
update dependencies
2021-06-25 17:12:47 +08:00
Sebastien Bourdeauducq
44c2c0fe4d
support Kasli-SoC in run scripts
2021-06-25 17:03:55 +08:00