Robert Jördens
ae80bab180
urukul: reg based io-update is a kernel
2018-04-27 16:42:09 +00:00
Robert Jördens
5f00326c65
suservo: coeff mem write port READ_FIRST
2018-04-27 15:43:32 +00:00
Robert Jördens
73fa572275
suservo: documentation, small API changes
2018-04-27 16:53:22 +02:00
Robert Jördens
307cd07b9d
suservo: lots of gateware/ runtime changes
...
tested/validated:
* servo enable/disable
* dds interface, timing, io_update, mask_nu
* channel control (en_out, en_iir, profile)
* profile configuration (coefficients, delays, offsets, channel)
* adc timings and waveforms measured
* asf state readback
* adc readback
individual changes below:
suservo: correct rtio readback
suservo: example, device_db [wip]
suservo: change rtio channel layout
suservo: mem ports in rio domain
suservo: sck clocked from rio_phy
suservo: cleanup, straighten out timing
suservo: dds cs polarity
suservo: simplify pipeline
suservo: drop unused eem names
suservo: decouple adc SR from IIR
suservo: expand coredevice layer
suservo: start the correct stage
suservo: actually load ctrl
suservo: refactor/tweak adc timing
suservo: implement cpld and dds init
2018-04-27 13:50:26 +02:00
Robert Jördens
01f762a8f5
urukul/ad9910: support blind init
...
urukul: always set io_update attribute
to silence compiler warning w.r.t. kernel_invariants
2018-04-27 13:48:40 +02:00
Robert Jördens
edbc7763e0
urukul: allow no io_update_device
2018-04-25 17:32:36 +00:00
Sebastien Bourdeauducq
c47d3ec8c8
zotino: use None as default for ldac and clr
...
This is also what AD53xx does.
2018-04-22 15:03:01 +08:00
whitequark
3b054855ec
firmware: add allocator debug feature, invoked by artiq_coredebug frontend.
2018-04-21 19:39:46 +00:00
Sebastien Bourdeauducq
5ca59467fd
ad53xx: make LDAC and CLR optional
2018-03-26 22:45:01 +08:00
Robert Jördens
a8f0ee1c86
ad53xx: refactor offset_to_mu(), fix docs
2018-03-24 15:45:42 +01:00
Robert Jördens
b0c8097025
ad53xx: remove channel index AND
...
It's incorrect since it doesn't respect the number of channels
of any of those chips (none has 64 channels).
2018-03-24 15:39:06 +01:00
Robert Jördens
77bcc2c78f
zotino: style, use attributes to set SPI config
2018-03-24 15:37:34 +01:00
Robert Jördens
2cf414a480
ad53xx: move 8 bit shift out of ad53xx protocol funcs
...
That's specific to the SPI bus, not to the ad53xx.
2018-03-24 15:15:56 +01:00
Robert Jördens
08326c5727
ad53xx: style [nfc]
2018-03-24 14:10:20 +01:00
hartytp
a992a672d9
coredevice/zotino: add ( #969 )
...
* Replace ad5360 driver with a ad53xx driver, designed to have a nicer interface
Add Zotino driver and add to opticlock target for Kasli
Test Zotino on hw:
- Verify all timings on the hardware with a scope
- Verify that we can correctly set and read back all registers in a loop (checks for SI and driver issues)
- check we can set LEDs correctly
- check calibration routine + all si unit functions with a good DVM
- look at DAC transitions on a scope (while triggering of a TTL) on persist to check there are no LDAC glitches etc
To do: update examples and e.g. KC705 device db.
2018-03-24 13:41:18 +01:00
Robert Jördens
770b0a7b79
novogorny: conv -> cnv
...
* parity with sampler
* also add novogorny device to opticlock
2018-03-21 18:38:42 +00:00
Robert Jördens
82c4f0eed4
sampler: fix channel gain retrieval
2018-03-21 14:22:13 +01:00
Robert Jördens
97918447a3
sampler: add coredevice driver
2018-03-21 12:21:53 +00:00
Robert Jördens
80903cead7
novogorny: streamline gain setting method, style [nfc]
2018-03-21 08:53:26 +00:00
Robert Jördens
9ad1fd8f25
urukul: add comment and doc about the AD9910 MASTER_RESET
2018-03-20 17:40:03 +01:00
Robert Jördens
f17c0abfe4
urukul: don't pulse DDS_RST on init
...
closes m-labs/artiq#940
Apparently, if the DDS are reset, every other time they don't work
properly.
2018-03-20 16:10:26 +00:00
Robert Jördens
a185e8dc52
urukul: fix MASK_NU offset
2018-03-20 16:10:11 +00:00
hartytp
a27b5d88c2
Novogorny driver, remove unused imports ( #964 )
...
* Novogorny driver, remove unused imports
* more unused imports
* oops, one final one!
2018-03-19 11:58:14 +01:00
Robert Jördens
f39b7b33e8
ad5360: whitespace [nfc]
2018-03-17 18:51:17 +01:00
ion
c1439bfd3b
Fix AD5360 after migration to SPI2
2018-03-17 11:37:11 +00:00
Robert Jördens
a04bd5a4fd
spi2: xfers take one more cycle until ~busy
2018-03-09 20:48:17 +01:00
Robert Jördens
37ec97eb28
ad9910/2: add sw invariant only when passed
2018-03-07 21:32:59 +01:00
Robert Jördens
f4dad87fd9
coredevice: add pcf8574a driver
...
I2C IO expander with 8 quasi-bidirectional pins
2018-03-06 14:27:19 +01:00
Sebastien Bourdeauducq
432e61bbb4
drtio: add kernel API to check for link status. Closes #941
2018-03-05 00:23:55 +08:00
Sebastien Bourdeauducq
928d5dc9b3
drtio: raise RTIOLinkError if operation fails due to link lost ( #942 )
2018-03-04 01:02:53 +08:00
Sebastien Bourdeauducq
abfbadebb5
doc: DMA can also raise RTIOUnderflow
2018-03-03 13:14:34 +08:00
Robert Jördens
cc70578f1f
remove old spi RTIO Phy
2018-03-01 11:19:18 +01:00
Robert Jördens
a7720d05cd
firmware, sayma: port converter_spi to spi2
...
* ksupport/nrt_bus
* port ad9154, hmc830, hmc7043
* port local_spi and drtio_spi
* port kernel_proto libdrtioaux, satman
* change sayma_rtm gateware over
* add spi2 NRTSPIMaster
* remove spi NRTSPIMaster
* change sayma device_db
* change HMC830 to open mode and explicitly sequence open mode
2018-03-01 11:19:18 +01:00
Robert Jördens
5046d6a529
ad9912/10: add a bit more slack to init()
2018-02-27 23:14:44 +01:00
Robert Jördens
b466a569bf
coredevice: export spi2
2018-02-24 09:49:31 +01:00
Robert Jördens
cff85ee13b
novogorny: simplify and fix coefficient
2018-02-23 10:09:44 +01:00
Robert Jördens
bc5e949bb4
novogorny: fix gain register length
2018-02-22 18:45:55 +00:00
Robert Jördens
1452cd7447
novogorny: add coredevice driver and test with Kasli
...
m-labs/artiq#687
2018-02-22 17:19:51 +01:00
Robert Jördens
74517107f0
ad9912: add slack after prodid read
2018-02-22 17:19:51 +01:00
Robert Jördens
e8d4db1ccf
coreanalyzer: add spi2 support
...
m-labs/artiq#926
2018-02-22 11:28:46 +01:00
Robert Jördens
f8e6b4f4e3
ad5360: port to spi2
...
* kc705 nist_clock target gateware
* coredevice driver
* moninj code
* test/example/device_db
This is untested as we don't have a AD5360 board right now.
Will be tested with Zotino v1.1
m-labs/artiq#926
2018-02-22 10:25:46 +01:00
Robert Jördens
898bad5abc
spi2: fixes
2018-02-21 19:41:05 +01:00
Robert Jördens
a63fd306af
urukul: use spi2
...
* switch kc705 and kasli targets to spi2 gateware on urukul
* rewrite urukul, ad9912, ad9910
* update example experiments, device_dbs
2018-02-21 15:00:28 +00:00
Robert Jördens
37a0d6580b
spi2: add RTIO gateware and coredevice driver
...
1006218997
2018-02-21 13:37:36 +00:00
Sebastien Bourdeauducq
4b4090518b
drtio: clean up remnants of removed debug functions
2018-02-19 15:14:32 +08:00
Robert Jördens
caedcd5a15
ad9912: cleanup, document init()
2018-02-18 11:38:16 +01:00
Robert Jördens
75c89422c9
ad991[02]: sysclk can be 1 GHz
2018-02-18 10:29:19 +00:00
Robert Jördens
2adba3ed33
urukul: document ad9912, and cpld, fix api
2018-02-14 09:45:17 +01:00
Robert Jördens
ede98679fc
ad9910: add documentation
2018-02-14 09:05:03 +01:00
Robert Jördens
7f1bfddeda
ad9910: tweak spi timing for higher speed
2018-02-13 22:13:40 +01:00