Commit Graph

8288 Commits

Author SHA1 Message Date
Sebastien Bourdeauducq 614dfde33d flake: update dependencies 2022-04-27 15:43:16 +08:00
Sebastien Bourdeauducq 72aec819f7 revert incorrectly committed part of dd57fdc530 2022-04-27 13:46:44 +08:00
mwojcik 4c21d4a19c artiq_sinara_tester: fix almazny attenuation type 2022-04-27 11:57:20 +08:00
mwojcik 8c825505fd artiq_sinara_tester: fix mirny/almazny freq type 2022-04-26 12:52:58 +08:00
Sebastien Bourdeauducq 69b6426800 flake: use importCargoLock 2022-04-24 14:02:59 +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
mwojcik 86142db56b artiq_sinara_tester: fix urukul rf switch 2022-04-22 11:03:57 +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
David Nadlinger 2cb08814e8 flake: Add compiler test prerequisites to devShell
Useful while working on the legacy compiler.
2022-04-21 23:47:23 +01:00
Sebastien Bourdeauducq 58b59b99ff flake: update dependencies 2022-04-19 11:04:49 +08:00
Sebastien Bourdeauducq 4e7b1c76cc flake: nix2.5 metadata 2022-04-19 00:10:39 +08:00
Sebastien Bourdeauducq 09f8f9f8bf flake: update NAC3 2022-04-19 00:04:33 +08:00
Sebastien Bourdeauducq efea248b69 flake: use NAC3 PGO build 2022-04-19 00:04:21 +08:00
Sebastien Bourdeauducq dd57fdc530 flake: update NAC3 2022-04-18 18:53:54 +08:00
Sebastien Bourdeauducq 89aa3a3d9d sim/devices: port to NAC3 2022-04-12 16:01:56 +08:00
Sebastien Bourdeauducq 125572b553 language: reimplement sim 2022-04-12 16:01:39 +08:00
Sebastien Bourdeauducq 83676927b5 examples/simple_simulation: fix 2022-04-12 15:59:20 +08:00
Sebastien Bourdeauducq c171deec51 sim: improve formatting 2022-04-12 15:58:54 +08:00
Sebastien Bourdeauducq 0978cd0e35 Merge branch 'master' into nac3 2022-04-12 09:19:59 +08:00
Sebastien Bourdeauducq 5041e5f6bd flake: update dependencies 2022-04-12 09:15:48 +08:00
Sebastien Bourdeauducq fa3ee8ad23 flake: update sipyco 2022-04-12 08:54:58 +08: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
Sebastien Bourdeauducq dc00f811e2 flake: update dependencies 2022-04-10 08:34:54 +08:00
Sebastien Bourdeauducq 0a029748ee flake: update dependencies 2022-04-09 17:24:44 +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 9b910679f8 doc: MSYS2 2022-04-05 18:22:59 +08:00
Sebastien Bourdeauducq 176490a083 windows: fix more setuptools problems 2022-04-05 18:04:49 +08:00
Sebastien Bourdeauducq f704f3daa4 update sipyco 2022-04-05 17:35:58 +08:00
Sebastien Bourdeauducq 13e38913ea windows: work around cretinous setuptools problems (3) 2022-04-05 17:23:52 +08:00
Sebastien Bourdeauducq d75f41f8d2 windows: work around cretinous setuptools problems (2) 2022-04-05 17:13:28 +08:00
Sebastien Bourdeauducq a700c2c4e4 windows: depend on artiq-comtools 2022-04-05 17:10:57 +08:00
Sebastien Bourdeauducq ae5c64619a windows: work around cretinous setuptools problems 2022-04-05 17:07:26 +08:00
Sebastien Bourdeauducq 29c8e3958d windows: depend on qasync 2022-04-05 17:02:26 +08:00
Sebastien Bourdeauducq 113a36a9c0 windows: package qasync 2022-04-05 16:38:04 +08:00
Sebastien Bourdeauducq 64b56077cd windows: package pyqtgraph 2022-04-05 16:26:08 +08:00
Sebastien Bourdeauducq dfb2908d09 windows: clean up easy-install pollution 2022-04-05 11:32:00 +08:00
Sebastien Bourdeauducq 5bc2cf6cc2 windows: add NAC3 to MSYS2 repos 2022-04-05 10:55:52 +08:00
Sebastien Bourdeauducq 0f09bfc3c2 flake: add msys2-repos to hydra 2022-04-05 10:48:36 +08:00
Sebastien Bourdeauducq 73edc01fc6 windows: create msys2 repos 2022-04-05 10:40:52 +08:00
Sebastien Bourdeauducq 546c0ed2c5 windows: set package dependencies 2022-04-05 10:27:47 +08:00