forked from M-Labs/artiq
1
0
Fork 0
Commit Graph

4269 Commits

Author SHA1 Message Date
whitequark 798a5f70df Revert "runtime: remove some redundant libm functions copied inline."
This reverts commit fee75bd50f.

LLVM does not have lround as a libcall and this inhibits LICM.
2016-11-08 11:54:17 +00:00
Sebastien Bourdeauducq 95acc9b9d4 drtio: allow specifying 7series RXSynchronizer initial phase 2016-11-08 16:52:40 +08:00
Sebastien Bourdeauducq bcb5053fb6 drtio: fix master TSC KCSR readout 2016-11-08 16:40:50 +08:00
Sebastien Bourdeauducq 651d538217 Merge branch 'master' into drtio 2016-11-08 16:11:18 +08:00
Sebastien Bourdeauducq 8c86920364 drtio: add examples 2016-11-08 16:11:10 +08:00
David Nadlinger 6e77f65d50 compiler: Clarify recv_rpc value names and documentation [nfc]
Previously, the phi emitted for the pointer parameter to recv_rpc was –
rather confusingly – called "size", and the pseudo-code in the comment
had bit-rotted.

Signed-off-by: David Nadlinger <code@klickverbot.at>
2016-11-07 14:38:21 +00:00
Sebastien Bourdeauducq 78f18a12eb runtime: basic DRTIO init code 2016-11-07 19:34:34 +08:00
Sebastien Bourdeauducq 453e8b7eb3 runtime: support configurations without moninj, log or dds 2016-11-06 23:53:10 +08:00
Sebastien Bourdeauducq 266ae292d9 runtime: support configurations without moninj, log or dds 2016-11-06 23:52:27 +08:00
Sebastien Bourdeauducq c4cd269afc Merge branch 'master' into drtio 2016-11-06 00:13:32 +08:00
Robert Jördens d158c69be0 phaser: fix frequency comment 2016-11-05 16:54:23 +01:00
Sebastien Bourdeauducq 47b9868c68 kc705_drtio_master: pretend drtio is rtio 2016-11-05 23:48:29 +08:00
Sebastien Bourdeauducq de065b7578 kc705_drtio_satellite: set output dir 2016-11-05 23:48:15 +08:00
David Nadlinger 7dcc987dd7 compiler: Fix break/continue targets in loop else blocks
Previously, they would still target the respective labels in the
just-exited loop.

