Commit Graph

668 Commits

Author SHA1 Message Date
whitequark
b55ce66a1b Reinstate accidentally removed aqctl_corelog.
Closes #1008.
2018-05-22 21:31:34 +00:00
4e5fe672e7 kasli: add tester target 2018-05-21 17:43:39 +08:00
37bd0c2566 kasli: add USTC target 2018-05-18 16:15:07 +08:00
6476219296 frontend: fix permissions 2018-05-18 00:10:46 +08:00
whitequark
31c6c79204 firmware: implement an edge profiler.
It doesn't work extremely well, and the results can be somewhat
confusing, and it needs a libunwind patch, but it's the best I could
do and it seems still useful.
2018-05-16 21:53:53 +00:00
whitequark
ca93b94aea firmware: move config requests to management protocol.
They were only in session protocol because of historical reasons.
2018-05-16 14:32:49 +00:00
whitequark
a39f8d6634 artiq_devtool: use CommMgmt instead of shelling out to artiq_coremgmt.
(Which no longer exists.)

This also fixes `artiq_devtool hotswap` to work without
an `artiq_devtool connect` running in background.
2018-05-16 14:08:32 +00:00
whitequark
d446a3293e frontend: merge core{config,log,boot,debug,profile} into coremgmt. 2018-05-16 14:08:32 +00:00
6b811c1a8b sayma: fix runtime/rtm gateware address conflict 2018-05-09 19:47:29 +08:00
whitequark
a148729bf8 artiq_flash, artiq_devtool: add support for ssh -J option. 2018-05-05 02:50:01 +00:00
whitequark
5ebc626cf4 artiq_coreprofile: fix an inverted option. 2018-05-05 00:49:42 +00:00
whitequark
b1d349cc1b firmware: implement a sampling profiler.
Does not yet support constructing call graphs.
2018-05-05 00:44:40 +00:00
d2d02ae353 artiq_coredebug: fix permissions 2018-04-22 15:02:17 +08:00
whitequark
3b054855ec firmware: add allocator debug feature, invoked by artiq_coredebug frontend. 2018-04-21 19:39:46 +00:00
eac447278f kasli: add MITLL variant 2018-04-17 19:00:11 +08:00
whitequark
87c2f119a5 artiq_devtool: add load action. 2018-03-25 20:29:51 +00:00
0635907699 artiq_flash: fix cmdline formatting 2018-03-22 19:10:29 +08:00
46d5af31a1 artiq_flash: enclose filename in curly braces before passing to OpenOCD
Closes #927
2018-03-22 17:20:48 +08:00
eeedcfbdd7 artiq_flash: do not suppress useful backtrace information 2018-03-22 17:11:21 +08:00
f5a1001114 suservo: add device database and artiq_flash variant 2018-03-21 08:53:26 +00:00
whitequark
5cb2602021 artiq_devtool: flash gateware if -g is passed. 2018-03-15 08:33:53 +00:00
whitequark
158ceb0881 artiq_devtool: add kasli target. 2018-03-14 18:13:13 +00:00
29d42f4648 artiq_flash: add kasli sysu 2018-03-02 15:49:41 +08:00
1c57d27ae2 slave_fpga: use sayma_rtm magic 2018-03-01 18:32:19 +01:00
54984f080b artiq_flash: flash RTM firmware
based on whitequark's work in f95fb27

m-labs/artiq#813
2018-02-28 19:29:01 +01:00
cedecc3030 Revert "firmware: Sayma RTM FPGA bitstream loading prototype (#813)."
This reverts commit f95fb273f1.

