Commit Graph

362 Commits

Author SHA1 Message Date
mwojcik 4540b8ec98 share identifier_read between runtime and satman 2021-07-27 14:42:29 +02:00
mwojcik 4e5f1a0673 fixed compilation errors - runtime compiles now 2021-07-27 12:40:55 +02:00
mwojcik 76b085333f annotation fixes - no_std in libboard_artiq 2021-07-27 11:00:53 +02:00
mwojcik 630a934df0 removed mentions of fail, updated alloc 2021-07-27 10:27:43 +02:00
mwojcik 0d7d403edc merged proto_core_io with libio 2021-07-27 09:38:38 +02:00
mwojcik 5e39cd32d1 removed unused imports, added necessary. 2021-07-26 14:41:00 +02:00
mwojcik 522bea7e1c reverted build script with linker file arg. Hybrid solution. 2021-07-26 14:38:43 +02:00
mwojcik 2c3091e792 experimental: build script with linker file arg 2021-07-26 13:57:37 +02:00
mwojcik 8b780ec83b fixing compilation errors: moved libboard_zynq sources to src folder 2021-07-26 11:41:50 +02:00
mwojcik e081ea926b build script taken from runtime to libbuild_zynq, dependencies adjusted 2021-07-26 10:28:44 +02:00
mwojcik a06b485b67 build files copied from build_misoc 2021-07-23 14:59:29 +02:00
mwojcik 3af0ee6242 satman: moved i2c to libboard_zynq (no wrapper) 2021-07-23 14:45:48 +02:00
mwojcik b963bbbf77 satman: replaced ident with the one from runtime 2021-07-23 14:14:07 +02:00
mwojcik 415a3be8ce satman: removed irq::exception ref - no direct replacement 2021-07-23 14:11:05 +02:00
mwojcik 0502737481 satman: replaced clock with GlobalTimer completely 2021-07-23 13:15:07 +02:00
mwojcik 5e76f7c0b4 moved proto, moved logger, updated runtime 2021-07-23 11:28:16 +02:00
mwojcik f170104304 libboard_artiqzynq -> libboard_artiq; moved si5324 2021-07-23 11:15:31 +02:00
mwojcik d309409a84 satman: removed jcdg completely 2021-07-23 11:00:48 +02:00
mwojcik 7b25bc710e removed references for clock, replaced with timer 2021-07-22 14:39:27 +02:00
mwojcik 5fa575ce4c drtio_routing: made to use libconfig; moved logger 2021-07-22 12:15:20 +02:00
mwojcik 2647ef7249 moved si5324, added notes on required porting 2021-07-22 12:15:18 +02:00
mwojcik 60a8861a22 added libboard_artiqzync (?), moved more libs 2021-07-22 12:15:12 +02:00
mwojcik 731f52992f moved related libraries, culled unnecessary ones 2021-07-22 12:15:07 +02:00
mwojcik 7e97e86446 removed ad9154 and jesd204 stuff; notes on ports 2021-07-22 12:14:58 +02:00
spaqin 3656fcc510 drtio: moved satman fw 2021-07-21 09:25:37 +02:00
Sebastien Bourdeauducq dcb6129b0e update dependencies 2021-07-05 13:56:40 +08:00
Sebastien Bourdeauducq f25e261bdd update dependencies 2021-06-25 17:12:47 +08:00
Sebastien Bourdeauducq 2ba4d8935d fix compilation with nixpkgs 21.05
The environment variable is optional to keep compatibility with other build environments.