Signed-off-by: David Nadlinger <code@klickverbot.at>
2016-11-05 02:35:01 +00:00
Sebastien Bourdeauducq de47123737 drtio: connect RST and LOCKED on 7series RXSynchronizer MMCM 2016-11-05 00:24:49 +08:00
Sebastien Bourdeauducq 5019b03f10 drtio: add echo and packet count test 2016-11-04 22:24:35 +08:00
Sebastien Bourdeauducq df7294792c drtio: break some RT features into manager, add echo request CSR 2016-11-04 19:38:24 +08:00
Sebastien Bourdeauducq 1145a193dd drtio: fix ack of echo and set_time requests 2016-11-04 18:36:43 +08:00
Sebastien Bourdeauducq 3da1cce783 drtio: add packet counters 2016-11-04 17:53:42 +08:00
whitequark f102f2d4e6 manual: fix rustc invocation. 2016-11-04 09:11:45 +00:00
Sebastien Bourdeauducq 8ec73cb9ec dashboard: pack moninj widgets (#603) 2016-11-04 16:20:46 +08:00
Sebastien Bourdeauducq 747da3da15 drtio: differentiate local and remote unknown packet type errors 2016-11-04 15:17:19 +08:00
Sebastien Bourdeauducq f76aa249ce drtio: squelch 7series RXSynchronizer outputs when MMCM is unlocked 2016-11-04 15:16:48 +08:00
Sebastien Bourdeauducq 9d58b4516c manual: Vivado is now default 2016-11-04 11:54:04 +08:00
whitequark 208f3f8568 manual: fix Rust installation instructions. 2016-11-04 03:35:59 +00:00
Sebastien Bourdeauducq 77bc247744 manual: add missing cd 2016-11-04 00:04:26 +08:00
Sebastien Bourdeauducq a252b88a36 manual: fix binutils patch download URL 2016-11-03 23:56:13 +08:00
Sebastien Bourdeauducq 6a75837261 drtio: fix link_layer remote RX ready detection 2016-11-03 20:15:04 +08:00
Sebastien Bourdeauducq 1d027ffa95 drtio: fix gtx_7series comma alignment 2016-11-03 20:14:11 +08:00
Sebastien Bourdeauducq a4ba34bb2c drtio: cleanup test_full_stack 2016-11-03 20:13:31 +08:00
Sebastien Bourdeauducq ba58a8affd drtio/gtx_7series: paranoid reset deglitching 2016-11-02 18:30:22 +08:00
whitequark 00100148f1 Si5324: actually write value of N32 into registers. 2016-11-02 07:09:04 +00:00
Sebastien Bourdeauducq bee9774bd5 drtio: add link layer status CSR 2016-11-02 13:09:13 +08:00
Sebastien Bourdeauducq 1ed3278783 remove stale TODO 2016-11-02 10:53:54 +08:00
whitequark a6ae254796 Si5324: update to free run from XA/XB, with CKIN1 having priority. 2016-11-01 16:01:24 +00:00
whitequark b30734a105 runtime: fix a race condition with async RPCs.
session.rs has code like:

    while !rpc_queue::empty() {
        try!(process_kern_queued_rpc(stream, &mut session))
    }

    // A

    if mailbox::receive() != 0 {
        try!(process_kern_message(waiter, Some(stream), &mut session));
    }

If both an async and a mailbox RPC (async or large sync) are posted
at point A then they will be processed out of order.
This commit fixes the issue by flushing the async RPC queue before
posting any RPC to the mailbox.
2016-11-01 13:22:22 +00:00
whitequark 6fcd57a41a runtime: fix remaining async RPC bugs. 2016-11-01 10:33:57 +00:00
whitequark 2095d01b84 runtime: dirty hacks to remove allocations in ksupport. 2016-11-01 08:55:49 +00:00
whitequark c1e6d4b67c runtime: fix multiple async RPC bugs. 2016-11-01 06:51:44 +00:00
whitequark 636d4efe81 gateware: rewrite mailbox to use bits_for. 2016-11-01 06:28:43 +00:00
Sebastien Bourdeauducq 43cd970100 make set_dataset and mutate_dataset async RPCs 2016-11-01 11:11:41 +08:00
whitequark 18ae8d54a3 gateware: fix mailbox. 2016-11-01 02:33:00 +00:00
whitequark 898a716b91 runtime: work around mor1kx ignoring low bits of reset address.
Fixes #599.
2016-10-31 18:13:15 +00:00
Sebastien Bourdeauducq 0c1a76d668 unify rtio/drtio kernel interface 2016-11-01 00:30:16 +08:00
whitequark 617e345d16 gateware: fix kernel CPU exec address. 2016-10-31 15:16:35 +00:00
Sebastien Bourdeauducq 07ad00c1ca drtio: split kernel/system CSRs 2016-10-31 18:09:36 +08:00
Sebastien Bourdeauducq 9aa94e1a2d adapt to migen/misoc changes 2016-10-31 00:53:01 +08:00
Sebastien Bourdeauducq 2392113bb6 kc705: use misoc clock for false path 2016-10-30 11:16:04 +08:00
whitequark cd68577dbc compiler: add support for async RPCs. 2016-10-30 00:57:31 +00:00
whitequark 2ac85cd40f runtime: implement prototype background RPCs. 2016-10-29 21:34:25 +00:00