Will be replaced with a bitbang/GPIO based version.
2018-02-28 18:43:56 +01:00
whitequark
f95fb273f1 firmware: Sayma RTM FPGA bitstream loading prototype (#813). 2018-02-28 16:46:23 +00:00
whitequark
d572c0c34d artiq_devtool: fix the hotswap action. 2018-02-14 23:10:27 +00:00
whitequark
61c64a76be gateware: use a per-variant subfolder in --output-dir. (fixes #912)
This commit also adds support for --variant and --args
to artiq-devtool.
2018-02-06 08:19:01 +00:00
9fca7b8faa artiq_flash: also report sayma AMC SYSMONE1 data
requires hardware patch (https://github.com/m-labs/sinara/issues/495)
2018-01-30 15:17:11 +08:00
fb8c779b4f artiq_flash: report XADC data
* bump openocd
* only kasli, kc705, sayma rtm so far
2018-01-30 14:56:50 +08:00
whitequark
a669652854 artiq_flash: tell openocd to not listen on any network ports. 2018-01-30 03:12:06 +00:00
whitequark
0edc34a9e5 artiq_devtool: the proxy artiq_flash action doesn't exist anymore. 2018-01-28 15:19:17 +00:00
whitequark
885ab40946 conda: split RTM and AMC packages back.
This avoids multiplying the RTM compilation time by the number
of AMC packages.
2018-01-28 14:27:55 +00:00
whitequark
11a8b84355 Merge the build trees of sayma_amc and sayma_rtm targets.
This also makes them a single artiq_flash target, and a single
conda package.
2018-01-27 19:54:31 +00:00
whitequark
0b9c551962 artiq_flash: implement flash read functionality. 2018-01-27 19:54:31 +00:00
whitequark
eed2db3a98 artiq_flash: make the proxy action unnecessary. 2018-01-27 15:43:27 +00:00
whitequark
08101b631d artiq_devtool: fix typo. 2018-01-26 13:55:31 +00:00
ca4d5ae73e artiq_flash: add kasli drtio variants 2018-01-25 00:00:07 +08:00
25f3feeda8 refactor targets 2018-01-22 18:25:10 +08:00
whitequark
8598e475e9 artiq_flash: fix a refactoring mistake. 2018-01-20 08:30:42 +00:00
whitequark
115aa0d0d6 artiq_flash: support load action for Sayma RTM FPGA. 2018-01-20 07:23:50 +00:00
whitequark
94592c7a4c artiq_flash: unify flash handling in XC7 and Sayma programmers. 2018-01-20 07:23:50 +00:00
whitequark
1ffabac06f artiq_flash: use atexit for tempfile cleanup. 2018-01-20 07:23:50 +00:00
whitequark
83278a6edb artiq_flash: fix a refactoring bug. 2018-01-20 01:30:44 +00:00
whitequark
934bc53cb5 artiq_devtool: refactor. 2018-01-19 20:35:35 +00:00
whitequark
ebd02c4f43 artiq_flash: fix typo. 2018-01-19 18:53:49 +00:00
whitequark
1c7cb737ca artiq_flash: refactor. 2018-01-19 17:45:49 +00:00
whitequark
bcc39a8c9d artiq_flash: add --dry-run option. 2018-01-19 17:45:49 +00:00
whitequark
323c7e66cf artiq_devtool: fix help message. 2018-01-19 17:45:49 +00:00
whitequark
3c0b164e4d artiq_devtool: update for new board file convention.
Also fix a typo in documentation.
2018-01-19 09:43:03 +00:00
whitequark
4fd236d234 artiq_flash: cache transferred artifacts. 2018-01-19 08:28:04 +00:00
whitequark
3922a7c64b artiq_devtool: make locking reentrant. 2018-01-19 07:58:58 +00:00
whitequark
b553804e5a artiq_flash: implement network transparency. 2018-01-19 07:39:55 +00:00
whitequark
f77aa9b78f artiq_flash: rename sayma to sayma_amc to fix bitstream discovery.
Fixes #895.
2018-01-17 01:45:47 +00:00
whitequark
a536d6df12 artiq_flash: add sayma_rtm support. 2018-01-17 01:21:19 +00:00
whitequark
f317d1a2c6 Update board naming (again) to match DNS. 2018-01-17 00:42:56 +00:00
1c15124c5e artiq_flash: add kasli 2018-01-15 14:17:40 +01:00
whitequark
6891141fa6 artiq_flash: add sayma support. 2018-01-15 11:43:29 +00:00
whitequark
07ccb9eebd firmware: support configuration without ethphy (#886).
Currently, this is kasli.
2018-01-08 22:16:17 +00:00
a1b8bca1e6 Revert "artiq_flash: ignore RTM FPGA"
Naive optimism.

This reverts commit 100bda2582.
2017-12-31 13:29:36 +08:00
100bda2582 artiq_flash: ignore RTM FPGA
It has no flash connected, and attempting to detect it causes unnecessary program failure when the RTM is not present.
2017-12-31 12:10:16 +08:00
38ce1f1d5d artiq_flash: support flashing satman
A bit ugly and ad-hoc but I cannot think of an easy and better option right now.
2017-12-31 12:09:18 +08:00
whitequark
55cfdec644 firmware: enlarge bootloader partition to 4 sectors. 2017-12-28 14:39:26 +00:00
whitequark
acd13837ff firmware: implement the new bootloader. 2017-12-28 13:18:51 +00:00
whitequark
3b18ece3b7 satman: update for changes in firmware elsewhere. 2017-12-28 07:36:33 +00:00
whitequark
d7cb4963e1 firmware: prepare config block for access from BIOS/bootloader.
* remove liballoc dependency from mod config,
  * move mod config to libboard,
  * move config sector immediately after BIOS sector.
2017-12-27 21:28:40 +00:00
whitequark
fd6d97f052 artiq_devtool: set ServerAliveInterval. 2017-12-26 15:41:03 +00:00
whitequark
188764693e runtime: we're growing, put storage at 1M instead of 512K. 2017-12-26 03:34:16 +00:00
whitequark
e2513a2401 runtime: ensure flash storage never overlaps with runtime sections. 2017-12-26 03:31:37 +00:00
whitequark
1570a482c2 artiq_devtool: don't require lock for reset.
reset is mainly useful as a part of reset+hotswap sequence, and that
already needs lock via connect.
2017-12-25 16:15:51 +00:00
cbd69287a7 artiq_flash: select Sayma standalone variant by default 2017-12-22 16:54:06 +08:00
71db953ea0 artiq_flash: add srcbuild option to look into MiSoC source build trees. Closes #868 2017-12-14 10:36:32 +08:00
2917208d89 artiq_flash: fix sayma flashing
* do not include jtagspi as it already instantiates a flash bank
  instead define the target manually
* erase before writing
* verify written images
2017-12-13 21:20:16 +08:00
whitequark
3cf5cef168 artiq_pcap: still grab the file if the command fails. 2017-12-08 07:36:56 +00:00
whitequark
277b00eb9d artiq_devtool: --config is no longer supported by artiq_flash.
[ci skip]
2017-12-04 14:19:31 +00:00
1426ecad64 dashboard: tidy dashboard naming logic 2017-11-28 08:56:04 +08:00
fbd4d8eb6f dashboard: log server address even if friendly name given 2017-11-28 08:56:04 +08:00
b6ad510007 master: style (NFC) 2017-11-28 08:56:04 +08:00
00efb0ccd2 master: expand --name help 2017-11-28 08:56:04 +08:00
10ee3f19a8 dashboard: close config RPC Client cleanly at exit 2017-11-28 08:56:04 +08:00
0999f2dd86 dashboard: explain default configuration file path 2017-11-28 08:56:04 +08:00
84b5e68349 dashboard: use master's friendly name in dashboard title 2017-11-28 08:56:04 +08:00
fafabacf97 master: add friendly name 2017-11-28 08:56:04 +08:00
2852e793ab dashboard: store separate configuration data for each master, keyed by server and port 2017-11-28 08:56:04 +08:00
whitequark
e5995794be artiq_devtool: actually hold the lock until script termination.
The open channel that ran flock was garbage collected, which caused
the flock command to terminate.
2017-11-26 20:54:24 +00:00
whitequark
b5d098c6db Add lockfile support to artiq_devtool. 2017-11-26 15:17:35 +00:00
29181b1586 artiq_influxdb: use aiohttp.ClientSession. Closes #829 2017-11-22 17:31:09 +08:00
5dc131636d artiq_flash: adapt to bit2bin 2017-11-09 18:10:15 +01:00
4880e4225d bit2bin: cleanup 2017-11-09 13:00:04 +01:00
62320432a5 artiq_flash: fix sayma amc tap/pld index 2017-11-01 14:45:07 +01:00
bfd36e7340 artiq_flash: update for Sayma OpenOCD changes 2017-11-01 20:11:18 +08:00
4a57b52241 artiq_flash: add preinit-command option 2017-11-01 17:34:10 +08:00
6089d44fd0 artiq_flash: update Sayma flash proxy bitstream name 2017-11-01 14:57:30 +08:00
e80a527f2e dashboard: add DAC monitoring widgets 2017-10-26 02:26:59 +08:00
7edff48b6d conda/artiq_flash: use proxy bitstream package
fix #841
2017-10-23 15:21:54 +02:00
b4c52c34f7 Merge branch 'sinara' 2017-09-30 01:11:16 +08:00
whitequark
c9e2a085ec logging, aqctl_corelog: recognize log level TRACE. 2017-08-31 13:12:22 +00:00
d92cca9712 artiq_flash: fix target_file handling 2017-08-31 12:16:52 +08:00
whitequark
3823193060 artiq_devtool: forward multiple connections.
In particular this is useful for running concurrent arqctl_corelog
and anything else using the management channel, such as
artiq_coreboot.
2017-08-23 09:33:07 +00:00
e94d0803e1 artiq_flash: fix Sayma load addresses 2017-08-20 18:21:36 -04:00
261b6fb42e artiq_flash: fix AMC_DR_LEN 2017-08-20 18:20:51 -04:00
9f4c9fc14b artiq_flash: Sayma support 2017-08-20 17:23:56 -04:00
471605ec1e pdq: move to https://github.com/m-labs/pdq 2017-07-19 17:35:28 +02:00
9898681a38 aqctl_corelog: only set logging.DEBUG after the server is set up
Otherwise asyncio pollutes the log.
2017-07-18 14:00:06 +08:00
whitequark
dd87508a7f Implement forwarding of logs from core device to master.
Fixes #691.
2017-07-18 05:31:59 +00:00
whitequark
9e38132c0a artiq_devtool: don't drop data in unpredictable ways (sigh). 2017-07-18 05:31:59 +00:00
d96c2abe44 pdq: read/write_reg -> get/set_reg
see also m-labs/pdq#14
2017-07-17 21:45:46 +02:00
whitequark
86c027e9c5 artiq_flash: don't require binaries to merely restart FPGA. 2017-07-04 18:55:38 +00:00
whitequark
7a5fbc1622 devtool: forward port 1383 (moninj). 2017-07-04 17:54:18 +00:00
whitequark
f36f00a83d artiq_devtool: do not chop up the TCP stream into 1024 byte chunks.
This makes the smoltcp behavior quite different than without
the TCP forwarding (and can mask smoltcp issues).
2017-06-26 08:39:16 +00:00
whitequark
282f4256e0 artiq_pcap: atomically replace pcap file.
Otherwise this segfaults Wireshark (?!).
2017-06-26 03:22:14 +00:00
whitequark
d6f4f1f3bc artiq_devtool, artiq_pcap: better option naming. 2017-06-26 00:00:05 +00:00
whitequark
816ec6c52f artiq_pcap: implement. 2017-06-25 07:04:29 +00:00
whitequark
1fa8be3835 artiq_devtool: don't loop forever if core device dies. 2017-06-25 04:18:45 +00:00
566ff73dff pdq: unify spi-PDQ and usb-PDQ protocols 2017-06-10 15:03:25 +02:00
92307d1f9c fix some missing pdq2→pdq renames 2017-06-03 18:35:36 +08:00
2458da1ade pdq: get new host driver, adapt 2017-05-31 00:20:10 +02:00
e845de2ff2 remove aqcli_pdq2 2017-05-22 19:17:23 +08:00
5fc953119e fix usage of CommMgmt 2017-05-22 17:32:11 +08:00
6bdb76e9ea core device logging controller WIP (#691) 2017-05-22 16:48:00 +08:00
5ccca74a3f fold comm device into core device 2017-05-22 15:45:45 +08:00
3ed70afaa1 Use commandline prefix for controllers
This keeps them better organized and consistent with the artiq_* naming scheme.
Tab completion from aqctl_ also lists all the controllers installed on a machine.
2017-05-22 00:22:10 +08:00
c83e15d040 artiq_corelog: cleanup 2017-05-22 00:06:03 +08:00
cd757c0f16 generate device database from executable python file 2017-05-18 23:14:55 +08:00
9ab63920e0 Remove Pipistrello support
Closes #658
Closes #381
2017-05-15 17:17:44 +08:00
ad85a0cee3 add session manager (#691) 2017-05-15 17:05:22 +08:00
whitequark
db494967c5 firmware use Rust 0.18.0. 2017-04-19 09:38:24 +00:00
whitequark
c6e8d5c901 runtime: allow setting UART log level explicitly.
This is way more convenient than commenting out parts
of session.rs when debugging.
2017-04-15 08:27:18 +00:00
whitequark
0b9601f12d artiq_devtool: more robust defaults. 2017-04-13 08:26:48 +00:00
whitequark
296dc3b0c4 artiq_coreboot: allow hot-rebooting the device. 2017-04-11 03:24:24 +00:00
whitequark
1bd4d13391 artiq_compile: make print() write to core log, not an invalid op.
Fixes #710.
2017-04-11 03:16:34 +00:00
whitequark
948ed6fb0a Extract core device management interface from session interface (#691). 2017-03-29 03:36:21 +00:00
whitequark
b391598c87 artiq_devtool: add reset action. 2017-03-07 14:37:08 +00:00
whitequark
cce1481fac artiq_devtool: add hotswap action. 2017-03-07 11:36:28 +00:00
6895236794 frontend: fix permissions 2017-03-07 00:47:45 +08:00
whitequark
b0cdef3211 firmware: implement hotswap through artiq_coreboot tool. 2017-03-06 16:01:28 +00:00
whitequark
218046d96c artiq_devtool: fix an infinite loop on network error. 2017-03-04 09:40:22 +00:00
whitequark
e8c093deb3 Allow changing runtime log level without recompilation.
This shouldn't affect performance much, as the log crate guards
every log statement with a branch, adding just two instructions.
2017-03-03 06:06:26 +00:00
7d6ebabc1b reorganize core device communication code 2017-02-27 18:37:30 +08:00
whitequark
1dabe05c5a artiq_devtool: add clean command and --config option. 2017-02-21 05:28:19 +00:00
whitequark
4164fc880e artiq_devtool: add support for switching targets. 2017-02-03 07:42:06 +00:00
whitequark
6fd149f048 Show a message when interrupting a running kernel (except idle kernel).
Fixes #625.
2017-01-31 22:53:38 +00:00
3aced46b19 dashboard: report lost connection with master. Closes #602 2017-01-30 10:48:27 +08:00
43aad0914e python3.5 -> python3
Many things also work with Python 3.6.
2017-01-30 09:24:43 +08:00
c659c2e551 Relicense ARTIQ as LGPLv3+ (closes #570)
Kelly Stevens: 1481043941095.63542@gtri.gatech.edu
David Nadlinger: E7C03799-5D45-4C03-9DF9-029FE2B4F12B@klickverbot.at
whitequark: 69d1ca29d5ab03fbcfb446d65cbe1150@mail.whitequark.org
Felix Held: 9145cc19-2319-3516-b2a9-dde60aef11f7@felixheld.de
Robert Jordens: CANb+zoFgXVYgCji_vXPauK-fnnYKpm_QioMnvmh=hvLFWQONWA@mail.gmail.com
Daniel Slichter: BL2PR09MB1010FE3D3A325E889AD70A2591820@BL2PR09MB1010.namprd09.prod.outlook.com
Joe Britton: CAE2_b1V60_6PJ3VYx_s-p5XVfKJUx8kbQA7VwD3MdcmHdzROGw@mail.gmail.com
Florent Kermarrec: CA+96J6JHM8yZM=RYaporU36NdyOTL3BeSuO9oM8TTtdnXiJ5jw@mail.gmail.com
Zach Smith: CAAJ=EH+OzDs_rBJ_zTjbOZmumEZWONX2MSFUasJwf8josJGdkw@mail.gmail.com
David Leibrandt: CY1PR09MB0921C628EC76CDFC4CC7F64F95820@CY1PR09MB0921.namprd09.prod.outlook.com
Raghavendra Srinivas: DM5PR09MB1531C49EEE1774DF2BA80616F8850@DM5PR09MB1531.namprd09.prod.outlook.com
Yann Sionneau: CACi+aWbdY48D9CgKtXdtVsdX4NS1JwVN4v-PCC17F_rPKSt4XQ@mail.gmail.com
Sébastien Bourdeauducq: c3f235dc-e9c5-7f7a-10f2-bb4e4f85e7f5@m-labs.hk
2017-01-27 11:19:46 +01:00
143f784291 artiq_flash: fix scripts_path 2017-01-26 21:52:59 +01:00
653eee071d artiq_flash: make scripts_path a function (for doc generating) 2017-01-26 17:53:33 +01:00
whitequark
de17908b38 Revert "Globally update UART baudrate to 921600."
This reverts commit b29e2d5bfe.

This broke flterm firmware upload, which was the entire point
of the whole exercise.
2017-01-25 00:31:28 +00:00
whitequark
b29e2d5bfe Globally update UART baudrate to 921600. 2017-01-24 22:25:58 +00:00