Commit Graph

328 Commits (master)

Author SHA1 Message Date
pca006132 26ac3194d1 Exception handling: copied eh_artiq from current artiq firmware. 2020-07-02 10:08:16 +08:00
pca006132 0a35f68562 Added libpanic_unwind/dwarf from rustc as libdwarf. 2020-07-02 09:51:47 +08:00
pca006132 6be44c3483 Libunwind: build libunwind with rust bindings 2020-07-02 09:51:44 +08:00
pca006132 9282dcffdb Dyld: provides unwind section for libunwind 2020-07-02 09:50:53 +08:00
pca006132 d915211264 Libunwind: patched phase1 end of stack detection. 2020-07-02 09:50:53 +08:00
pca006132 f82ffe8cf2 Libunwind: use dyld instead of static linker symbols for unwind section. 2020-06-30 17:12:02 +08:00
pca006132 b21cccb4d2 Libunwind: added system header 2020-06-30 17:10:45 +08:00
pca006132 fd229a1b26 Copied LLVM Libunwind from commit 3e6ec2a 2020-06-30 16:52:49 +08:00
pca006132 29dd311c0f Runtime config: fixed warning 2020-06-29 10:05:15 +08:00
Sebastien Bourdeauducq 8d1b9f7f23 dyld: fix compilation warning 2020-06-28 18:15:48 +08:00
Astro 53d931dccc szl: invoke ps7_init::apply() at start 2020-06-27 02:36:36 +02:00
Astro d8745074b4 update dependencies 2020-06-27 02:29:45 +02:00
Sebastien Bourdeauducq a71ee143ac update dependencies 2020-06-25 20:21:44 +08:00
Sebastien Bourdeauducq 507edb5a78 make config demo errors non-fatal 2020-06-25 11:27:50 +08:00
Astro 654d65a6d5 dyld: keep exidx p_vaddr as it is contained in LOAD sections already
should fix Gitea issue #17
2020-06-25 02:03:29 +02:00
Astro 571ab66114 dyld: keep EXIDX section data through program header entry 2020-06-24 00:18:34 +02:00
Astro 64cdf0ade3 sd_reader: use const for magic numbers 2020-06-18 23:56:32 +02:00
Astro d9bd42389f kernel: flush now write-buffered dcache of image before execution 2020-06-18 20:14:02 +02:00
Astro 06ad8dfe27 szl: flush now write-buffered dcache of DDR pages before executing instructions in them 2020-06-18 18:33:47 +02:00
Astro f750234cb5 update dependencies 2020-06-18 18:33:32 +02:00
Sebastien Bourdeauducq 24853ab090 szl: move bss and stack to OCM3 to save space 2020-06-18 17:28:34 +08:00
pca006132 6608c16f46 Config: Renamed ConfigNotFound into KeyNotFoundError. 2020-06-18 12:05:24 +08:00
pca006132 f43ad05be5 Testing for config. 2020-06-18 11:33:52 +08:00
pca006132 a55a6291a4 SD reader: optimized stack and binary size 2020-06-18 11:33:18 +08:00
pca006132 2b1b0dc49f Load PL: simplify logic by using fatfs find_file directly. 2020-06-18 11:32:23 +08:00
pca006132 228c0c813d SD reader: changed from &mut to owning. 2020-06-18 11:31:46 +08:00
pca006132 f7bb339275 Config: implemented config struct. 2020-06-18 11:29:33 +08:00
Sebastien Bourdeauducq e43511c95f update dependencies 2020-06-16 18:08:12 +08:00
pca006132 0dc0bb391d
add support for loading bitstream from bootimage. 2020-06-16 17:45:54 +08:00
Sebastien Bourdeauducq f9ccf908dd update dependencies 2020-06-15 17:14:03 +08:00
pca006132 e4b17f9473 Fixed incorrect byte_addr after multiple block read... 2020-06-15 15:12:22 +08:00
Sebastien Bourdeauducq da6bda9a06 add config skeleton 2020-06-13 16:44:54 +08:00
Sebastien Bourdeauducq f52f10abc2 remove unnecessary dereferencing 2020-06-13 16:43:32 +08:00
pca006132 1138db34a2 add SD card FAT filesystem interface 2020-06-13 15:33:28 +08:00
Sebastien Bourdeauducq e77cb5de7e fix comment in previous commit 2020-06-13 15:27:51 +08:00
Astro e6b8bf5481 provide many move __aeabi_* calls 2020-06-11 22:49:52 +02:00
Sebastien Bourdeauducq dc78868109 update dependencies and add fatfs 2020-06-11 17:36:23 +08:00
Sebastien Bourdeauducq 81b8fc8916 implement attribute writeback 2020-06-10 17:01:17 +08:00
Sebastien Bourdeauducq bc81fa2e48 handle recursive RPC return values 2020-06-09 13:03:08 +08:00
Sebastien Bourdeauducq 7387e42306 provide __aeabi_l2d 2020-06-09 12:57:13 +08:00
Sebastien Bourdeauducq b16ec2c6a8 provide mockups for all exception functions 2020-06-09 12:56:58 +08:00
Sebastien Bourdeauducq 12c2d658f3 tune heap/stack sizes 2020-06-09 12:56:18 +08:00
Sebastien Bourdeauducq 4d03ecc187 decode RPC exception 2020-06-08 18:32:44 +08:00
Sebastien Bourdeauducq bdf0831eb2 style 2020-06-08 18:16:38 +08:00
Sebastien Bourdeauducq c980b3e634 dyld: reduce verbosity 2020-06-08 17:57:13 +08:00
Sebastien Bourdeauducq b1161a0f71 process RPC replies (WIP) 2020-06-08 13:11:09 +08:00
Sebastien Bourdeauducq 06915ec25d rpc: make alloc async 2020-06-07 21:47:36 +08:00
Sebastien Bourdeauducq 7df6ab2149 rpc: use async-recursion 2020-06-07 21:30:33 +08:00
Sebastien Bourdeauducq f0588c49ed rpc: make receive async 2020-06-07 20:24:41 +08:00
Sebastien Bourdeauducq ef4bdbb668 rpc: enable logging 2020-06-07 20:23:43 +08:00
Sebastien Bourdeauducq 4b8bbdc3dc send RPC requests to host 2020-06-07 15:13:20 +08:00
Sebastien Bourdeauducq 1f23a1b86c enable FPU on Core1 2020-06-07 15:12:34 +08:00
Sebastien Bourdeauducq ed21457f28 replace libio with core_io
* based on https://github.com/jethrogb/rust-core_io but could not get the packaging scripts to work
  and the repos is unmaintained anyway, so just copied the result
