Sebastien Bourdeauducq
0cd74533ca
runtime: more explicit message about startup clock failure
2015-07-28 00:38:38 +08:00
Sebastien Bourdeauducq
7feaca7c7c
runtime: allow selecting external clock at startup
2015-07-28 00:19:07 +08:00
Sebastien Bourdeauducq
09d837e4ba
runtime: monitor RTIO clock status
2015-07-28 00:05:24 +08:00
Sebastien Bourdeauducq
fe57308e71
runtime: support for RTIO PLL
2015-07-27 20:11:31 +08:00
whitequark
244ace19e1
Add artiq_raise_from_c macro.
2015-07-27 13:56:18 +03:00
whitequark
edffb40ef2
On uncaught exception, execute finally clauses and collect backtrace.
2015-07-27 13:51:24 +03:00
whitequark
2939d4f0f3
Add tests for finally clause and reraising.
2015-07-27 12:36:21 +03:00
whitequark
a83e7e2248
Add tests for exceptional control flow.
2015-07-27 10:22:28 +03:00
whitequark
7c77dd317a
Implement __artiq_personality.
2015-07-27 09:10:20 +03:00
Sebastien Bourdeauducq
117b361a06
Merge branch 'master' of github.com:m-labs/artiq
2015-07-27 11:42:29 +08:00
Sebastien Bourdeauducq
d3f05e414a
runtime: account for RTIO_FINE_TS_WIDTH in time buffers
2015-07-27 10:50:25 +08:00
whitequark
bb5fe60137
Implement exception raising.
2015-07-27 05:46:43 +03:00
whitequark
14c7b15785
Add a test harness for exceptions.
...
The libunwind.h is duplicated here so that it would be possible
to test the Python parts without pulling in misoc.
2015-07-27 04:18:12 +03:00
whitequark
1d9f40833d
Update ldscripts with -fPIC support.
2015-07-26 16:16:48 +03:00
Sebastien Bourdeauducq
aba2d3f112
runtime: process essential kernel CPU messages at all time
2015-07-25 16:26:04 +08:00
Sebastien Bourdeauducq
34aacd3c5f
complete AD9914 support (no programmable modulus, untested)
2015-07-08 17:22:43 +02:00
Sebastien Bourdeauducq
8a33d8c868
never stop RTIO counter
2015-07-07 15:29:38 +02:00
Sebastien Bourdeauducq
d20fb5abb2
remove workaround
2015-07-07 13:46:14 +02:00
Sebastien Bourdeauducq
753d61b38f
complete support for TTL clock generator
2015-07-04 18:36:01 +02:00
Sebastien Bourdeauducq
944bfafefa
soc: support QC2 and AD9914 (untested)
2015-06-28 21:37:27 +02:00
Sebastien Bourdeauducq
b6310b72db
runtime: fix log formatting
2015-06-28 17:29:52 +02:00
Sebastien Bourdeauducq
8b5b219a18
runtime: provide fixdfdi
2015-06-27 23:51:48 +02:00
Sebastien Bourdeauducq
3bd7f11737
update lwip
2015-06-27 22:48:41 +02:00
Sebastien Bourdeauducq
2d475e146b
runtime/flash_storage: use log not printf
2015-06-27 22:47:36 +02:00
Sebastien Bourdeauducq
87ea1433d3
dds: all working
2015-06-20 18:42:39 -06:00
Sebastien Bourdeauducq
5a9bdb2e33
DDS monitoring
2015-06-19 15:30:17 -06:00
Sebastien Bourdeauducq
03fe71228b
dds: phase computation fixes
2015-06-19 11:01:43 -06:00
Florent Kermarrec
449964cce8
runtime/mailbox: remove flush of L2 cache (L2 cache is now shared between CPUs)
2015-06-18 12:18:45 +02:00
Sebastien Bourdeauducq
b2af0f6cc3
soc,runtime: support TTL override
2015-06-09 19:51:02 +08:00
Sebastien Bourdeauducq
37c7ea31c3
gui: TTL override support
2015-06-06 00:03:30 +08:00
Sebastien Bourdeauducq
a2ae5e4706
runtime: report TTL status over UDP
2015-06-03 18:26:19 +08:00
Sebastien Bourdeauducq
59b339462c
Merge branch 'master' of github.com:m-labs/artiq
2015-06-02 17:45:16 +08:00
Sebastien Bourdeauducq
b81151eb42
soc: rtio monitor
2015-06-02 17:41:40 +08:00
Yann Sionneau
ed95038681
flash_storage: remove useless parentheses
2015-05-29 11:11:29 +02:00
Yann Sionneau
575dfade38
flash_storage comm: use OK/ERROR replies instead of specific FLASH_WRITE_REPLY
2015-05-29 11:10:40 +02:00
Yann Sionneau
c32133b815
flash_storage: avoid crash if a record size gets corrupted to be less than 6
2015-05-27 12:56:21 +02:00
Yann Sionneau
4bf7875b87
flash_storage: refactor + unit tests + artiq_coreconfig.py CLI + doc
2015-05-27 18:06:12 +08:00
Sebastien Bourdeauducq
6c35d066fc
runtime: add missing include
2015-05-21 12:00:48 +08:00
Sebastien Bourdeauducq
0ca42dbdbe
runtime/dds: send one FUD per command in a batch, compensate POW
2015-05-09 17:26:36 +08:00
Sebastien Bourdeauducq
ce4b5739ed
runtime: reset all DDSes upon startup
2015-05-09 17:12:38 +08:00
Sebastien Bourdeauducq
b22b8b661b
runtime: fix rtio channel selection in dds batch
2015-05-08 22:09:08 +08:00
Sebastien Bourdeauducq
55f2fef576
runtime: support DDS batches
2015-05-08 16:51:54 +08:00
Sebastien Bourdeauducq
53c6339307
runtime: break ttl-specific functions from rtio
2015-05-08 16:20:12 +08:00
Sebastien Bourdeauducq
a36c51eb83
DDS over RTIO (batch mode not supported yet)
2015-05-08 14:44:39 +08:00
Sebastien Bourdeauducq
4048568d8e
support kernel handover with coherent time
2015-05-02 23:41:49 +08:00
Sebastien Bourdeauducq
d8fdac6f86
runtime/bridge: factor rtio_init
2015-05-02 12:27:15 +08:00
Sebastien Bourdeauducq
050db0b0f5
runtime: support platforms without flash
2015-05-02 12:20:20 +08:00
Sebastien Bourdeauducq
8fe5c7ac01
runtime/test_mode: support setting O and OE separately
2015-05-02 12:16:09 +08:00
Sebastien Bourdeauducq
a61d701d47
rtio: decouple PHY reset from logic reset
2015-05-02 11:47:11 +08:00
Sebastien Bourdeauducq
4d31194343
runtime: load idle kernel from flash storage
2015-05-01 13:49:26 +08:00
Sebastien Bourdeauducq
d3753c9643
runtime: get IP and MAC from flash storage
2015-05-01 12:34:47 +08:00
Sebastien Bourdeauducq
56c85dd2cb
style
2015-04-30 20:03:29 +08:00
Sebastien Bourdeauducq
87ae250baa
runtime: validate pointers received from kernel CPU
2015-04-30 10:52:50 +08:00
Sebastien Bourdeauducq
967145f2dc
watchdog support on core device (broken by bug similar to issue #19 )
2015-04-29 12:58:37 +08:00
Sebastien Bourdeauducq
f60868f084
runtime/kloader: clear kernel-CPU mailbox on stop to avoid fake spurious messages
2015-04-29 12:57:09 +08:00
Sebastien Bourdeauducq
37ac6c4542
runtime: [HACK] workaround for intermittent RPC crashes
2015-04-28 17:15:39 +08:00
Sebastien Bourdeauducq
1ce41d567c
runtime/mailbox: fix mailbox_acknowledged for first message
2015-04-28 16:51:55 +08:00
Sebastien Bourdeauducq
53055a045d
test_mode: flash storage access
2015-04-28 13:01:54 +08:00
Sebastien Bourdeauducq
9fceae7515
runtime/session: simplify buffer management
2015-04-28 13:01:22 +08:00
Sebastien Bourdeauducq
9b62e7e77b
runtime,coredevice: support session reset for serial
2015-04-28 02:11:58 +08:00
Sebastien Bourdeauducq
8a19766278
runtime,comm_generic: improve and fix list encoding
2015-04-28 01:31:55 +08:00
Sebastien Bourdeauducq
86c012924e
targets: rename AMP->Top, merge peripherals
2015-04-28 00:18:54 +08:00
Sebastien Bourdeauducq
938e1c2842
Remove UP support.
...
The only advantage of UP is to support the Papilio Pro, but that port is also very limited in other ways and the Pipistrello provides a more reasonable platform that also supports AMP.
On the other hand, RPCs on UP are difficult to implement with the session.c protocol system (without an operating system or coroutines), along with many other minor difficulties and maintainance issues. Planned features such as watchdogs in the core device are also difficult on UP.
2015-04-27 20:43:45 +08:00
Sebastien Bourdeauducq
1ca49787b4
runtime: update lwip
2015-04-27 20:34:34 +08:00
Sebastien Bourdeauducq
bd7a031466
flash_storage: cleanup and compile
2015-04-27 17:48:31 +08:00
Yann Sionneau
13119eb9ee
flash_storage: add key-value flash storage support
2015-04-27 11:39:19 +08:00
Sebastien Bourdeauducq
110f7bce64
runtime: saner lwipopts
2015-04-25 18:58:45 +08:00
Sebastien Bourdeauducq
8f5f428c0b
runtime/main: fix sys_now
2015-04-24 18:30:27 +08:00
Sebastien Bourdeauducq
934a6b0495
runtime,coredevice: Ethernet support (buggy)
2015-04-23 23:22:40 +08:00
Sebastien Bourdeauducq
1968304b4f
runtime: upgrade lwip (fixes zero-copy tcp_write)
2015-04-23 19:13:09 +08:00
Sebastien Bourdeauducq
d99976dc37
runtime/elf_loader: add alignment comment
2015-04-23 19:06:23 +08:00
Sebastien Bourdeauducq
459da723d3
liblwip/netif/liteethif: follow lwip doc recommendations regarding end of pbuf chain detection
2015-04-23 17:21:42 +08:00
Sebastien Bourdeauducq
7290013671
liblwip/netif/liteethif: fix buffer pointer arithmetic
2015-04-23 17:18:03 +08:00
Sebastien Bourdeauducq
6a80944c3f
runtime: increase packet buffer size
2015-04-22 15:01:58 +08:00
Sebastien Bourdeauducq
e4251c7f41
runtime: get lwip to run
2015-04-22 15:01:32 +08:00
Sebastien Bourdeauducq
d5d49e73d2
runtime: fix user_kernel_state on UP
2015-04-22 11:41:54 +08:00
Sebastien Bourdeauducq
18106cc014
comm: refactor to support lwip event model
2015-04-22 01:31:31 +08:00
Sebastien Bourdeauducq
904bcd247f
runtime: only build liteethif if Ethernet core present
2015-04-18 22:25:27 +08:00
Sebastien Bourdeauducq
b972abd142
runtime: fix test mode on UP
2015-04-18 15:30:46 +08:00
Sebastien Bourdeauducq
4c6387929b
runtime: link against lwip, cleanups
2015-04-17 16:38:46 +08:00
Sebastien Bourdeauducq
91cd79a8a3
soc/runtime: add lwip (thanks Florent)
2015-04-17 14:51:30 +08:00
Sebastien Bourdeauducq
6a5f58e5a9
runtime: support test mode on AMP
2015-04-16 21:47:05 +08:00
Sebastien Bourdeauducq
546996f896
coredevice,runtime: put ref_period into the ddb
2015-04-16 15:15:38 +08:00
Robert Jördens
a5ea40478c
runtime/Makefile: use printf instead of non-portable echo -e
2015-04-15 21:13:20 -06:00
Florent Kermarrec
fd2def4951
generate MAILBOX_BASE with SoC and use it in runtime
...
to avoid possible future mismatches between SoC/runtime, constants that can be easily generated from SoC should be defined this way.
2015-04-15 20:40:28 +08:00
Sebastien Bourdeauducq
c1f9fc2ae4
runtime: update mailbox address
2015-04-15 14:11:12 +08:00
Sebastien Bourdeauducq
9cfe00e23e
runtime: keep .bin
2015-04-15 14:05:34 +08:00
Sebastien Bourdeauducq
ffe4ee9137
runtime: build flash image by default
2015-04-15 12:43:15 +08:00
Robert Jördens
a336c95d0a
runtime/Makefile: work around echo vs bin/echo
2015-04-14 21:26:49 -06:00
Sebastien Bourdeauducq
4c10182c9f
rtio: refactor, use rtlink
2015-04-14 19:44:45 +08:00
Florent Kermarrec
24b2bd7b6f
soc/targets: use mem_map, fix addressing conflict on UP between ethernet and dds
2015-04-11 21:32:11 +08:00
Sebastien Bourdeauducq
cb2596bd81
coredevice/comm: split protocol to allow reuse for Ethernet
2015-04-10 00:59:35 +08:00
Sebastien Bourdeauducq
44304a33b2
soc,runtime: define RTIO FUD channel number in targets
2015-04-09 00:35:11 +08:00
Sebastien Bourdeauducq
5538ad5c70
runtime: support RPC exceptions on AMP
2015-04-06 22:28:10 +08:00
Sebastien Bourdeauducq
45bb9d8840
runtime: support RPC and log on AMP
2015-04-06 19:40:12 +08:00
Sebastien Bourdeauducq
f26c53cb35
runtime: use KERNELCPU_PAYLOAD_ADDRESS on UP
2015-04-05 22:16:51 +08:00
Sebastien Bourdeauducq
0c62f0f69c
runtime: remove generated service_table.h
2015-04-05 22:08:20 +08:00
Sebastien Bourdeauducq
72f9f7ed79
runtime: implement mailbox, use it for kernel startup, exceptions and termination
2015-04-05 22:07:34 +08:00
Sebastien Bourdeauducq
1bca614d11
runtime: use UP/AMP terminology
2015-04-05 17:55:05 +08:00
Sebastien Bourdeauducq
cbdc1ba46f
runtime: biprocessor support (incomplete, WIP)
2015-04-04 22:08:32 +08:00