Commit Graph

1459 Commits

Author SHA1 Message Date
99114e3c9c Fixing clippy 2021-06-15 13:49:06 +02:00
7294a69b66 Fixing clippy 2021-06-15 13:46:39 +02:00
9e083842ee Adding streaming to lockin app 2021-06-15 13:22:38 +02:00
2815d6d9e9 Updating docs 2021-06-15 13:18:16 +02:00
a54d855cbe Updating HAL tag 2021-06-15 12:54:57 +02:00
8d1f2cf9b6 Updating versions 2021-06-15 12:51:42 +02:00
b912f0c387 Merge branch 'feature/hal-update' into feature/livestream 2021-06-15 12:46:41 +02:00
9e182c850b Bumping HAL version 2021-06-15 12:46:03 +02:00
c96999de52 Moving ownership of hardware cs 2021-06-14 18:51:49 +02:00
d6ccf1cc83 Utilize interleaved CSn 2021-06-14 18:49:46 +02:00
b8c0abcea2 Updating HAL SPI usage to master version 2021-06-14 18:47:37 +02:00
5a947e459c Finalizing updates after testing 2021-06-11 17:52:11 +02:00
b40ca17fea Updating stream methodology 2021-06-11 16:36:19 +02:00
45bbfe186f saturating_scale: add test 2021-06-10 10:24:43 +02:00
b9284451e4 Fixing format 2021-06-09 15:31:00 +02:00
9bc351109c Reverting unintended changes 2021-06-09 15:30:33 +02:00
92c84a6bfe Allowing target to be runtime configurable 2021-06-09 15:25:59 +02:00
b5fdb31a02 Adding internal buffering to data stream blocks 2021-06-09 13:26:41 +02:00
b292cf45ab Fixing merge 2021-06-09 12:52:13 +02:00
e01d430e8e Merge branch 'master' into feature/livestream 2021-06-09 12:46:56 +02:00
bors[bot]
b0052128e0
Merge #378
378: deps: bump indirect dependencies r=jordens a=jordens



Co-authored-by: Robert Jördens <rj@quartiq.de>
2021-06-05 13:35:50 +00:00
a3c2d8a6d4 deps: bump indirect dependencies 2021-06-04 22:32:32 +02:00
bors[bot]
57524c7740
Merge #362
362: rj/visibility cleanup r=jordens a=jordens

- dsp: reduce num dependency
- clean up item visibility


Co-authored-by: Robert Jördens <rj@quartiq.de>
2021-06-04 15:32:57 +00:00
f514205f8d stabilizer: don't flatten namespace, renames 2021-06-04 17:02:09 +02:00
f60827e59a lockin: remove SPI error ISR
Let them be handled by HardFault here.
Keep them in dual-iir for debugging and show-casing their usage.
2021-06-04 12:00:15 +02:00
50ea2f360c Merge branch 'master' into rj/visibility-cleanup
* master: (34 commits)
  miniconf: update example usage
  apps: spi isrs are spi errors
  pounder/timestamp: docs updatew
  pll: update tests and benches
  pll: merge advance into update (like rpll)
  pll: add advance()
  pounder_timestamper: use input capture prescaler
  Revert "Revert "pounder timestmper: don't use DMA""
  miniconf: add some checks, simplify
  miniconf.py: make retain an option
  refactor flatten_closures
  clippy recursion
  fix a few clippy lints on files that are touched
  Revert "pounder timestmper: don't use DMA"
  pounder timestmper: don't use DMA
  lockin: dma fence
  lockin: port to fast double buffered DMA
  dma: implement overflow checking
  pounder: clippy
  pounder: add comment on channel enum
  ...
2021-06-04 11:59:54 +02:00
bors[bot]
387e9f12b8
Merge #374
374: rj/miniconf r=jordens a=jordens

- miniconf.py: make retain an option
- miniconf: add some checks, simplify


