mwojcik
c36b6b3b65
master: only local rtio events in analyzer
2023-05-19 11:39:14 +08:00
mwojcik
c0ca27e6cf
satellite: add rtio_analyzer, only for local rtio
2023-05-19 11:39:14 +08:00
Jonathan Coates
3ca47537b8
Fix mismatched signatures for the wide interface
...
Lists are passed by-reference from python code, and so should be
&CSlice<_> not CSlice<_>.
Signed-off-by: Jonathan Coates <jonathan.coates@oxionics.com>
2023-05-19 10:18:06 +08:00
Sebastien Bourdeauducq
c53d333d46
almazny: fix parameter
2023-05-09 14:27:37 +08:00
Sebastien Bourdeauducq
5b94ce82e4
artiq_ddb_template: fix almazny
2023-05-09 14:27:15 +08:00
Sebastien Bourdeauducq
45cd438fb8
Almazny v1.2 support
...
Based on PR #2060 by Robert Jördens.
2023-05-09 12:54:48 +08:00
Sebastien Bourdeauducq
0e7e30d46e
test: fix hardware testbench trying to write to ARTIQ_ROOT
2023-04-30 17:16:36 +08:00
Sebastien Bourdeauducq
d5a7755584
test: improve tmpdir names
2023-04-30 17:15:34 +08:00
Sebastien Bourdeauducq
3ff0be6540
PEP440 compliant version numbers
2023-04-30 16:55:49 +08:00
Sebastien Bourdeauducq
2c1438c4b9
coredevice: add missing pattern to sampler_hw_rev
2023-04-30 16:07:56 +08:00
Egor Savkin
5199bea353
master: emit warning if datasets will not be stored
2023-04-30 15:22:21 +08:00
mwojcik
a533f2a0cd
rtio: SED, InputCollector use rio clock domain
2023-04-28 17:49:12 +08:00
Jonathan Coates
0bf57f4ebd
Fix ADF3536 having RTIO channel names
...
The channel in this device refers to a channel on the mirny, not an RTIO
channel.
2023-04-24 20:05:14 +08:00
Sebastien Bourdeauducq
4056168875
master: store datasets in LMDB ( #1743 )
2023-04-24 17:34:30 +08:00
Egor Savkin
9331911139
add tests for client submit functionality
2023-04-24 11:43:24 +08:00
Spaqin
2f35869eb1
satman: fix PMP and L2 flush
2023-04-20 15:45:15 +08:00
Egor Savkin
aed47d79ff
master: add terminate API
2023-04-18 15:03:06 +08:00
mwojcik
918d30b900
dma: pass "uses_ddma" for non-remote recordings
2023-04-18 12:35:37 +08:00
Egor Savkin
b5d9062ba9
Fix AD9914 channel map
...
Signed-off-by: Egor Savkin <es@m-labs.hk>
2023-04-17 09:23:30 +08:00
Egor Savkin
8984f5104a
Move RTIO errors formatting to the session_proto
...
This would be closer to the artiq-zynq implementation
Signed-off-by: Egor Savkin <es@m-labs.hk>
2023-04-17 09:23:30 +08:00
Egor Savkin
d0b8818688
Add 125 MHz from 80 MHz reference option to rtio clocking
...
Signed-off-by: Egor Savkin <es@m-labs.hk>
2023-04-13 14:57:24 +08:00
Sebastien Bourdeauducq
757c00b0fe
afws_client: improve UX of common build errors
2023-04-08 16:50:15 +08:00
Sebastien Bourdeauducq
c1474c134a
remove obsolete AFWS certificate
2023-04-07 16:09:47 +08:00
Sebastien Bourdeauducq
dc3db8bb66
afws_client: WebSocket, system certificates
2023-04-07 16:03:33 +08:00
Sebastien Bourdeauducq
97161a3df2
firmware: improve RTIO map error reporting
2023-04-04 11:27:31 +08:00
Ikko Eltociear Ashimine
7ba06bfe61
fix typo in comm_analyzer.py
...
error_occured -> error_occurred
occured -> occurred
2023-04-02 09:17:37 +08:00
Spaqin
b225717ddb
DDMA: documentation
2023-03-29 13:46:33 +08:00
mwojcik
696bda5c03
handle playback status in aux_transact
2023-03-28 14:18:29 +08:00
mwojcik
9150230ea7
dma: gate ddma features behind cfg(has_drtio)
2023-03-28 14:18:29 +08:00
Spaqin
e9a153b985
runtime: implement distributed DMA
2023-03-22 11:16:25 +08:00
David Nadlinger
8b1f38b015
worker_impl: Remove misleading update() from ExamineDatasetMgr [nfc]
...
`update(mod)` would be on the DatasetDB, not the manager. Rather,
modifications currently just fail due to e.g. `set(…)` not being
defined.
2023-03-20 13:20:40 +08:00
Egor Savkin
bbf80875fb
firmware: assume empty config records as removed ( #2064 )
...
This will return `KeyNotFound` for empty values, which are produced by `remove` operation
Signed-off-by: Egor Savkin <es@m-labs.hk>
2023-03-13 18:18:26 +08:00
Egor Savkin
1ca09b9484
Add support for default route (IPv4 and IPv6) ( #2059 )
...
Based on code by Michael Birtwell <michael.birtwell@oxionics.com>
2023-03-13 17:29:10 +08:00
Spaqin
84e7515721
satman: distributed DMA support
2023-03-11 18:36:36 +08:00
Sebastien Bourdeauducq
a9360823b1
libproto: remove obsolete Jdac packets
2023-03-02 20:29:09 +08:00
Egor Savkin
1ec0abbfcf
Add Urukul PLL bypass option to the JSON
...
Signed-off-by: Egor Savkin <es@m-labs.hk>
2023-03-01 19:05:16 +08:00
mwojcik
90a6fe1c35
satellite: add dma to gateware
2023-02-23 17:33:23 +08:00
mwojcik
d0437f5672
rtio core: fix minimum_coarse_timestamp
2023-02-22 10:44:25 +08:00
Egor Savkin
394138f00f
firmware: block session on startup kernel to be finished ( #2046 )
2023-01-19 16:46:53 +08:00
Sebastien Bourdeauducq
20e8f17b3d
artiq_ddb_template: fix mistake in 18524911
2023-01-15 12:27:13 +08:00
Sebastien Bourdeauducq
57e87c9717
sampler: fix mistake in c591e7e3
2023-01-15 12:27:10 +08:00
Sebastien Bourdeauducq
b8968262d7
Merge branch 'syncrtio'
2023-01-12 16:44:54 +08:00
Sebastien Bourdeauducq
514ac953ce
remove obsolete SI5324_AS_SYNTHESIZER config option
2023-01-12 13:01:08 +08:00
Sebastien Bourdeauducq
0a37a1a4c1
Merge branch 'syncrtio'
2023-01-12 12:58:19 +08:00
Sebastien Bourdeauducq
6d37d9d52c
gui/state: fix asyncio loop management
2023-01-12 12:41:08 +08:00
Sebastien Bourdeauducq
5f77d4f5fa
applets: fix asyncio loop management
2023-01-12 12:35:02 +08:00
Sebastien Bourdeauducq
2f289c552f
remove unused import
2023-01-12 12:18:17 +08:00
Sebastien Bourdeauducq
9e8bb3c701
browser,dashboard: fix asyncio loop management
2023-01-12 12:17:16 +08:00
Sebastien Bourdeauducq
d872c3ab4d
aqctl_moninj_proxy: fix asyncio loop management
2023-01-12 12:16:53 +08:00
Sebastien Bourdeauducq
f8d93813e9
aqctl_corelog: fix asyncio loop management
2023-01-12 10:52:26 +08:00
Sebastien Bourdeauducq
628b671433
update copyright year
2023-01-12 10:41:10 +08:00
Sebastien Bourdeauducq
daad3d263a
master: commit missing part of 7fd6dead8
2023-01-12 10:39:53 +08:00
Sebastien Bourdeauducq
7fd6dead8f
master: fix asyncio loop management
2023-01-11 18:46:54 +08:00
Sebastien Bourdeauducq
73a4ef89ec
scheduler: make asyncio loop a keyword-only argument, like in other asyncio APIs
2023-01-11 18:45:35 +08:00
mwojcik
70edc9c5c6
test_write_underflow: decrease underflow delay
2023-01-11 12:02:51 +08:00
mwojcik
9042426872
echo test: add two more yields
2023-01-11 12:02:51 +08:00
mwojcik
cd860beda2
test_full_stack: restore missing check_ttls
2023-01-11 12:02:51 +08:00
mwojcik
627504b60e
test_dma: remove redundant clock
2023-01-11 12:02:51 +08:00
Sebastien Bourdeauducq
c8ab6c1b2b
test_worker: fix asyncio event loop management
2023-01-10 12:36:33 +08:00
Sebastien Bourdeauducq
a96bbd8508
test_scheduler: fix asyncio event loop management
2023-01-10 12:30:08 +08:00
Sebastien Bourdeauducq
6cfd1480a7
scheduler: support passing event loop
2023-01-10 12:26:24 +08:00
Sebastien Bourdeauducq
ea21f474a7
gateware: remove SAWG simulations
2023-01-09 18:37:19 +08:00
mwojcik
eb3742fb08
kc705: do not reset si5324 during clock switch
2023-01-09 18:18:21 +08:00
Egor Savkin
070fed755b
firmware: unify RTIO error message format
2023-01-09 16:13:05 +08:00
Sebastien Bourdeauducq
63f1a6d197
drtio: partially fix tests
2023-01-06 18:33:13 +08:00
Sebastien Bourdeauducq
7dafdfe2f7
artiq_flash: fix bit2bin
2023-01-06 18:24:00 +08:00
Sebastien Bourdeauducq
ec893222a4
rtio: remove support for async mode
2023-01-06 18:22:05 +08:00
Sebastien Bourdeauducq
573a895c1e
remove RTIOClockMultiplier
2023-01-06 17:59:18 +08:00
Sebastien Bourdeauducq
cf2a4972f7
remove WRPLL
2023-01-06 17:53:11 +08:00
Sebastien Bourdeauducq
5da9794895
remove Sayma and Metlino support
2023-01-06 17:41:12 +08:00
Spaqin
3838dfc1d1
DRTIO: RTIO/SYS clock merge, KC705
2023-01-06 07:13:38 +08:00
Sebastien Bourdeauducq
1bf7188dec
gui: update version in logo
2023-01-04 15:07:56 +08:00
mwojcik
8dc6902c23
AD9912: Add PLL bypass option (pll_en) like AD9910
2022-12-21 13:34:31 +08:00
Norman Krackow
dbb77b5356
artiq_sinara_tester: change mirny frequencies
2022-12-21 09:47:47 +08:00
Sebastien Bourdeauducq
1fc127c770
fix default version
2022-12-20 12:56:43 +08:00
David Nadlinger
88684dbd2a
test_embedding: Fix up spelling in FIXME comment [nfc]
2022-12-19 01:02:51 +00:00
David Nadlinger
b9f13d48aa
firmware: Fix object references in tuples
...
Sine 8740ec3dd
, the alignment() information from
"run-time type information" (i.e. the Tag type) is also
used when sending tuples to the host.
2022-12-19 00:57:46 +00:00
Spaqin
17efc28dbe
DRTIO: RTIO/SYS clock merge
2022-12-17 15:39:54 +08:00
David Nadlinger
1e0102379b
firmware: Rename si5324 crystal_{ref -> as_ckin2} [nfc]
...
This would have made the issue in the pre-740543d4e code
much more obvious (the config option by itself does not
have any effect on the choice of active reference input).
2022-12-17 02:17:12 +00:00
David Nadlinger
ceabeb8d84
firmware: Fix Si5324 initialisation for satellites
...
Commit 740543d4e2
had unintentionally broken DRTIO
satellites, as si5324::setup is also used there. This
imports setup_si5324_as_synthesizer() from artiq-zynq,
where the input selection was already explicitly done.
GitHub: Fixes #2028 .
2022-12-17 02:17:06 +00:00
SingularitySurfer
8e476dd502
implement pca9539 and runtime io-expander chip selection
...
better comments and address translation
fix spurious };
unwrap init in runtime and return err instead of panic
propagate error
del unnecessary use
Signed-off-by: SingularitySurfer <Norman_Krackow@gmx.de>
2022-12-14 22:46:38 +08:00
David Nadlinger
874d298ceb
master/scheduler: Unbreak submitting from repository
...
This is a fix-up to commit 2a58981822
.
2022-12-13 14:58:23 +00:00
Egor Savkin
d75ade7be6
Fix rtiomap failure on device aliases
...
Signed-off-by: Egor Savkin <es@m-labs.hk>
2022-12-13 17:21:10 +08:00
Egor Savkin
2a58981822
Scheduler: replace relative path to absolute
...
Signed-off-by: Egor Savkin <es@m-labs.hk>
2022-12-09 21:43:36 +08:00
Egor Savkin
e80442811e
worker_impl: do not write results without rid ( #2020 )
2022-12-09 16:18:28 +08:00
Egor Savkin
12649720f1
browser: read artiq_version from HDF5 as string
...
Signed-off-by: Egor Savkin <es@m-labs.hk>
2022-12-07 16:39:19 +08:00
Egor Savkin
454ae39c5d
firmware: fix crash on exception with host message ( #2017 )
2022-12-07 10:41:43 +08:00
David Nadlinger
3c7a394eff
runtime/rtio_clocking: Deduplicate/document input selection [nfc]
2022-12-04 04:21:44 +00:00
David Nadlinger
740543d4e2
firmware: Fix Kasli v2 runtime rtio_clock selection
...
SI5324_EXT_REF now only controls the (deprecated) fallbacks
for when the rtio_clock option is not set.
2022-12-04 02:23:38 +00:00
Egor Savkin
b2b559e73b
browser: tolerate missing HDF5 metadata
2022-12-02 16:30:58 +08:00
Egor Savkin
1852491102
add channel names to RTIO errors
2022-12-02 16:27:03 +08:00
Egor Savkin
c591e7e305
sampler: fix reference voltage of recent hardware
2022-12-02 10:45:40 +08:00
David Nadlinger
261dc6b933
firmware/runtime: Fix Ext0_Synth0_*to125 log messages
2022-12-02 01:37:56 +00:00
David Nadlinger
1abedba6dc
coredevice/fastino: Fix stray punctuation [nfc]
2022-12-01 12:11:35 +00:00
Egor Savkin
aa2febca53
browser: fix dummy device creation failure on analyze
2022-12-01 17:45:02 +08:00
Jonathan Coates
b8b6ce14cc
Update smoltcp to 0.8.2
...
This fixes an issue where TCP issues are not retransmitted when only
some packets in a burst are acknowledged. This causes smoltcp to never
make progress and hang.
Signed-off-by: Jonathan Coates <jonathan.coates@oxionics.com>
2022-11-28 22:10:23 +08:00
Nico Pulido
88c5109627
language: check_unprocessed_arguments after constructing experiment
...
Signed-off-by: Nico Pulido-Mateo <pulido@iqo.uni-hannover.de>
2022-11-27 02:29:57 +00:00
David Nadlinger
dee154b35b
compiler: Add missing sections to kernel linker script
...
This caused sporadic LoadFaults with LLD 14 and above, as they
happened to lay out the (not otherwise mentioned) GOT/PLT such
that they would overlap with the stack guard page.
LLD does support the --orphan-handling=error option, which
would be useful to avoid similar problems in the future, but
then we'd need to mention all the other misc sections
(symbol table, comments) in the linker script as well.
GitHub: Fixes #1975 .
2022-11-24 16:57:31 +00:00
David Nadlinger
950b9ac4d6
firmware: More explicit panic message if stack guard is tripped
...
This should give even only mildly technical users a
chance to figure out what's going on, which empirically
is not the case for a plain Exception(LoadFault) without
further context.
2022-11-24 16:54:49 +00:00
Egor Savkin
6c47aac760
dashboard: merge create dataset and edit dataset features
2022-11-23 18:22:53 +08:00
Egor Savkin
f7f027001e
compiler: insert new lines into long synthesized code ( #1986 )
2022-11-23 12:10:32 +08:00
David Nadlinger
0b3c232819
language: Clarify error message for unprocessed arguments
...
"Unexpected argument(s)" would be another less ambiguous,
shorter phrasing.
2022-11-22 11:26:07 +00:00
Etienne Wodey
d45f9b6950
ddb_template: propagate fastino log2_width setting
...
Signed-off-by: Etienne Wodey <etienne.wodey@aqt.eu>
2022-11-17 10:54:37 +08:00
Sebastien Bourdeauducq
404f24af6b
compiler: set lld emulation explicitly
2022-11-15 11:20:06 +08:00
David Nadlinger
3d25092cbd
firmware/rpc_proto: Remove unnecessary cast [nfc]
2022-11-14 22:50:38 +00:00
David Nadlinger
dbbe8e8ed4
firmware/rpc_proto: Fix typo breaking receiving of arrays
...
This was introduced in 8740ec3dd5
.
2022-11-14 22:49:45 +00:00
David Nadlinger
8740ec3dd5
firmware/rpc_proto: Fix size/alignment calculation for structs with tail padding
...
Also factors out duplicate code for (de)serializing
elements of lists and ndarrays, and replaces the rounding
calculations by the well-known, much faster power-of-two-only
bit-twiddling version.
GitHub: Fixes #1934 .
2022-11-14 11:37:45 +08:00
David Nadlinger
6caa779c74
firmware/ksupport: Include .gcc_except_table (LSDA)
...
For whatever reason, no language-specific unwind data
was generated for ksupport code so far, but rustc does
emit it for an upcoming refactoring.
2022-11-14 11:37:45 +08:00
David Nadlinger
4819016a3c
firmware/ksupport: Document rpc_recv alignment requirements [nfc]
2022-11-14 11:37:45 +08:00
David Nadlinger
00a27b105a
compiler: Extract maximum alignment from target data layout
...
In particular, i64/double are actually supposed to be aligned
to their size on RISC-V (at least according to the ELF psABI),
though it is unclear to me whether this actually caused any
issues.
2022-11-14 11:37:45 +08:00
David Nadlinger
beff15de5e
compiler/targets: Fix refactoring leftover for native (host) target
...
It's unclear whether this actually caused any issues, or why this
wasn't done before (instead just setting the now-removed endianness
flag).
2022-11-14 11:37:45 +08:00
火焚 富良
defc69d9c3
compiler: fix const str/bytes handling ( #1990 )
2022-11-11 13:15:50 +08:00
火焚 富良
e2178f6c86
Fix GUI log issues introduced by #1950
2022-11-09 16:55:17 +08:00
mwojcik
ad000609ce
simplify tsc with no rtio/sys clk distinction
2022-11-01 08:12:54 +08:00
mwojcik
af0b94bb34
rtio_clock: remove 150MHz support
2022-11-01 08:12:54 +08:00
mwojcik
5cd57e8688
rtio_clocking: switch clocks and reboot
2022-11-01 08:12:54 +08:00
mwojcik
f8eb695c0f
dma test: no more rsys or rtio domains
2022-11-01 08:12:54 +08:00
mwojcik
458bd8a927
kasli_generic: remove rtio clockdomain reference
2022-11-01 08:12:54 +08:00
mwojcik
a6856a5e4a
rtio: remove rtio clock, use sys instead
2022-11-01 08:12:54 +08:00
mwojcik
1eb87164be
kasli: remove rtiocrg, use rtio/sys merge
2022-11-01 08:12:54 +08:00
Sebastien Bourdeauducq
f75ddf78b0
dashboard: restore connection/version message
2022-10-21 19:17:00 +08:00
Sebastien Bourdeauducq
e0b1098bc0
dashboard: remove incorrect moninj proxy message
2022-10-21 19:13:47 +08:00
Robert Jördens
e5c621751f
Merge pull request #1962 from quartiq/miqro
...
Support MIQRO mode for Phaser
2022-10-19 16:56:02 +02:00
Robert Jördens
07db770423
phaser: fix tester
2022-10-19 16:54:00 +02:00
Robert Jördens
eb7a0714b3
literal copy paste error
2022-10-19 16:44:44 +02:00
Robert Jördens
e15b5b50d8
phaser: tweak docs, relax slack
2022-10-19 16:42:03 +02:00
Robert Jördens
1820e1f715
phaser: cleanup
2022-10-19 16:25:33 +02:00
Fabian Schwartau
d5e267fadf
Fixed two too low delay values in Phaser init
...
Signed-off-by: Fabian Schwartau <fabian@opencode.eu>
2022-10-19 15:45:45 +02:00
Sebastien Bourdeauducq
192cab887f
afws_client: update
2022-10-07 11:39:36 +08:00
fanmingyu212
56e6b1428c
llvm: change addr2line to symbolizer
...
`llvm-addr2line` is not included as part of the llvm binary package for Windows. This causes ARTIQ python compilations issues when conda is not used (so the `llvm-tools` conda package is not installed, which provides `llvm-addr2line` currently).
2022-10-04 09:35:56 +08:00
Michael Birtwell
b895846322
Improve exception reports when exception can't be reconstructed
...
Artiq assumes that all exceptions raised by the kernel can be constructed with
a single string argument. This isn't always the case. Especially for
exceptions that originated in python and were propagated to the kernel over
rpc.
With out this change a mosek solver failure looks like:
```
ERROR root:logging_tools.py:41 Terminating with exception (TypeError: __init__() missing 1 required positional argument: 'msg')
Traceback (most recent call last):
File "/home/mb/.cache/pypoetry/virtualenvs/ion-transport-1-b41LI0-py3.8/lib/python3.8/site-packages/artiq/master/worker_impl.py", line 540, in main
exp_inst.run()
File "/home/mb/.cache/pypoetry/virtualenvs/ion-transport-1-b41LI0-py3.8/lib/python3.8/site-packages/artiq/test_tools/experiment.py", line 82, in wrapper
meth()
File "/home/mb/.cache/pypoetry/virtualenvs/ion-transport-1-b41LI0-py3.8/lib/python3.8/site-packages/artiq/language/core.py", line 54, in run_on_core
return getattr(self, arg).run(run_on_core, ((self,) + k_args), k_kwargs)
File "/home/mb/.cache/pypoetry/virtualenvs/ion-transport-1-b41LI0-py3.8/lib/python3.8/site-packages/artiq/coredevice/core.py", line 152, in run
self.comm.serve(embedding_map, symbolizer, demangler)
File "/home/mb/.cache/pypoetry/virtualenvs/ion-transport-1-b41LI0-py3.8/lib/python3.8/site-packages/artiq/coredevice/comm_kernel.py", line 720, in serve
self._serve_exception(embedding_map, symbolizer, demangler)
File "/home/mb/.cache/pypoetry/virtualenvs/ion-transport-1-b41LI0-py3.8/lib/python3.8/site-packages/artiq/coredevice/comm_kernel.py", line 699, in _serve_exception
python_exn = python_exn_type(
TypeError: __init__() missing 1 required positional argument: 'msg'
```
With this change we get:
```
ERROR root:logging_tools.py:41 Terminating with exception (RuntimeError: Exception type=<class 'mosek.Error'>, which couldn't be reconstructed (__init__() missing 1 required positional argument: 'msg'))
Core Device Traceback:
Traceback (most recent call first):
File "/home/mb/oxionics/ion-transport/tests/test_end_to_end.py", line 280, in get_transport
return self.seq.solve()
File "/home/mb/oxionics/ion-transport/tests/test_end_to_end.py", line 288, in artiq_worker_test_end_to_end.TransportTestScan.run(..., ...) (RA=+0x2e4)
self.seq.record(self.get_transport(1e-6 + 1e-7 * x))
mosek.Error(27): rescode.err_license_expired(1001): The license has expired.
End of Core Device Traceback
Traceback (most recent call last):
File "/home/mb/oxionics/artiq/artiq/master/worker_impl.py", line 540, in main
exp_inst.run()
File "/home/mb/oxionics/artiq/artiq/test_tools/experiment.py", line 82, in wrapper
meth()
File "/home/mb/oxionics/artiq/artiq/language/core.py", line 54, in run_on_core
return getattr(self, arg).run(run_on_core, ((self,) + k_args), k_kwargs)
File "/home/mb/oxionics/artiq/artiq/coredevice/core.py", line 152, in run
self.comm.serve(embedding_map, symbolizer, demangler)
File "/home/mb/oxionics/artiq/artiq/coredevice/comm_kernel.py", line 732, in serve
self._serve_exception(embedding_map, symbolizer, demangler)
File "/home/mb/oxionics/artiq/artiq/coredevice/comm_kernel.py", line 714, in _serve_exception
raise python_exn
RuntimeError: Exception type=<class 'mosek.Error'>, which couldn't be reconstructed (__init__() missing 1 required positional argument: 'msg')
```
Signed-off-by: Michael Birtwell <michael.birtwell@oxionics.com>
2022-09-26 20:25:13 +08:00
Robert Jördens
a1a4545ed4
docs: fix syntax
2022-09-23 16:22:21 +02:00
Robert Jördens
740f3d220b
refine/fixes
2022-09-23 13:39:49 +00:00
Robert Jördens
513f9f00f3
miqro: document coredevice driver
2022-09-23 12:59:21 +00:00
Robert Jördens
5cfa8d9a42
add tester support, refactor gateware mode
2022-09-23 11:54:40 +00:00
Robert Jördens
0e4a87826c
return pulse support
2022-09-20 14:35:06 +00:00
Sebastien Bourdeauducq
1709cf9717
afws_client: update
2022-09-19 16:58:41 +08:00
mwojcik
c955ac15ed
dashboard moninj: add tooltip for off button
2022-09-19 10:19:54 +08:00
mwojcik
81ef484864
dashboard moninj: check if ad9910 was init
2022-09-19 10:19:54 +08:00
mwojcik
f2c3f95040
moninj: fix ad9914 behavior, comment cleanup
2022-09-19 10:19:54 +08:00
mwojcik
616ed3dcc2
moninj: dds inj: extract shared code
...
detect urukul already init in more than one way
detect ad9912 channel already init
2022-09-19 10:19:54 +08:00
Robert Jördens
aedcf205c7
miqro: docs
2022-09-16 12:15:13 +00:00
Robert Jördens
14ab1d4bbc
miqro format change: encode len, not end
2022-09-15 11:02:59 +00:00
Sebastien Bourdeauducq
a028b5c9f7
afws_client: update
2022-09-15 09:15:38 +08:00
Robert Jördens
af28bf3550
simplify dt reset
2022-09-08 08:39:48 +02:00
Robert Jördens
4df880faf6
clean up docs
2022-09-08 08:38:26 +02:00
Robert Jördens
857fb4ecec
spelling
2022-09-06 20:44:47 +00:00
Robert Jördens
a91836e5fe
easier fix for dt
2022-09-06 20:26:50 +00:00
Robert Jördens
c5c5c30617
add set_window(), clean up api
2022-09-06 16:05:10 +00:00
Robert Jördens
27e3c044ed
fix dt computation
2022-09-06 14:32:57 +00:00
Robert Jördens
c26fa5eb90
err out on tune_fifo_offset
2022-09-05 20:48:15 +00:00
Robert Jördens
1cc57e2345
fix len
2022-09-04 21:00:24 +00:00
Robert Jördens
263c2751b3
add profile_mu
2022-09-04 20:43:28 +00:00
Robert Jördens
876f26ee30
add some docs
2022-09-04 19:56:52 +00:00
Robert Jördens
fa3678f8a3
mem auto increment
2022-09-04 12:03:44 +00:00
Robert Jördens
f4d325112c
reset and elaborate, si functions
2022-09-04 11:19:38 +00:00
Robert Jördens
b6586cd7e4
add window data delay
2022-09-02 20:45:13 +00:00
Robert Jördens
3809ac5470
fix type, clean clear
2022-09-02 19:47:06 +00:00
Robert Jördens
b9727fdfce
refactor for 32 bit mem access
2022-09-02 16:38:53 +00:00
Robert Jördens
d6d0c2c866
miqro: name register constants
2022-09-02 15:55:28 +00:00
Robert Jördens
0df2cadcd3
fixes
2022-09-02 15:29:36 +00:00
Robert Jördens
25c0dc4688
whitespace
2022-09-02 14:54:18 +00:00
Robert Jördens
cf48232a90
fixes
2022-09-02 14:38:38 +00:00
Robert Jördens
a20087848d
differentiate phaser modes
2022-09-02 11:03:23 +00:00
Robert Jördens
31663556b8
phaser: add miqro mode
2022-09-02 09:32:06 +00:00
Robert Jördens
47f90a58cc
add miqro phy
2022-09-02 09:32:06 +00:00
Mikołaj Sowiński
3c7ab498d1
Added DDS selection for Kasli tester variant
...
Signed-off-by: Mikołaj Sowiński <msowinski@technosystem.com.pl>
2022-09-02 17:14:23 +08:00
Deepskyhunter
7c306d5609
GUI log: Apply level and text filter to existing log messages ( #1950 )
2022-08-29 15:20:44 +08:00
kk1050
3c72b8d646
dashboard: use break_realtime instead of reset for Urukul set freq ( #1940 )
2022-08-16 14:02:01 +08:00
Sebastien Bourdeauducq
27397625ba
dashboard: improve moninj logging
2022-08-12 13:41:05 +08:00
cc78078
3535d0f1ae
kasli: relocate the SatelliteBase Error LED code ( #1955 )
2022-08-12 12:41:50 +08:00
cc78078
185c91f522
kasli: add Error LED to MasterBase and SatelliteBase
2022-08-11 15:06:58 +08:00
Deepskyhunter
f31279411e
dashboard/moninj: make arguments a dict for DDS setters
2022-08-02 17:09:56 +08:00
Alex Wong Tat Hang
a3ae82502c
gtx_7series: fix IBUFGS_GTE2 buffer parameters
...
Co-authored-by: topquark12 <aw@m-labs.hk>
2022-08-01 10:21:28 +08:00
Deepskyhunter
0cdb06fdf5
language/environment: support no argument manager
...
unbreak tests
2022-07-28 17:55:25 +08:00
Deepskyhunter
2a7a72b27a
language.environment: error out if unknown arguments are passed ( #1927 )
...
Closes #1641
2022-07-26 10:42:03 +08:00
kk1050
748e28be38
artiq_flash: bail out if scan chain is wrong
...
Due to OpenOCD limitations, there currently doesn't seem to be a better way of doing it. Upstream patch may be coming.
2022-07-26 09:49:48 +08:00
Sebastien Bourdeauducq
4b1715c80b
typo
2022-07-21 11:58:25 +08:00
Robert Jördens
d2dacc6433
Merge branch 'master' into nk/phaser-servo-clean
...
* master: (25 commits)
flake: update rpi-1 host key
aqctl_moninj_proxy: clear listeners on disconnect
Add method to check if termination is requested (#811 , #1932 )
moninj: fix underflows by order of operation fix channel toggle
moninj: fix underflows for urukul freq set
Urukul monitoring (#1142 , #1921 )
moninj: make receive_task private again
moninj,corelog: fix/cleanup exception handling (#1897 )
aqctl_corelog: enable keepalive, terminate on connection failure
Modify log for matching the style
Add log message when dashboard connected to proxy
Public receive_task for the use in proxy
applets.simple: Actually forward dataset_prefixes when using IPC
master: Fixup 32db6ff978
(argument_ui support)
Revert "add pull.yml (#1918 )"
add pull.yml (#1918 )
Allow experiments to specify a custom argument editor UI (#1916 )
dashboard: Add submit/close hooks for custom argument editors
dashboard: Plumb through datasets client to ExperimentManager
dashboard: Add cmdline option to load plugins on startup
...
2022-07-07 15:56:30 +02:00
Deepskyhunter
c7394802bd
aqctl_moninj_proxy: clear listeners on disconnect
2022-07-07 17:20:08 +08:00
kk1050
7aa6104872
Add method to check if termination is requested ( #811 , #1932 )
...
Co-authored-by: kk105 <kkl@m-kabs.hk>
2022-07-07 17:01:34 +08:00
mwojcik
46f2842d38
moninj: fix underflows by order of operation
...
fix channel toggle
2022-07-07 12:37:10 +08:00
mwojcik
c9fb7b410f
moninj: fix underflows for urukul freq set
2022-07-07 12:37:10 +08:00
Spaqin
8be945d5c7
Urukul monitoring ( #1142 , #1921 )
2022-07-07 10:52:53 +08:00
SingularitySurfer
9c8ffa54b2
reverse to servo enable. hopefully adapted all comments etc.
2022-07-06 14:33:46 +00:00
Sebastien Bourdeauducq
d17675e9b5
moninj: make receive_task private again
2022-07-02 17:58:24 +08:00
Sebastien Bourdeauducq
388b81af19
moninj,corelog: fix/cleanup exception handling ( #1897 )
2022-07-02 17:48:18 +08:00
Deepskyhunter
02b086c9e5
aqctl_corelog: enable keepalive, terminate on connection failure
2022-07-02 17:33:58 +08:00
SingularitySurfer
953dd899fd
refine docu
2022-06-23 15:46:15 +00:00
SingularitySurfer
689a2ef8ba
refine note
2022-06-23 15:23:00 +00:00
SingularitySurfer
d8cfe22501
add note about setpoint resolution
2022-06-23 15:18:55 +00:00
Deepskyhunter
b4f24dd326
Modify log for matching the style
2022-06-23 19:16:36 +08:00
Deepskyhunter
da6d35e7c6
Add log message when dashboard connected to proxy
2022-06-23 19:16:36 +08:00
Deepskyhunter
745f440597
Public receive_task for the use in proxy
...
Notify proxy and terminate after receive_task end
2022-06-23 19:16:36 +08:00
SingularitySurfer
2e834cf406
unflip logic..
2022-06-23 10:20:38 +00:00
SingularitySurfer
3f8a221c76
flip logic of enable bit to bypass bit and update some comments
2022-06-23 10:08:34 +00:00
SingularitySurfer
ab097b8ef9
add offset to coefficients as data
2022-06-23 09:37:37 +00:00
SingularitySurfer
24b4ec46bd
more documentation
2022-06-23 08:48:28 +00:00
Norman Krackow
56c59e38f0
Update artiq/coredevice/phaser.py
...
Co-authored-by: Robert Jördens <rj@quartiq.de>
2022-06-23 09:15:50 +02:00
SingularitySurfer
c0581178d6
impl offsets. to be tested
2022-06-22 16:20:59 +00:00
SingularitySurfer
43c94577ce
impl set_iir. untested
2022-06-22 15:35:49 +00:00
SingularitySurfer
ce4055db3b
force hold on bypass and use names in set_servo() in init
2022-06-21 10:11:49 +00:00
SingularitySurfer
b67a70392d
rename to coeff base and shorter write16
2022-06-21 09:59:40 +00:00
SingularitySurfer
57176fedb2
add servo docu
2022-06-21 09:29:42 +00:00
SingularitySurfer
8bea821f93
just &1 to stay in field
2022-06-21 08:43:55 +00:00
SingularitySurfer
0388161754
disable servo in init
2022-06-21 07:49:29 +00:00
SingularitySurfer
751af3144e
fix old line that I forgot
2022-06-21 07:43:28 +00:00
SingularitySurfer
5df766e6da
fix ors
2022-06-21 07:36:59 +00:00
David Nadlinger
e1f9feae8b
applets.simple: Actually forward dataset_prefixes when using IPC
...
Turns out I had inadvertently only tested 2d6fc154d
using the
socket interface.
2022-06-19 18:08:25 +01:00
David Nadlinger
dd928fc014
master: Fixup 32db6ff978
(argument_ui support)
...
This was lost in the ndscan diff upstreaming process
due to other Oxford-local changes in artiq.master.worker.
2022-06-19 11:33:40 +01:00
David Nadlinger
32db6ff978
Allow experiments to specify a custom argument editor UI ( #1916 )
...
On the master/EnvExperiment side, the only addition is an optional
property `argument_ui` that is made accessible to the dashboard, e.g.
class Example(EnvExperiment):
argument_ui = "ndscan"
def build(self):
…
Clients – primarily artiq_dashboard, but in principle e.g. a
command-line UI could do the same – can then compare the value to a
list of well-known names and prefer any matching custom UI handlers.
On the dashboard side, this commit adds the mechanism to register
a custom argument editor for a given argument_ui string, i.e. the
widget that displays the parameter values within the wider
experiment UI shell with the submit button, pipeline parameters, and
so on. The registry remains empty by default and would be filled by
out-of-tree plugins such as ndscan.
The UI state readback is implemented somewhat defensively to avoid
needless disruptions to users when upgrading.
2022-06-18 15:55:13 +08:00
David Nadlinger
dbc87f08ff
dashboard: Add submit/close hooks for custom argument editors
...
These are used by ndscan, as re-serialising the entire ndscan
parameter metadata tree, which can grow to be quite extensive,
on every single Qt change event is a bit excessive (and would
probably cause a bit of lag while typing for big experiments
on low-end machines).
2022-06-18 15:51:39 +08:00
David Nadlinger
c4068e6896
dashboard: Plumb through datasets client to ExperimentManager
...
This is analogous to the explist/schedule subscribers, and allows
custom argument editors (such as ndscan) to provide hints/defaults/…
from datasets once available.
2022-06-18 15:50:05 +08:00
David Nadlinger
85895ab89b
dashboard: Add cmdline option to load plugins on startup
...
Together with m-labs/artiq#1916 , this allows the user to integrate
multiple argument UIs implemented in external libraries.
2022-06-18 15:48:32 +08:00
kk1050
46fb8916bb
update SEEN_ASYNC_ERRORS in destination_survey
2022-06-18 15:46:49 +08:00
David Nadlinger
2d6fc154db
applets: Allow wildcard subscription to all datasets matching prefix via IPC
...
This allows ndscan v0.3+ to use the IPC interface for efficiency;
previously, the non-upstreamed RID dataset namespace feature allowed
the applets to somewhat efficient subscribe directly to the master
process via the socket interface.
2022-06-18 15:45:57 +08:00
David Nadlinger
4c42f65909
applets: Add ${server}, ${port_control}, ${port_notify} command substitutions
...
This facilitates applets that connect back to the master
(e.g. to update datasets on user request, as used by ndscan).
2022-06-18 15:19:35 +08:00
David Nadlinger
f4d639242d
units: Add nW (nanowatts)
...
We found this quite useful/common for laser beams.
2022-06-18 15:11:05 +08:00
SingularitySurfer
d09153411f
adress some review comments
2022-06-17 13:03:21 +00:00
Norman Krackow
dc49372d57
Update artiq/coredevice/phaser.py
...
Co-authored-by: Robert Jördens <rj@quartiq.de>
2022-06-17 14:40:07 +02:00
Norman Krackow
2044dc3ae5
Update artiq/coredevice/phaser.py
...
Co-authored-by: Robert Jördens <rj@quartiq.de>
2022-06-17 14:39:37 +02:00
SingularitySurfer
ae3f1c1c71
adapt servo functions. Todo: docu
2022-06-17 11:47:45 +00:00
SingularitySurfer
1bddadc6e2
cleanup and comments
2022-06-15 17:32:11 +00:00
SingularitySurfer
b0f9fd9c4c
implement main driver functions
2022-06-15 12:40:21 +00:00
Michael Birtwell
69c4026d2b
Fix returning tuples of lists of arrays from RPCs
...
When serialising a list of objects `_send_rpc_value` makes a copy of the
upcoming tags to pass repeatedly to the recursive call. Then uses
`_skip_rpc_value` to skip over the tags that should have been processed.
This didn't handle numpy arrays so, after processing a list of arrays it
got out of sync and failed.
Signed-off-by: Michael Birtwell <michael.birtwell@oxionics.com>
2022-06-15 00:08:49 +08:00
Deepskyhunter
e47834d82e
Bugfix: Add missing item inside state to solve KeyError
...
KeyError raised when trying to load default_state()
due to missing Key "seed" in "RangeScan" and "CenterScan" in
state. Add {"seed": None} to resolve the bug.
2022-06-14 11:41:55 +08:00
Spaqin
4ede14b14d
dashboard: add DDS quick set-frequency feature
2022-06-09 12:01:06 +08:00
kk1050
4ddd2739ee
add log_tuples function ( #1896 )
...
Co-authored-by: kk105 <kkl@m-kabs.hk>
2022-06-06 18:41:46 +08:00
occheung
f79f7db3a2
dyld: handle rebind on symbols relocated by CALL_PLT
2022-06-01 12:44:33 +08:00
occheung
872f8f039f
dyld: support additional RV32 reloc types
...
The support of LO12 type requires the runtime linker to find the corresponding HI20 symbol. resolve_rela needs the entire relocation section for that.
2022-06-01 12:44:33 +08:00
occheung
50495097e5
dyld: rename pltrel to jmprel
...
nac3ld will not generate PLT & its relocation section. There might not be a pltrel in that case.
On the other hand, rebinding will not be limited to the symbols in the PLT when linked with nac3ld.
Thus the renaming.
2022-06-01 12:44:33 +08:00
Sebastien Bourdeauducq
ca614a3eea
use asyncio get/new_event_loop as recommended
2022-05-31 23:06:54 +08:00
occheung
6d46c886d7
ld.lld: translate TARGET2 reloc to relative
2022-05-31 18:26:06 +08:00
Sebastien Bourdeauducq
667f36a2e7
gui: fix Python 3.10 PyQt float/int issues. Closes #1887
2022-05-29 08:43:25 +08:00
Sebastien Bourdeauducq
7cff63e539
frontend: use sipyco SignalHandler ( #1063 )
2022-05-27 15:17:33 +08:00
mwojcik
cf8e583847
comm_mgmt: expect error on config_read
2022-05-19 16:48:59 +08:00
mwojcik
d24a36a02a
comm_mgmt: fix read_expect
2022-05-19 16:48:59 +08:00
mwojcik
4bdb4c8e11
config: error instead of empty value if key not found
2022-05-19 16:48:59 +08:00
Sebastien Bourdeauducq
9896d78e07
afws_client: update
2022-05-18 19:04:13 +08:00
kk1050
70503bee6f
dashboard: add dataset rename feature ( #1893 )
...
Co-authored-by: kk105 <kkl@m-kabs.hk>
2022-05-18 17:07:43 +08:00
Laurent Stephenson
16393efa7c
fix issue #1890 : make dashboard use moninj port from device_db
...
Signed-off-by: Laurent Stephenson <laurent.stephenson@nist.gov>
2022-05-13 06:23:59 +08:00
David Nadlinger
8a7af3f75c
compiler: Fix "nowrite" miscompilation for sret functions
...
This affected e.g. rtio_input_timestamped_data().
2022-05-07 21:43:55 +01:00
Spaqin
35f30ddf05
Expose TTLClockGen for Kasli JSONs ( #1886 )
2022-05-06 13:33:42 +08:00
Michael Birtwell
50dbda4f43
Use new ip_addr_storage module instead of net_settings
...
Necessary to avoid needing the alloc only trait impls in net_settings
when compiling the bootloader.
2022-04-24 10:10:43 +08:00
Michael Birtwell
95378cf9c9
Centralise all uses of the IPv4 index in net_settings.rs
2022-04-24 10:10:43 +08:00
Michael Birtwell
671453938b
Require explicitly closing TcpStreams
...
Instead of automatically closing and draining the TcpStream in the Drop
implementation instead expect the user to call TcpStream::close.
Add close called to all users of TcpStream.
Document the requirement to call close on TcpListener::accept, this seems
to be the only way to get a new TcpStream at the moment.
2022-04-24 10:10:43 +08:00
Michael Birtwell
1fe59d27dc
Use an Ipv4AddrConfig enum instead of the USE_DHCP constant
2022-04-24 10:10:43 +08:00
Michael Birtwell
73082d116f
Ensure that pending data is sent when closing sockets
...
This is only necessary if close hasn't been called on the socket
but that's not always done. e.g. by the core analyzer server.
2022-04-24 10:10:43 +08:00
Michael Birtwell
596b9a265c
Prefer DHCP to the built-in static IPs
...
Signed-off-by: Michael Birtwell <michael.birtwell@oxionics.com>
2022-04-24 10:10:42 +08:00
Michael Birtwell
6ffb1f83ee
DHCP support for core device firmware
...
DHCP is enabled by setting the `ip` config entry to "use_dhcp". Reusing this
config field rather than creating a new one means that there is no ambiguity
over which config field takes precedence.
Adds a thread to configure the interface based on DHCP events
Adds a `Dhcpv4Socket` as a wrapper around smoltcp's version
Formalises the storage of the IP addresses so that we can update one in
another module.
There's also a workaround for the first DHCP discover packet frequently
going missing.
Signed-off-by: Michael Birtwell <michael.birtwell@oxionics.com>
2022-04-24 10:10:14 +08:00
Michael Birtwell
c60de48a30
Upgrade smoltcp 0.6.0 -> 0.8.0
...
Main changes:
Deal with interfaces now being generic over mediums, update interface name
and initialisation.
Interfaces now own their sockets. So we store a reference to the Interface
instead of the SocketSet in Scheduler and IO.
Sockets are no longer reference counted. We never called the function to
increase the socket's reference count, so now we just remove it where it
was previously released. This will result in the socket being dropped at
a different time, but I think that should be fine.
Tested firmware upload to the bootloader and spamming artiq_coremgmt log
calls to download the log from the firmware.
Signed-off-by: Michael Birtwell <michael.birtwell@oxionics.com>
2022-04-24 10:09:27 +08:00
Suthep Pomjaksilp
06ad76b6ab
applets: add progress bar applet
...
Signed-off-by: Suthep Pomjaksilp <pomjaksi@physik.uni-kl.de>
2022-04-22 09:27:28 +08:00
David Nadlinger
b2b84b1fd6
test: Fixup 6b5c390d4
typo
2022-04-22 00:29:03 +01:00
David Nadlinger
6b5c390d48
compiler: Fix #1871 (array() breaks math functions)
...
GitHub: Fixes #1871 .
2022-04-22 00:12:20 +01:00
Michael Birtwell
cab9d90d01
Use sipyco.keepalive
...
Remove the implementation of setting keepalive settings on sockets and use
the implementation from sipyco instead.
Signed-off-by: Michael Birtwell <michael.birtwell@oxionics.com>
2022-04-12 08:53:35 +08:00
Leon Riesebos
386391e3f9
browser: support datasets that use h5 group notation
...
Signed-off-by: Leon Riesebos <leon.riesebos@duke.edu>
2022-04-07 18:18:13 +08:00
Leon Riesebos
b5dc9fd640
browser: cleanup datasets panel for empty h5 files
...
this fix makes sure the datasets panel is cleared if an h5 file is empty or the datasets and archive groups are empty
2022-04-07 18:18:05 +08:00
Sebastien Bourdeauducq
c82c358f3a
runtime: provide/fix more libc mem functions
2022-03-28 13:33:57 +08:00
Sebastien Bourdeauducq
723f41c78b
runtime: fix EXCEPTION_ID_LOOKUP
2022-03-26 20:10:24 +08:00
Sebastien Bourdeauducq
866a83796a
firmware: add UnwrapNoneError exception
2022-03-26 15:28:13 +08:00
Timothy Ballance
f91e106586
llvm_ir: fixed broken code in previous patch
2022-03-22 18:50:58 +08:00
Timothy Ballance
a289d69883
llvm_ir: fixed stack leak on ffi call
2022-03-22 09:00:40 +08:00
Sebastien Bourdeauducq
f89275b02a
master: fix compiler access to source code with submit-by-content
2022-03-20 18:08:04 +08:00
Sebastien Bourdeauducq
65d2dd0173
fix compilation warning
2022-03-20 16:15:01 +08:00
Sebastien Bourdeauducq
80d412a8bf
support submitting experiments by content
2022-03-20 12:58:55 +08:00
Sebastien Bourdeauducq
922d2b1619
drop support for big-endian moninj
2022-03-19 22:58:31 +08:00
Sebastien Bourdeauducq
ec1efd7af9
dashboard: connect to moninj via proxy
2022-03-19 22:50:36 +08:00
Sebastien Bourdeauducq
735133a2b4
artiq_dashboard: remove references to core device in moninj
2022-03-19 22:36:07 +08:00
Sebastien Bourdeauducq
207717c740
artiq_dashboard: fix handling of moninj comment
2022-03-19 22:33:31 +08:00
Sebastien Bourdeauducq
6d92e539b1
artiq_ddb_template: add aqctl_moninj_proxy
2022-03-19 22:33:03 +08:00
Sebastien Bourdeauducq
df1513f0e9
add aqctl_moninj_proxy to device dbs
2022-03-19 19:25:21 +08:00
Sebastien Bourdeauducq
d3073022ac
aqctl_moninj_proxy: fix all major bugs
2022-03-19 19:06:12 +08:00
Sebastien Bourdeauducq
bbb2c75194
add aqctl_moninj_proxy
2022-03-18 17:02:50 +08:00
Sebastien Bourdeauducq
aff569b2c3
firmware: support 64-bit moninj probes
2022-03-17 19:56:07 +08:00
Sebastien Bourdeauducq
a159ef642d
drtio: demote default routing table message to info
2022-03-16 21:22:35 +08:00
Sebastien Bourdeauducq
1a26eb8cf2
coredevice: only print version mismatch warning when relevant
2022-03-16 21:21:43 +08:00
Sebastien Bourdeauducq
e5e4d55f84
mgmt: fix config write error message
2022-03-16 08:28:31 +08:00
pca006132
ebfeb1869f
firmware: use &CSlice for lists
2022-03-10 16:30:22 +08:00
pca006132
eb6817c8f1
compiler/transforms/llvm_ir_generator: changed list representation
...
The representation of TList(T) is changed from `{T*, u32}` to
`{T*, u32}*`. The old representation forbids changing the length of a
list when the list is passed as a parameter into functions, as the
length is passed by value. The representation now matches with nac3.
2022-03-10 16:30:22 +08:00
Sebastien Bourdeauducq
8415151866
update copyright year
2022-03-10 11:56:16 +08:00
ciciwu
9a96387dfe
phaser: fix docstring formatting ( #1866 )
2022-03-08 19:03:30 +08:00
Sebastien Bourdeauducq
b02abc2bf4
remove legacy versioning files
2022-03-06 18:30:08 +08:00
Sebastien Bourdeauducq
ac55da81d8
core: support precompilation of kernels
2022-03-06 18:25:18 +08:00
spaqin
232f28c0e8
kern_hw: fix return type
2022-03-04 15:16:14 +08:00
spaqin
51fa1b5e5e
drtio: fix i2c switch
2022-03-04 15:16:14 +08:00
spaqin
17ecd35530
test_i2c: fix for missing readback
2022-03-01 17:40:20 +08:00
Spaqin
a85b4d5f5e
I2C API for PCA9547 support ( #1860 )
2022-03-01 15:07:53 +08:00
Sebastien Bourdeauducq
338bb189b4
dashboard: fix typo ( #1858 )
2022-02-26 08:58:03 +08:00
Leon Riesebos
c4292770f8
Kasli JSON description for SPI over DIO cards ( #1800 )
2022-02-26 07:36:00 +08:00
Sebastien Bourdeauducq
2b918ac6f7
coredevice: merge pcf8574a into i2c
2022-02-25 19:01:14 +08:00
Michael Birtwell
1b80746f48
Remove `outer_final`
...
We don't need to know whether there's a outer finally block
that's already implicit in the current break and continue
target.
Signed-off-by: Michael Birtwell <michael.birtwell@oxionics.com>
2022-02-24 19:58:33 +08:00
Michael Birtwell
2d6215158f
Fix try/finally:while:try compilation
...
When we have a trys inside a loop then we want to make sure any
finallys are executed by break and continue inside this try. But
this shouldn't pull finallys defined outside the loop in to the
loop. This change resets the `outer_final` attribute when
visiting for and while loops so that this doesn't happen.
Signed-off-by: Michael Birtwell <michael.birtwell@oxionics.com>
2022-02-24 19:58:33 +08:00
Sebastien Bourdeauducq
0da7b83176
runtime: add nac3 exception symbols
2022-02-23 11:04:53 +08:00
Steve Fan
ad656d1e53
dashboard: add device database reload action in context menu ( #1853 )
2022-02-22 16:18:27 +08:00
Mike Birtwell
a106ed0295
artiq_flash: don't try to make rtm_binary_dir if binary_dir unset ( #1851 )
...
Signed-off-by: Michael Birtwell <michael.birtwell@oxionics.com>
2022-02-18 18:54:17 +08:00
Robert Jördens
c8b9eed9c9
fastino: add comments about sideeffects on v0.1
2022-02-16 14:42:22 +00:00
Robert Jördens
08b65470cd
fastino: robustify init()
...
* init() now also clear and resets more state including the interpolators.
If not done, this PLL unlocks/locks may lead to random interpolator state
on boot to which the CICs react badly.
* Use and expose `t_frame`
* Clarify implementation state of `read()`
2022-02-16 14:34:22 +00:00
Sebastien Bourdeauducq
65eab31f23
simplify board package format and artiq_flash
2022-02-14 15:54:17 +08:00
Sebastien Bourdeauducq
b893d97d7b
afws_client: add login successful message
2022-02-08 21:52:48 +08:00
Sebastien Bourdeauducq
b6f5ba8b5b
afws_client: improve error message when output already exists
2022-02-08 21:26:12 +08:00
Sebastien Bourdeauducq
cc69482dad
afws: nix requires full Git commit hash
2022-02-08 21:05:39 +08:00
Sebastien Bourdeauducq
833acb6925
add AFWS client
2022-02-07 14:28:00 +08:00
occheung
d5eec652ee
tester: specify att with dB
2022-02-07 14:22:52 +08:00
occheung
a74196aa27
mirny: allow set attenuation with dB
2022-02-07 14:22:52 +08:00
Steve Fan
798a412c6f
comm_moninj: set keepalive for socket ( #1843 )
2022-02-04 13:51:19 +08:00
David Nadlinger
e45cb217be
firmware: Explicitly use wrapping integer math in PRNGs
...
Patch by Hannah McLaughlin; apparently, the overflow actually
doesn't get checked/reported without `opt-level = 2` and
`lto = "thin"`.
2022-02-03 23:57:17 +00:00
Sebastien Bourdeauducq
ef25640937
compiler: fix noreturn attribute on __artiq_resume
2022-02-01 19:01:40 +08:00
Steve Fan
34008b7a21
Backport of "fixes alignment and size problem" from artiq-zynq ( #1841 )
2022-01-28 20:49:55 +08:00
pca006132
93328ad8ee
compiler: only allow constant exception messages
...
Otherwise, the exception message might be allocated on a stack, and will
become a dangling pointer when the exception is raised.
This will break some code that constructs exceptions with a function by
passing the message as a parameter because we cannot know if the parameter
is a constant. A way to mitigate this would be to defer this check to
LLVM IR codegen stage, and do inlining first for those exception
allocation functions, but I am not sure if we will guarantee inlining
for certain functions, and whether this is really needed.
2022-01-28 09:01:39 +08:00
Steve Fan
234a82aaa9
dashboard: prioritize min as part of default value resolution ( #1839 )
2022-01-27 17:45:09 +08:00
Sebastien Bourdeauducq
ee511758ce
fix typo
2022-01-26 07:51:35 +08:00
pca006132
9d43762695
test: fixed lit tests
...
Note that because we changed exception representation from using string
names as exception identifier into using integer IDs, we need to
initialize the embedding map in order to allocate the integer IDs. Also,
we can no longer print the exception names and messages from the kernel,
we will need the host to map exception IDs to names, and may need the
host to map string IDs to actual strings (messages can be static strings
in the firmware, or strings stored in the host only).
We now check for exception IDs for lit tests, which are fixed because we
preallocated all builtin exceptions.
2022-01-26 07:16:54 +08:00
pca006132
4132c450a5
firmware: runtime changes for exception
...
Ported from:
M-Labs/artiq-zynq#162
This includes new API for exception handling, some refactoring to avoid
code duplication for exception structures, and modified protocols to
send nested exceptions and avoid string allocation.
2022-01-26 07:16:54 +08:00
pca006132
536b3e0c26
test: added test case for nested exceptions and try
2022-01-26 07:16:54 +08:00
pca006132
ba34700798
coredevice: report nested exceptions
2022-01-26 07:16:54 +08:00
pca006132
6ec003c1c9
compiler: fixed dead code eliminator
...
Instead of removing basic blocks with no predecessor, we will now mark
and remove all blocks that are unreachable from the entry block. This
can handle loops that are dead code. This is needed as we will now
generate more complicated code for exception handling which the old dead
code eliminator failed to handle.
2022-01-26 07:16:54 +08:00
pca006132
da4ff44377
compiler: fixed try codegen and allocate exceptions
...
Exceptions are now allocated in the runtime when we raise the exception,
and destroyed when we exit the catch block. Nested exception and try
block is now supported, and should behave the same as in CPython.
Exceptions raised in except blocks will now unwind through finally
blocks, matching the behavior in CPython. Reraise will now preserve
backtrace.
Phi block LLVM IR generation is modified to handle landingpads, which
one ARTIQ IR will map to multiple LLVM IR.
2022-01-26 07:16:54 +08:00
pca006132
4644e105b1
compiler: modified exception representation
...
Exception name is replaced by exception ID, which requires no
allocation. Other strings in the exception can now be 'host-only'
strings, which is represented by a CSlice with len = usize::MAX and
ptr = key, to avoid the need for allocation when raising exceptions
through RPC.
2022-01-26 07:16:54 +08:00
hartytp
715bff3ebf
Revert "Merge pull request #1544 from airwoodix/dataset-compression" ( #1838 )
...
* Revert "Merge pull request #1544 from airwoodix/dataset-compression"
This reverts commit 311a818a49
, reversing
changes made to 7ffe4dc2e3
.
* fix accidental revert of f42bea06a8
2022-01-25 10:02:15 +08:00
Steve Fan
3f812c4c2c
comm_kernel: fix RPC exception handling ( #1801 )
2022-01-12 15:23:37 +08:00
Steve Fan
de5892a00a
comm_kernel: check if elements are within bounds for RPC list ( #1824 )
2022-01-11 17:16:45 +08:00
Peter Drmota
4eee49f889
gateware.test.suservo: Fix tests for python >=3.7
...
Closes #1748
2022-01-11 17:16:09 +08:00
occheung
9eee0e5a7b
gateware/suservo: fix profile no. in test
...
Follow-up/Test update for 9d49302
.
2022-01-11 14:20:47 +08:00
Steve Fan
d7dd75e833
comm_kernel: fix off-by-one error for numeric value range check
2022-01-11 10:13:42 +08:00
Spaqin
095fb9e333
add Almazny support ( #1780 )
2022-01-11 09:55:39 +08:00
Sebastien Bourdeauducq
4e3e0d129c
firmware: fix compilation warning
2022-01-11 09:31:26 +08:00
pca006132
12ee326fb4
firmware: fixed personality function
2022-01-11 09:30:19 +08:00
occheung
61349f9685
sinara_tester: fix outdated API
2022-01-10 17:23:28 +08:00
occheung
cea0a15e1e
suservo: use default urukul profile
2022-01-10 16:21:39 +08:00
occheung
8b45f917d1
urukul: use default profile
2022-01-10 16:21:39 +08:00
pca006132
6542b65db3
compiler: fixed exception codegen issues
2022-01-10 15:54:29 +08:00
pca006132
9f90088fa6
compiler: generate appropriate landingpad IR
...
When used together with modified personality function, we got ~20%
performance improvement in exception unwinding with zynq.
2022-01-10 15:54:29 +08:00
occheung
5e1847e7c1
compiler: rename `variables` to `retainedNodes`
...
Part of the changes that was made to LLVM 6 by the time that LLVM 7 was released.
LLVM commit: 2c864551df
LLVM differential review: https://reviews.llvm.org/D45024
2022-01-10 11:28:37 +08:00
occheung
6f3c49528d
compiler: revert cabe5ac
...
The lack of debug emitter causes #1821 .
2022-01-10 11:26:03 +08:00
Sebastien Bourdeauducq
eaa1505c94
update documentation ( #1820 )
2022-01-08 11:55:52 +08:00
Leon Riesebos
f42bea06a8
worker_db: removed warning for writing a dataset that is also in the archive
...
Signed-off-by: Leon Riesebos <leon.riesebos@duke.edu>
2022-01-08 11:48:18 +08:00
occheung
9d493028e5
gateware/suservo: write to profile 7
...
Fixes #1817 .
2022-01-07 16:41:19 +08:00
Sebastien Bourdeauducq
bbac477092
tools: fix importlib issue
2021-12-21 13:20:11 +08:00
Steve Fan
c0a7be0a90
llvm_ir: move stacksave before lltag alloca in build_rpc
...
Signed-off-by: Steve Fan <sf@m-labs.hk>
2021-12-19 00:07:07 +00:00
Sebastien Bourdeauducq
9e5e234af3
stop using explicit ProactorEventLoop on Windows
...
It is now the default in Python.
2021-12-14 20:06:38 +08:00
Sebastien Bourdeauducq
352317df11
test_dataset_db: remove (too much breakage on Windows)
2021-12-14 19:27:15 +08:00
Sebastien Bourdeauducq
a518963a47
test_dataset_db: disable tests broken on windows
2021-12-14 19:19:22 +08:00
Sebastien Bourdeauducq
37f14d94d0
test_dataset_db: fix for windows
2021-12-14 19:07:17 +08:00
Peter Drmota
7c664142a5
Simplified use of the AD9910 RAM feature ( #1584 )
...
* coredevice: Change Urukul default single-tone profile to 7
This allows using the internal profile control in RAM modulation mode (which always starts to play back at profile 0) without competing for the content of the profile 0 register used in single tone mode.
Signed-off-by: Peter Drmota <peter.drmota@physics.ox.ac.uk>
* ad9910/set_mu: comment on caveats when setting register
* ad9910: avoid unnecessary write/param
Credit: Solution proposed by @pmldrmota in https://github.com/m-labs/artiq/pull/1584#issuecomment-987774353
* revert 1064fdff
(`set_mu()` comments)
158a7be7
had addressed this issue.
Co-authored-by: occheung <dc@m-labs.hk>
2021-12-13 23:44:03 +08:00
Etienne Wodey
33a9ca2684
tools/file_import: use SourceFileLoader
...
This allows loading modules from files with extensions not in
importlib.machinery.SOURCE_SUFFIXES
Signed-off-by: Etienne Wodey <etienne.wodey@aqt.eu>
2021-12-09 11:47:04 +08:00
Sébastien Bourdeauducq
1def0d98c5
Merge branch 'master' into dataset-compression
2021-12-06 12:40:30 +08:00
Leon Riesebos
7ffe4dc2e3
coredevice: set default pow for ad9912 set_mu()
2021-12-06 12:34:55 +08:00
Leon Riesebos
9e3ea4e8ef
coredevice: fixed type annotations for AD9910
2021-12-06 12:34:55 +08:00
Steve Fan
4a6bea479a
Host report for async error upon kernel termination ( #1791 )
...
Closes #1644
2021-12-04 13:33:24 +08:00
mwojcik
7953f3d705
kc705: add drtio 100mhz clk switch
2021-12-03 17:19:11 +08:00
mwojcik
f281112779
satman: add 100mhz si5324 settings
...
siphaser: add calculated vco for 100mhz comment
2021-12-03 17:19:11 +08:00
mwojcik
eec3ea6589
siphaser: add support for 100mhz rtio
2021-12-03 17:19:11 +08:00
Etienne Wodey
9f830b86c0
kasli: add SED lanes count option to HW description JSON file ( #1745 )
...
Signed-off-by: Etienne Wodey <etienne.wodey@aqt.eu>
2021-12-03 17:05:35 +08:00
Sebastien Bourdeauducq
b8e7add785
language: remove deprecated set_dataset(..., save=...)
2021-12-01 22:41:34 +08:00
David Nadlinger
c6039479e4
compiler: Add lit test for call site attributes [nfc]
2021-11-27 04:46:07 +00:00
David Nadlinger
63b5727a0c
compiler: Also emit byval argument attributes at call sites
...
See previous commit.
GitHub: Fixes #1599 .
2021-11-27 04:45:50 +00:00
David Nadlinger
9b01db3d11
compiler: Emit sret call site argument attributes
...
LLVM 6 seemed not to mind the mismatch, but more recent
versions produce miscompilations without this.
Needs llvmlite support (GitHub: numba/llvmlite#702 ).
2021-11-27 04:44:41 +00:00
Sebastien Bourdeauducq
6a433b2fce
artiq_sinara_tester: test Urukul attenuator digital control
2021-11-24 18:57:16 +08:00
occheung
9423428bb0
drtio: fix crc32 offset address
2021-11-24 12:00:56 +08:00
Harry Ho
b49f813b17
artiq_flash: ignore checking non-RTM artifacts if unused
2021-11-18 16:59:32 +08:00
Peter Drmota
20e079a381
AD9910 driver feature extension and SUServo IIR readability ( #1500 )
...
* coredevice.ad9910: Add set_cfr2 function and extend arguments of set_cfr1 and set_sync
* SUServo: Wrap CPLD and DDS devices in a list
* SUServo: Refactor [nfc]
Co-authored-by: drmota <peter.drmota@physics.ox.ac.uk>
Co-authored-by: David Nadlinger <code@klickverbot.at>
2021-11-15 12:09:16 +08:00
occheung
db3e5e83e6
bump misoc
2021-11-08 16:59:08 +08:00
occheung
09945ecc4d
gateware: fix drtio/dma tests
2021-11-08 16:59:08 +08:00
occheung
02119282b8
build_soc: build VexRiscv_G if not kasli v1.x
2021-11-08 16:59:08 +08:00
occheung
750b0ce46d
ddb_temp: select appropriate compiler target
2021-11-08 16:59:08 +08:00
occheung
531670d6c5
dyld: check ABI
2021-11-08 16:59:08 +08:00
occheung
0f660735bf
ll_gen: adjust csr address by detecting target class
2021-11-08 16:59:08 +08:00
occheung
0755757601
compiler/tb: use FPU
2021-11-08 16:59:08 +08:00
occheung
0d708cd61a
compiler/target: split RISCV target into float/non-float
2021-11-08 16:59:08 +08:00
occheung
03b803e764
firmware: adjust csr separation
2021-11-08 16:59:08 +08:00
occheung
b3e315e24a
rust: find json file using CARGO_TRIPLE
2021-11-08 16:59:08 +08:00
occheung
0898e101e2
board_misoc: reuse riscv dir for comm & kernel
2021-11-08 16:59:08 +08:00
occheung
cb247f235f
gateware: pass adr_w/data_w to submodules
2021-11-08 16:59:08 +08:00
occheung
90f944481c
kernel_cpu: add fpu if not kasli v1.x
2021-11-08 16:59:08 +08:00
occheung
d84ad0095b
comm_cpu: select 64b bus if not kasli v1.x
2021-11-08 16:59:08 +08:00
occheung
dd68b4ab82
mailbox: parametrize address width
2021-11-08 16:59:08 +08:00
occheung
c6e0e26440
drtio: accept 32b/64b bus
2021-11-08 16:59:08 +08:00
occheung
8da924ec0f
dma: set conversion granularity using bus width
2021-11-08 16:59:08 +08:00
Robert Jördens
591507a7c0
Merge pull request #1774 from m-labs/fastino-cic
...
Fastino cic
2021-10-28 17:44:20 +02:00
Robert Jördens
5a5b0cc7c0
fastino: expand docs
2021-10-28 15:19:48 +00:00
Spaqin
69cddc6b86
rtio_clocking: add warnings for unsupported rtio_clock settings ( #1773 )
2021-10-28 16:34:22 +08:00
Spaqin
9b1d7e297d
runtime: clock input specification improvements
...
closes #1735
2021-10-28 16:21:51 +08:00
Robert Jördens
1ff474893d
Revert "fastino: make driver filter order configurable"
...
This reverts commit 10c37b87ec
.
2021-10-28 06:29:56 +00:00
Robert Jördens
10c37b87ec
fastino: make driver filter order configurable
2021-10-27 20:24:58 +00:00
Harry Ho
c940f104f1
artiq_flash: fix gateware header not in little-endian for RISC-V
2021-10-25 11:20:26 +08:00
Harry Ho
0aa8a739aa
sayma_rtm: fix RTM firmware not in little-endian for RISC-V
2021-10-25 11:20:26 +08:00
occheung
d5fa3d131a
cargo.lock: update libc version for libfringe
2021-10-16 17:42:24 +08:00
occheung
6d3164a912
riscv: print mtval on panic
2021-10-16 17:42:24 +08:00
occheung
46326716fd
runtime: bump libfringe, impl ecall abi
...
See libfringe PR: M-Labs/libfringe#1
2021-10-16 17:42:24 +08:00
occheung
0a59c889de
satman/kern: init locked PMP on startup
2021-10-16 17:42:24 +08:00
occheung
27a7a96626
runtime: setup pmp + transfer to user
2021-10-16 17:42:24 +08:00
occheung
a0bf11b465
riscv: impl pmp
2021-10-16 17:42:24 +08:00
occheung
790a20edf6
linker: generate stack guard + symbol
2021-10-16 17:42:24 +08:00
fanmingyu212
178a86bcda
master: add an argument to set an experiment subdirectory
...
Signed-off-by: Mingyu Fan <mingyufan@ucsb.edu>
2021-10-15 16:54:31 +08:00
Sebastien Bourdeauducq
35d21c98d3
Revert "runtime: expose rint from libm"
...
Consistency with NAR3/Zynq where rint is not available.
This reverts commit f5100702f6
.
2021-10-11 08:12:04 +08:00
Sebastien Bourdeauducq
f5100702f6
runtime: expose rint from libm
2021-10-10 20:40:17 +08:00
Sebastien Bourdeauducq
3c1cbf47d2
phaser: add more slack during init. Closes #1757
2021-10-10 16:18:55 +08:00
Robert Jördens
3f6bf33298
fastino: add interpolator support
2021-10-08 15:47:07 +00:00
occheung
59065c4663
alloc_list: support alloc w/ large align
...
Signed-off-by: Oi Chee Cheung <dc@m-labs.hk>
2021-10-07 12:38:03 +08:00
Spaqin
1894f0f626
gateware: share RTIOClockMultiplier and fix_serdes_timing_path ( #1760 )
2021-10-07 08:19:38 +08:00
Etienne Wodey
a8333053c9
sinara_tester: add device_db and test selection CLI options
...
Signed-off-by: Etienne Wodey <etienne.wodey@aqt.eu>
2021-09-27 17:44:50 +08:00
Sebastien Bourdeauducq
3ed10221d8
compiler: remove big-endian support. Closes #1590
2021-09-13 13:40:24 +08:00
Sebastien Bourdeauducq
e8a7a8f41e
compiler: work around idiotic windoze behavior that causes conda ld.lld not to be found
2021-09-13 10:40:54 +08:00
Sebastien Bourdeauducq
ffb1e3ec2d
wavesynth: np.int is deprecated
2021-09-13 07:02:35 +08:00
Sebastien Bourdeauducq
2d79d824f9
firmware: remove minor or1k leftovers
2021-09-12 20:03:37 +08:00
occheung
a573dcf3f9
board_misoc/build: use rv32 as target arg
...
The original rv64 argument was only to match the misoc counterpart.
2021-09-10 14:11:23 +08:00
occheung
448974fe11
runtime/main: cleanup
2021-09-10 13:59:53 +08:00
occheung
b091d8cb66
kernel: flush cache before mod_init
...
This could be necessary as redirecting instructions from D$ directly to I$ as it seems.
Related: https://github.com/SpinalHDL/VexRiscv/issues/137
2021-09-10 13:25:12 +08:00
occheung
5394d04669
test_spi: add delay
2021-09-10 13:25:12 +08:00
occheung
b8ed5a0d91
alloc: fix alignment for riscv32 arch
2021-09-10 13:25:12 +08:00
occheung
2213e7ffac
ksupp/rtio/exception: fix timestamp
2021-09-10 13:25:12 +08:00
occheung
09ffd9de1e
dma: fix timestamp fetch
2021-09-10 13:25:12 +08:00
occheung
051a14abf2
rtio/dma: fix endianness
2021-09-10 13:25:12 +08:00
occheung
c6ba0f3cf4
ksupport: fix dma cslice (ffi)
2021-09-10 13:25:12 +08:00
occheung
c812a837ab
runtime: enlarge stack size
2021-09-10 13:25:12 +08:00
occheung
a596db404d
satman: fix cargo xbuild sysroot
2021-09-10 13:25:12 +08:00
occheung
4fab267593
cargo: std dependency hack
2021-09-10 13:25:12 +08:00
occheung
dcbd9f905c
cargo: use cargo xbuild
2021-09-10 13:25:12 +08:00
occheung
9f6b3f6014
firmware: clarify target triple
...
The lack of compressed instruction support can be inferred from the target triple, literally.
2021-09-10 13:25:12 +08:00
occheung
4619a33db4
test: remove broken array return tests
...
Removed test cases that do not respect lifetime/scope constraint.
See discussion in artiq-zynq repo: M-Labs/artiq-zynq#119
Referred to the patch from @dnadlinger. 5faa30a837
2021-09-10 13:25:12 +08:00
occheung
5985f7efb5
syscall: lower nowrite to inaccessiblememonly
...
In the origin implementation, the `nowrite` flag literally means not writing memory at all.
Due to the usage of flags on certain functions, it results in the same issues found in artiq-zynq after optimization passes. (M-Labs/artiq-zynq#119 )
A fix wrote by @dnadlinger can resolve this issue. (c1e46cc7c8
)
2021-09-10 13:25:12 +08:00
Sebastien Bourdeauducq
6db7280b09
flake: board package WIP
2021-09-10 13:25:12 +08:00
occheung
d8ac429059
dyld: streamline lib.rs
...
Only riscv32 is supported anyway, no need to have excessive architecture check.
2021-09-10 13:25:12 +08:00
occheung
798774192d
slave_fpga/bootloader: read in little endian
2021-09-10 13:25:12 +08:00
occheung
eecd825d23
firmware: suppress warning
2021-09-10 13:25:12 +08:00
occheung
1da0554a49
pcr: purge
2021-09-10 13:25:12 +08:00
occheung
5d0a8cf9ac
llvm_ir_gen: fix indent
2021-09-10 13:25:12 +08:00
occheung
70507e1b72
Cargo.lock: update
2021-09-10 13:25:12 +08:00
occheung
c113cd6bf5
libfringe: bump
2021-09-10 13:25:12 +08:00
occheung
61b0170a12
firmware: purge or1k
2021-09-10 13:25:12 +08:00
occheung
af263ffe1f
ksupport: fix rpc, cache signature (FFI)
...
The reason of the borrow stuff is explained in M-Labs/artiq-zynq#76 (artiq-zyna repo).
As for `cache_get()`, compiler will perform stack allocation to pre-allocate the returned structure, and pass to cache_get alongside the `key`.
However, ksupport fails to recognize the passed memory, so it will always assume the passed memory as the key.
2021-09-10 13:25:12 +08:00
occheung
a833974b50
analyzer: fix endianness
2021-09-10 13:25:12 +08:00
occheung
d623acc29d
llvm_ir_gen: fix now with now_pinning & little-endian target
2021-09-10 13:25:12 +08:00
occheung
8fa47b8119
rpc: enforce alignment
2021-09-10 13:25:12 +08:00
occheung
de0f2d4a28
firmware: adopt endianness protocol in artiq-zynq
...
Related:
artiq-zynq: M-Labs/artiq-zynq#126
artiq: #1588
2021-09-10 13:25:12 +08:00
occheung
9afe63c08a
ksupport: fix proto_artiq dependency
2021-09-10 13:25:12 +08:00
occheung
29a2f106d1
ksupport: replace asm with llvm_asm
2021-09-10 13:25:12 +08:00
occheung
b30ed75e69
kernel.ld: load elf header and prog headers
...
ld.lld has a habit of not putting the headers under any load sections.
However, the headers are needed by libunwind to handle exception raised by the kernel.
Creating PT_LOAD section with FILEHDR and PHDRS solves this issue. Other PHDRS are also specified as linkers (not limited to ld.lld) will not create additional unspecified headers even when necessary.
2021-09-10 13:25:12 +08:00
occheung
279593f984
ksupport.ld: merge sbss with bss
2021-09-10 13:25:12 +08:00
occheung
1ba8c8dfee
runtime: remove irq again
2021-09-10 13:25:12 +08:00
occheung
3d629006df
makefiles: revert byte-swaps
2021-09-10 13:25:12 +08:00
occheung
7542105f0f
board_misoc: remove pcr
...
VexRiscv seems to not support additional hardware performance counter, at least I have not seen any documentation on how to use it.
2021-09-10 13:25:12 +08:00
occheung
01ca114c66
runtime: remove irq dependency
2021-09-10 13:25:12 +08:00
occheung
36171f2c61
runtime: remove inaccurate sp on panic
2021-09-10 13:25:12 +08:00
occheung
01e357e5d3
ksupport.ld: reduce load section alignment
2021-09-10 13:25:12 +08:00
occheung
f77b607b56
compiler: generate symbols
2021-09-10 13:25:12 +08:00
occheung
1293e0750e
ld, makefiles: use ld.lld
2021-09-10 13:25:12 +08:00
occheung
fc42d053d9
kernel: use vexriscv
2021-09-10 13:25:12 +08:00
occheung
1b516b16e2
targets: default to vexriscv cpu
2021-09-10 13:25:12 +08:00
Sebastien Bourdeauducq
e8fe8409b2
libartiq_support: compatibility with recent stable rustc
2021-09-10 13:25:12 +08:00
Sebastien Bourdeauducq
cabe5ace8e
compiler: remove DebugInfoEmitter for now
...
Causes problems with LLVM 9 and not needed at first.
2021-09-10 13:25:12 +08:00
Sebastien Bourdeauducq
6629a49e86
compiler: use LLVM binutils/linker for Arm as well
...
Previously we kept GNU Binutils because they are less of a pain to support
on Windoze - the source of so many problems - but with RISC-V we need to
update LLVM anyway.
2021-09-10 13:25:12 +08:00
Sebastien Bourdeauducq
43d120359d
compiler: switch to upstream llvmlite and RISC-V target
2021-09-10 13:25:12 +08:00
Sebastien Bourdeauducq
5656e52581
remove profiler
2021-09-10 13:25:12 +08:00
occheung
1b8b4baf6a
ksupport: fix panic, libc, unwind
2021-09-10 13:25:12 +08:00
occheung
905330b0f1
ksupport: handle riscv exceptions
2021-09-10 13:25:12 +08:00
occheung
50a62b3d42
liballoc: change align to 16 bytes
2021-09-10 13:25:12 +08:00
occheung
7f0bc9f7f0
runtime/makefile: specify emulation, flip endianness
2021-09-10 13:25:12 +08:00
occheung
c42adfe6fd
runtime.ld: merge .sbss & .bss
2021-09-10 13:25:12 +08:00
occheung
f56152e72f
rust: fix dependencies
2021-09-10 13:25:12 +08:00
occheung
c800b6c8d3
runtime: update rust alloc, managed
2021-09-10 13:25:09 +08:00
occheung
e99061b013
runtime: add riscv
2021-09-10 13:23:22 +08:00
occheung
ecedec577c
runtime: impl riscv exception handling
2021-09-10 13:23:15 +08:00
occheung
252594a606
runtime: impl riscv panic handler
2021-09-10 13:20:31 +08:00
occheung
31bf17563c
personality: update from rust/panic_unwind
2021-09-10 13:20:31 +08:00
occheung
bfddd8a30f
libdyld: add riscv support
2021-09-10 13:20:31 +08:00
occheung
ad3037d0f6
libc: add minimal C types
2021-09-10 13:20:31 +08:00
occheung
daaf6c3401
libunwind: add rust interface
2021-09-10 13:20:31 +08:00
occheung
6d9cebfd42
satman: handle .sbss generation
2021-09-10 13:20:31 +08:00
occheung
96438c9da7
satman: make fbi big-endian
2021-09-10 13:20:31 +08:00
occheung
6535b2f089
satman: fix feature
2021-09-10 13:20:31 +08:00
occheung
45adaa1d98
satman: add riscv exception handling
2021-09-10 13:20:31 +08:00
occheung
869a282410
satman: use riscv
2021-09-10 13:20:31 +08:00
occheung
ebb9f298b5
proto_artiq: update alloc type path
2021-09-10 13:20:31 +08:00
occheung
97a0132f15
libio: update alloc type path
2021-09-10 13:20:31 +08:00
occheung
37ea863004
libio: pin failure version
2021-09-10 13:20:31 +08:00
occheung
3ff74e0693
bootloader: handle .sbss generation in .ld
...
Signed-off-by: occheung <dc@m-labs.hk>
2021-09-10 13:20:31 +08:00
occheung
448fe0e8cf
bootloader: fix panic
...
Signed-off-by: occheung <dc@m-labs.hk>
2021-09-10 13:20:31 +08:00
occheung
8294d7fea5
bootloader: swap endianness
...
Signed-off-by: occheung <dc@m-labs.hk>
2021-09-10 13:20:31 +08:00
occheung
13032272fd
bootloader: add rv32 exception handler
...
Signed-off-by: occheung <dc@m-labs.hk>
2021-09-10 13:20:31 +08:00
occheung
46102ee737
board_misoc: build vectors.S with rv64 target in misoc
...
Signed-off-by: occheung <dc@m-labs.hk>
2021-09-10 13:20:31 +08:00
occheung
b87ea79d51
rv32: rm irq & vexriscv-rust
...
Signed-off-by: occheung <dc@m-labs.hk>
2021-09-10 13:20:31 +08:00
occheung
9aee42f0f2
rv32/boot: remove hotswap
...
Signed-off-by: occheung <dc@m-labs.hk>
2021-09-10 13:20:31 +08:00
occheung
82b4052cd6
libboard_misoc: vexriscv integration
...
Signed-off-by: occheung <dc@m-labs.hk>
2021-09-10 13:20:31 +08:00
Leon Riesebos
2cf144a60c
ddb_template: edge counter keys correspond with according ttl keys
...
previously ttl_counter_0 and ttl_0 could be on completely different physical ttl output channels
with this change, ttl_0_counter (note the changed key format) is always on the same channel as ttl_0
Signed-off-by: Leon Riesebos <leon.riesebos@duke.edu>
2021-09-06 09:06:04 +08:00
Etienne Wodey
4d7bd3ee32
phaser: fail init() if frame timestamp measurement times out
...
Signed-off-by: Etienne Wodey <etienne.wodey@aqt.eu>
2021-09-03 12:01:26 +02:00
Etienne Wodey
075cb26dd7
phaser: rename get_next_frame_timestamp() to get_next_frame_mu()
...
and implement review comments (PR #1749 )
Signed-off-by: Etienne Wodey <etienne.wodey@aqt.eu>
2021-09-03 09:58:01 +02:00
Etienne Wodey
7aebf02f84
phaser: docs: add reference to get_next_frame_timestamps(), fix typo
...
Signed-off-by: Etienne Wodey <etienne.wodey@aqt.eu>
2021-09-01 17:44:46 +02:00
Etienne Wodey
61b44d40dd
phaser: add labels to debug init prints
...
Signed-off-by: Etienne Wodey <etienne.wodey@aqt.eu>
2021-09-01 17:43:30 +02:00
Etienne Wodey
65f8a97b56
phaser: add helpers to align updates to the RTIO timeline
...
Signed-off-by: Etienne Wodey <etienne.wodey@aqt.eu>
2021-09-01 17:42:54 +02:00
SingularitySurfer
65f63e6927
fix suservo start
2021-08-19 07:38:48 +00:00
Robert Jördens
a53162d01d
tester: tweak suservo
...
* p gain 1 to get reasonable power
* refine testing instructions and comments
2021-08-19 09:17:14 +02:00
SingularitySurfer
4d21a72407
Implement SUServo tester.
2021-08-18 15:10:27 +00:00
Mikołaj Sowiński
898122f3e5
Added support for HVAMP_8CH ( #1741 )
2021-08-16 13:39:00 +08:00
Sebastien Bourdeauducq
420891ba54
syntax
2021-08-12 13:01:35 +08:00
Sebastien Bourdeauducq
9f94bc61ae
missing part of 477b1516d
2021-08-12 12:55:37 +08:00
Sebastien Bourdeauducq
c69a1316ad
compiler: stop using sys.version_info for parser
2021-08-12 12:52:24 +08:00
Sebastien Bourdeauducq
477b1516d3
remove profiler
2021-08-12 12:51:55 +08:00
Sebastien Bourdeauducq
67847f98f4
artiq_run: fix multiarch
2021-08-12 12:48:10 +08:00
mwojcik
7879d3630b
made kc705/gtx interface more similar to kasli/gtp
2021-08-10 18:53:52 +08:00