* more features and more up-to-date
* compatible with the fatfs crate
2020-06-05 17:14:36 +08:00
Sebastien Bourdeauducq a915ed172a send RPC requests to comms CPU, handle kernel termination 2020-06-05 11:48:34 +08:00
Sebastien Bourdeauducq 8e68e65ca7 remove dead code 2020-06-05 11:47:36 +08:00
Sebastien Bourdeauducq d65df2f454 rpc: revert to libio
* Recursive async fns in Rust are a mess and not usable.
* When doing ARTIQ async RPCs, it is simpler to encode the buffer on the kernel CPU and pass that to the comms CPU,
  instead of tracking when kernel CPU memory with the RPC values can be freed.
2020-06-03 11:17:49 +08:00
Sebastien Bourdeauducq 9c0cf7e84c remove unneeded import 2020-06-03 11:17:37 +08:00
Sebastien Bourdeauducq 6454f994af add libio from ARTIQ 2020-06-03 11:17:28 +08:00
Sebastien Bourdeauducq cb24b82e68 rpc: strings 2020-06-01 18:21:04 +08:00
Sebastien Bourdeauducq 7aa9a95c21 add RPC protocol module (WIP) 2020-06-01 18:02:21 +08:00
Sebastien Bourdeauducq 15b2b253cf build for NIST variants 2020-05-14 15:30:50 +08:00
Sebastien Bourdeauducq af08b1ad00 update dependencies 2020-05-14 09:28:16 +08:00
Sebastien Bourdeauducq 1222db56e1 use different user_led to avoid VADJ problems with NIST backplanes 2020-05-14 09:23:43 +08:00
Sebastien Bourdeauducq aeefdc862d update dependencies 2020-05-09 13:48:27 +08:00
Sebastien Bourdeauducq 7c6f57540e prevent cargo xbuild from creating sysroot in source tree. Closes #6 2020-05-09 13:21:55 +08:00
Sebastien Bourdeauducq b2fe33f6ea zc706: add support for NIST backplanes 2020-05-07 17:05:00 +08:00
Sebastien Bourdeauducq 4464b85ab3 move build artifacts out of tree 2020-05-07 13:52:40 +08:00
Sebastien Bourdeauducq 743b0e198d cargo: remove outdated runner entry 2020-05-07 13:50:21 +08:00
Sebastien Bourdeauducq 47261a1d84 update comment/message 2020-05-07 12:43:53 +08:00
Astro d08f4552ab libdyld: fix pltrel_sz, remove debug output 2020-05-07 01:44:26 +02:00
Sebastien Bourdeauducq 90faeb6fa2 use new core1 startup mechanism 2020-05-06 22:16:34 +08:00
Sebastien Bourdeauducq 198985cd6d runtime: check PL DONE 2020-05-04 22:27:15 +08:00
Sebastien Bourdeauducq 07efdc6799 szl: cleanup 2020-05-04 22:17:59 +08:00
Sebastien Bourdeauducq cbd591b86b update dependencies 2020-05-03 09:59:24 +08:00
Sebastien Bourdeauducq b7695d9313 typo 2020-05-02 11:50:29 +08:00
Sebastien Bourdeauducq bca2b3fe50 comms: add comment about closed connection handling 2020-05-02 11:44:10 +08:00
Sebastien Bourdeauducq 90a19f9986 Merge branch 'master' of git.m-labs.hk:M-Labs/artiq-zynq 2020-05-01 10:08:17 +08:00
Sebastien Bourdeauducq 2439ba1f88 add impure incremental build process, document 2020-05-01 10:07:38 +08:00