Co-authored-by: Robert Jördens <rj@quartiq.de>
2021-06-04 09:06:30 +00:00
77ae4363fd miniconf: update example usage 2021-06-04 11:05:49 +02:00
bors[bot]
5e2c2c8f30
Merge #367
367: dma: don't swap buffers r=jordens a=jordens

* This uses a new closure-based method to the DMA HAL implementation which
  gives access to the inactive buffer directly.
* It removes changing addresses, the third buffer for DBM, the inactive
  address poisoning, and allows the cancellation of the redundant repeat
  memory barriers and compiler fences.
* This is now around 20 instructions per buffer down from about 100 cycles
  before.
* Also introduces a new `SampleBuffer` type alias.
* The required unpacking of the resources structure is a bit annoying
  but could probably abstraced away.
* Reduced pounder capture rate to the batch rate using the prescaler.
* Removes the Pounder Timestamper DMA (close #260)

TODO:

* [x] Tested that dual-iir still works
* [x] Tested that DMA overflows are signaled as panics (batch size 1 at full rate)
* [x] Adapt `lockin`
* [x] Tested on FLS without pounder timestamp DMA.

Co-authored-by: Robert Jördens <rj@quartiq.de>
2021-06-04 08:57:32 +00:00
d84c79af2e apps: spi isrs are spi errors 2021-06-04 10:50:09 +02:00
73491fcb75 pounder/timestamp: docs updatew 2021-06-04 10:45:22 +02:00
bors[bot]
f1b305e13c
Merge #377
377: pll: merge advance into update (like rpll) r=jordens a=jordens



Co-authored-by: Robert Jördens <rj@quartiq.de>
2021-06-03 17:28:54 +00:00
3c574b3519 pll: update tests and benches 2021-06-03 19:24:25 +02:00
10da2d38ae pll: merge advance into update (like rpll) 2021-06-03 19:20:13 +02:00
bors[bot]
21776d1845
Merge #376
376: pll: add advance() r=jordens a=jordens



Co-authored-by: Robert Jördens <rj@quartiq.de>
2021-06-03 15:41:59 +00:00
971bc1109d pll: add advance() 2021-06-03 17:33:57 +02:00
2ba9e9c2f7 pounder_timestamper: use input capture prescaler 2021-06-03 10:31:23 +02:00
35536c0623 Revert "Revert "pounder timestmper: don't use DMA""
This reverts commit d97ee3f0c4.
2021-06-03 10:31:11 +02:00
af874c2eef miniconf: add some checks, simplify 2021-06-01 18:32:33 +02:00
28aef35d87 miniconf.py: make retain an option 2021-06-01 18:32:33 +02:00
93081c25c2 refactor flatten_closures 2021-06-01 17:55:42 +02:00
3b73783635 clippy recursion 2021-06-01 17:45:14 +02:00
18b6e99b10 fix a few clippy lints on files that are touched 2021-06-01 17:32:06 +02:00
bors[bot]
5be7d175c1
Merge #373
373: Rj/dsp tweaks r=jordens a=jordens

* saturating_scale fixes and docs

Co-authored-by: Robert Jördens <rj@quartiq.de>
2021-06-01 15:01:13 +00:00
60715303e7
Merge branch 'master' into rj/dsp-tweaks 2021-06-01 17:00:40 +02:00
d97ee3f0c4 Revert "pounder timestmper: don't use DMA"
This reverts commit 26b261364f.

First needs to reduce capture rate to batch interval. Otherwise it's
jittery due to polling alignment.
2021-06-01 16:57:51 +02:00
26b261364f pounder timestmper: don't use DMA
* One sample per batch is typical and sufficient.
* DMA has more overhead than direct read for one sample.
2021-06-01 16:33:47 +02:00
f8fa297b20 lockin: dma fence 2021-06-01 14:49:51 +02:00
b90f4ad185 lockin: port to fast double buffered DMA 2021-06-01 13:17:40 +02:00
c5a2704c41 dma: implement overflow checking 2021-06-01 13:11:16 +02:00