Closes #131
2021-06-25 15:57:39 +08:00
Sebastien Bourdeauducq 8c8a5d53b9 update dependencies 2021-06-19 22:51:25 +08:00
Sebastien Bourdeauducq 852123b42a kasli-soc: add RTIO LEDs 2021-05-30 20:40:53 +08:00
Sebastien Bourdeauducq f1fd55dee5 kasli-soc: work around I2C breakage (#130) 2021-05-29 17:13:41 +08:00
Sebastien Bourdeauducq 21d98711c1 use new smoltcp error code 2021-05-29 17:13:22 +08:00
Sebastien Bourdeauducq 0ae2138034 kasli-soc: preliminary si5324 support 2021-05-29 16:15:27 +08:00
Sebastien Bourdeauducq 1b474d2dd4 update dependencies 2021-05-29 14:20:23 +08:00
Sebastien Bourdeauducq 506c741238 support absence of gateware RTIO clock selection mux 2021-02-15 21:41:30 +08:00
Sebastien Bourdeauducq 8815f76114 kasli_soc: fix has_grabber 2021-02-15 21:41:02 +08:00
Sebastien Bourdeauducq ef18fa4c6d kasli_soc: add RTIO log channel 2021-02-15 19:56:59 +08:00
Sebastien Bourdeauducq faf9714e10 add demo build for Kasli-SoC 2021-02-15 19:52:13 +08:00
Sebastien Bourdeauducq 8d4e42be32 remove redpitaya and coraz7 support 2021-02-15 19:30:13 +08:00
Astro fcb38fae6c runtime: disable TCP delayed ack 2021-02-08 03:24:18 +01:00
Astro bfd8343876 update zynq-rs and dependencies (smoltcp 0.7.0) 2021-02-08 03:24:18 +01:00
Sebastien Bourdeauducq 4039431533 kasli_soc: fix eem iostandards 2021-02-07 22:34:29 +08:00
Sebastien Bourdeauducq 3f9bd06468 add Kasli-SoC generic gateware builder (WIP) 2021-02-07 14:44:32 +08:00
pca006132 bb65074254 updated zynq-rs and IRQ handling 2021-01-28 12:56:54 +08:00
pca006132 c2a6fb72f7 updated zynq-rs dependency 2021-01-26 12:38:09 +08:00
pca006132 faa335461d runtime: modified protocols to use device endian 2021-01-22 13:36:38 +08:00
pca006132 be01fbd943 runtime/irq: use assembly for naked IRQ handler
and solves the bug introduced due to stack unwinding...
2021-01-18 17:08:04 +08:00
pca006132 9e8b554c6d runtime/kernel/core1: use correct ABI 2021-01-18 16:43:30 +08:00
pca006132 b4ff6dda24 runtime: use naked function for IRQ
non-naked IRQ would somehow trigger interrupts after several kernel
restarts, investigating
2021-01-18 10:38:50 +08:00
pca006132 35204d4716 fixed new compiler warnings 2021-01-15 17:55:58 +08:00
pca006132 93493397ae updated zynq-rs dependency 2021-01-15 17:55:47 +08:00
Astro e5207b86db update rust dependencies 2020-12-24 01:17:24 +01:00
Astro 28fe61b061 runtime: add feature target_kasli_soc 2020-12-23 20:11:43 +01:00
Astro ce55e2ed23 update rust dependencies 2020-12-23 17:02:19 +01:00
Astro cb9dae1951 update rust dependencies 2020-11-20 17:54:09 +01:00
Sebastien Bourdeauducq 07b425a67a fix other compilation warnings 2020-11-16 14:57:20 +08:00
Sebastien Bourdeauducq 57ae8619f8 remove unnecessary no_mangle
no_mangle does nothing on extern items as per https://github.com/rust-lang/rust/issues/78989#issuecomment-726163973

Closes #115
2020-11-16 14:51:30 +08:00
Astro 32048ead20 gateware/coraz7: remove unused VARIANTS 2020-11-14 02:24:29 +01:00
Astro 113c8eb0b8 add coraz7 + redpitaya targets 2020-11-13 20:17:18 +01:00
Astro 9259cffeb2 i2c: add stubs for targets without i2c 2020-11-12 15:26:06 +01:00
David Nadlinger 7c336f7770 kernel/api: Add additional binary libm functions
Also factored out (f64, f64) -> f64 libm wrappers into
a macro, similar to the unary ones.
2020-11-11 01:24:44 +01:00
Sebastien Bourdeauducq 291a782db0 fix compiler warning
Feature is now stable.
2020-11-06 12:22:34 +08:00
Sebastien Bourdeauducq 479e6afd12 update Rust dependencies 2020-11-06 12:20:48 +08:00
pca006132 7dbffadf08 mgmt: implemented config write 2020-11-04 21:16:47 +08:00
Sebastien Bourdeauducq b7155c9ded Makefile: cleanup 2020-10-14 13:06:15 +08:00
Sebastien Bourdeauducq 5c62d6a141 update dependencies, disable custom compiler_builtins (#113) 2020-10-13 21:51:40 +08:00
Sebastien Bourdeauducq eab839aed0 follow changes in zynq-rs 2020-10-13 19:12:55 +08:00
pca006132 a374d8a02f runtime/kernel/dma: reduced replay overhead
We can just flush the cache once when we get the handle, instead of
everytime before replay.
2020-09-09 21:25:03 +08:00
pca006132 03d9827a5a acpki: working 2020-09-09 21:24:49 +08:00
Sebastien Bourdeauducq 86b9045417 use liconfig, libcoreio, szl from zynq-rs 2020-09-09 18:44:12 +08:00
Sebastien Bourdeauducq 7e26a87aed fix previous commit 2020-09-09 18:12:39 +08:00
Sebastien Bourdeauducq a277e89b3a Makefile: fix runtime.bin target 2020-09-09 17:01:14 +08:00
pca006132 1e742cc390 updated zynq-rs dependency 2020-09-07 16:18:50 +08:00
Sebastien Bourdeauducq 2fe73505c8 improve i2c error reporting 2020-09-06 00:38:28 +08:00
Sebastien Bourdeauducq 36d8ffec3b expose i2c to kernels 2020-09-06 00:11:19 +08:00
Sebastien Bourdeauducq 91ed035bef makefile: fix szl rebuild (#108) 2020-09-06 00:10:44 +08:00
pca006132 d5a91a7697 updated zynq-rs for more CPU options 2020-09-04 16:43:07 +08:00
pca006132 5da76f2abb enabled cpu program flow prediction 2020-09-04 13:25:17 +08:00
pca006132 5e4bf8bbf7 runtime/comms: Faster RPC alloc
We do busy polling for some time before doing await, for small
allocations we could avoid the context switching and reduce the latency.
2020-09-03 16:58:44 +08:00
pca006132 cdc8ad8aee runtime/kernel/control: fixed memory leak 2020-09-03 16:51:51 +08:00
pca006132 805f1d4eff runtime: increased heap size 2020-09-02 10:15:52 +08:00
pca006132 ae07c05db4 runtime: optimize for speed and fix deadlock
The previous method of taking the channel could cause deadlock, we now
use semaphore to signal if the channel is available instead of busy
polling the mutex.
2020-09-02 10:15:52 +08:00
Sebastien Bourdeauducq b0706f470d runtime: set default log level to Info 2020-09-01 17:11:21 +08:00
pca006132 ccf8ae5b5d szl: implemented #96
SZL no longer do self-extraction for runtime binary, it would boot from
SD/ethernet depending on the boot mode settings.
This allows a larger runtime binary, so we can optimize for speed in the
runtime firmware for better performance, and allow more features to be
added later.
2020-09-01 15:57:20 +08:00
pca006132 050b2457a4 runtime/main: removed bitstream loading code 2020-09-01 15:43:54 +08:00
pca006132 eb78e4e2da libconfig: refactored load_pl into bootgen
Now allows loading firmware.
2020-09-01 14:48:19 +08:00
pca006132 afecc83ecf libconfig/net_settings: made ipv6 optional feature
This is to prepare for szl, which cannot use ipv6 due to memory
limitation.
2020-09-01 14:48:19 +08:00
pca006132 04437e876c libconfig/load_pl: added alignment for devc buffer
According to the TRM, the buffer should be 64B aligned.
Without the alignment would cause failure for the DMA transaction.
It seems that the allocator would give some alignment, but to be more
correct we should specify that with the alloc interface.
2020-09-01 14:48:19 +08:00
pca006132 42f94487cf split config code into libconfig 2020-09-01 14:48:09 +08:00
pca006132 d474cf58a5 runtime/rpc: optimizations for list and arrays
Requires https://github.com/m-labs/artiq/pull/1510
This is the commit producing the result in the table.
2020-08-26 13:47:41 +08:00
pca006132 71427f8ec8 runtime/proto_async: simplify functions
And the compiler can use its intrinsic for byte rev.
2020-08-26 13:46:51 +08:00
Sebastien Bourdeauducq 538c012bc4 use new repos location for compiler-builtins-zynq 2020-08-25 16:24:30 +08:00
pca006132 ba162b3997 Fix pure build 2020-08-25 14:51:39 +08:00
pca006132 321a8e1522 runtime/kernel/core1: reset rtio after interrupted 2020-08-25 14:51:39 +08:00
pca006132 0fb278f7cb runtime/kernel/core1: allows getting backtrace when kernel is not loaded 2020-08-25 14:51:39 +08:00
pca006132 fa187fb37a runtime/kernel: use mutable static for shared channel
Mutex would prevent restart if we failed while waiting for RPC.
2020-08-25 14:51:39 +08:00
pca006132 e592efb2b8 enabled L2 cache and optimized ethernet 2020-08-25 14:51:39 +08:00
Astro 760f46a115 update dependencies 2020-08-17 19:17:42 +02:00
David Nadlinger 6ccd0cb389 runtime/kernel: Expose libm::atanh 2020-08-09 20:06:09 +01:00
David Nadlinger 63250240d2 runtime/kernel: Expose __powidf2 2020-08-09 19:17:38 +01:00