Commit Graph

6858 Commits

Author SHA1 Message Date
whitequark
f35f100110 compiler: don't crash printing locations of specialized functions.
Fixes #987.
2018-04-28 00:49:25 +00:00
8812824fb2 suservo: speed up example, interlock mem 2018-04-27 17:17:17 +00:00
ae80bab180 urukul: reg based io-update is a kernel 2018-04-27 16:42:09 +00:00
5d3c76fd50 sayma_rtm: use bitstream opts in migen 2018-04-27 15:43:32 +00:00
5f00326c65 suservo: coeff mem write port READ_FIRST 2018-04-27 15:43:32 +00:00
73fa572275 suservo: documentation, small API changes 2018-04-27 16:53:22 +02:00
Florent Kermarrec
4e2d9abaf7 firmware/ad9154: combine analog and digital delay of hmc7043 for sysref scan 2018-04-27 14:32:03 +02:00
fe9834bac4 suservo: update 'technology preview' example [wip]
Still with mostly undocumented and unstable API.
2018-04-27 12:04:17 +00:00
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
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
Florent Kermarrec
3802c7badb firmware/ad9154: add sysref scan/conf for jesd sc1 2018-04-27 13:20:20 +02:00
Florent Kermarrec
8212e46f5e sayma_amc: filter jesd refclk/sysref with jreset (hmc7043 can generate noise when unconfigured see sinara issue #541) 2018-04-27 13:04:37 +02:00
28ccca412a doc: automatic artiq_flash proxy 2018-04-26 10:50:23 +08:00
edbc7763e0 urukul: allow no io_update_device 2018-04-25 17:32:36 +00:00
8a1151b54f suservo: example device db 2018-04-25 17:14:25 +00:00
f9b2c32739 suservo: add pgia spi channel 2018-04-25 17:14:25 +00:00
c83305065a suservo: add servo/config/status register 2018-04-25 15:59:06 +00:00
105068ad90 suservo: fix restart timing 2018-04-25 15:19:49 +00:00
c304b6207a suservo: drop adc idelays 2018-04-25 14:59:50 +00:00
b44d6517d1 suservo: use 125 MHz SDR ADC
* easier timing
* natural sampling on rising edge
* timing, signal robustness
* adjust the servo iteration timing
2018-04-25 14:32:23 +00:00
37c186a0fc suservo: refactor, constrain
* remove DiffMixin, move pad layout handling to pads
* add input delay constraints, IDELAYs
2018-04-25 13:44:52 +00:00
d0258b9b2d suservo: set input delays 2018-04-24 15:30:25 +00:00
fe75064c1e suservo: cleanup rtio interface 2018-04-24 13:08:40 +00:00
3942c2d274 suservo: fix clkout cd drive 2018-04-24 10:18:32 +00:00
f74998a5e0 suservo: move arch logic to top, fix tests 2018-04-23 21:11:26 +00:00
4903eb074c suservo: use BUFIO/BUFH for ADC 2018-04-23 18:30:19 +00:00
e36deab0a8 suservo/adc: try to help vivado extract srls 2018-04-23 18:30:19 +00:00
929ed4471b kasli/SUServo: use suservo, implement urukul_qspi
m-labs/artiq#788
2018-04-23 18:30:18 +00:00
4c1e356f67 suservo: add pads rewiring layer for eems 2018-04-23 18:30:18 +00:00
99dd9c7a2a suservo: fix rtio interface width 2018-04-23 18:30:18 +00:00
d5eea962ec suservo: fix cnv_b diff 2018-04-23 18:30:12 +00:00
c8fd63754a suservo: add unittests
m-labs/artiq#788
2018-04-23 18:25:59 +00:00
934c41b90a gateware: add suservo
from
fe4b60b902

m-labs/artiq#788
2018-04-23 18:24:59 +00:00
4fe09fddd5 examples/kc705_nist_clock: update to new ad53xx driver 2018-04-22 15:03:30 +08:00
c47d3ec8c8 zotino: use None as default for ldac and clr
This is also what AD53xx does.
2018-04-22 15:03:01 +08: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
whitequark
873324d52b firmware: don't truncate queued RPCs (fixes #985). 2018-04-21 19:39:46 +00:00
whitequark
58967f14fd compiler: do not try to re-coerce fully coerced numerics. 2018-04-21 18:25:52 +00:00
whitequark
742e273441 Commit missing part of b4e3c30d. 2018-04-20 15:27:27 +00:00
whitequark
0d5fd1e83d runtime: fix race condition in log extraction code paths (#979).
The core device used to panic if certain combinations of borrows
of the log buffer happened. Now they all use .try_borrow_mut().
2018-04-20 15:26:00 +00:00
whitequark
b4e3c30d8c compiler: desugar x != y into not x == y (fixes #974). 2018-04-20 12:20:45 +00:00
a4f1877085 CONTRIBUTING: add checklist for code contributions 2018-04-17 23:26:00 +02:00
1b2a4bcbab doc: add out-of-tree controller ports
* newfocus8742 (https://github.com/quartiq/newfocus8742)
* ptb-drivers (https://github.com/quartiq/ptb-drivers)
* picam (https://github.com/quartiq/picam)
2018-04-17 23:26:00 +02:00
Florent Kermarrec
fe689ab4f2 firmware/serwb: add link test, use info! instead of debug! for link settings (useful to analyze logs from others boards) 2018-04-17 19:24:22 +02:00
Florent Kermarrec
439d2bf2bc sayma/serwb: adapt, full reset of rtm on link reset 2018-04-17 19:24:03 +02:00
Florent Kermarrec
8edf4541d6 serwb: adapt test 2018-04-17 19:21:53 +02:00
Florent Kermarrec
20ccc9d82f serwb/core/phy: move scrambler in phy, add link test, revert delay min/max checks 2018-04-17 19:21:21 +02:00
Florent Kermarrec
ebfac36223 serwb/scrambler: dynamic enable/disable 2018-04-17 19:20:06 +02:00
Florent Kermarrec
816a6f2ec7 serwb/phys: remove phy_width (revert linerate to 1Gbps) 2018-04-17 19:19:18 +02:00