Commit Graph

325 Commits

Author SHA1 Message Date
whitequark 188764693e runtime: we're growing, put storage at 1M instead of 512K. 2017-12-26 03:34:16 +00:00
whitequark e2513a2401 runtime: ensure flash storage never overlaps with runtime sections. 2017-12-26 03:31:37 +00:00
whitequark 6e341da3a1 runtime: simplify. NFC. 2017-12-26 02:31:28 +00:00
whitequark 061fb3dcd5 runtime: remove accidentally committed parts of a Makefile. 2017-12-25 20:30:13 +00:00
whitequark 230f2e5e18 runtime: print (address-only) backtraces on core device panics. 2017-12-25 18:32:41 +00:00
whitequark 3eec15c01d firmware: fix compatibility with newer rustc. NFC. 2017-12-25 17:16:05 +00:00
Sebastien Bourdeauducq 00ed51f6f4 satman: use new alloc_list (#880) 2017-12-23 22:15:39 +08:00
Sebastien Bourdeauducq a6ffe9f38d drtio: add Sayma top-level designs 2017-12-21 23:08:56 +08:00
Sebastien Bourdeauducq a23251276d Revert "sayma: set up Si5324 for RGMII clock rerouting"
This reverts commit 2b01aa22b6.
2017-12-21 14:42:15 +08:00
whitequark 701308474f runtime: update smoltcp. 2017-12-19 15:51:03 +00:00
whitequark aaba36be7a runtime: log moninj messages at TRACE level, like all others. 2017-12-16 22:39:13 +00:00
whitequark 8cece4f260 runtime: hotswap slightly more carefully.
This generally lets some last characters out of UART, last ACKs
out of queues, etc. Nothing guaranteed though.
2017-12-16 22:39:13 +00:00
whitequark 4a9d8c9459 runtime: fix a warning. 2017-12-16 22:39:13 +00:00
Sebastien Bourdeauducq 2b01aa22b6 sayma: set up Si5324 for RGMII clock rerouting 2017-12-17 00:25:33 +08:00
Sebastien Bourdeauducq f02c74cb7b libboard/si5324: enable both clock outputs 2017-12-15 16:56:44 +08:00
Sebastien Bourdeauducq 9caef3c1d3 libboard/si5324: configure I2C mux on Sayma 2017-12-15 16:45:26 +08:00
Sebastien Bourdeauducq 77977932f2 firmware: remove AD9516 support
This was only used in KC705 phaser.
2017-12-14 19:16:39 +08:00
Sebastien Bourdeauducq 5809e08686 runtime: no startup_clock config is not an error 2017-12-14 12:39:26 +08:00
whitequark 9e8bb1d51c runtime: update smoltcp. 2017-12-08 07:36:56 +00:00
Sebastien Bourdeauducq 66e089b376 libboard/serwb: more explicit retry log message 2017-12-02 10:51:13 +08:00
Florent Kermarrec 0eb9f93611 libboard/serwb: retry serwb initialization on error 2017-12-01 22:45:05 +01:00
Sebastien Bourdeauducq 2e5b20d53d libboard/hmc830_7043: enable HMC830 2017-11-30 12:06:54 +08:00
Sebastien Bourdeauducq ad2a32d381 libboard/ad9154: small cleanup 2017-11-30 11:33:58 +08:00
Florent Kermarrec bd75954192 libboard/ad9154: update for sayma (spi, jesd parameters, linerate), breaks kc705/ad9154 fmc support 2017-11-29 18:09:39 +01:00
Florent Kermarrec 8b8da39a8f libboard/hmc830_7043.rs: fix HMC7043 comments 2017-11-29 17:59:42 +01:00
Sebastien Bourdeauducq 19498e59f9 libboard: fix JESD reset release 2017-11-29 18:18:41 +08:00
Sebastien Bourdeauducq cfb41e71a8 libboard: print serwb settings at the debug log level 2017-11-28 01:23:33 +08:00
whitequark 8e8f037971 runtime: print ethmac preamble error count.
Also, print total error count, not the difference (but still compute
the difference to determine *when* to print).
2017-11-26 22:35:26 +00:00
whitequark 26fdd42f8f runtime: update smoltcp. 2017-11-22 08:09:06 +00:00
Florent Kermarrec a3383c340c firmware/satman/lib.rs: has_serwb_phy to has_serwb_phy_amc 2017-11-18 18:09:35 +01:00
Florent Kermarrec 39a8fc682d artiq/firmware/libboard/hmc830_7043.rs: some cleanup, don't use hmc830 for now 2017-11-18 18:08:31 +01:00
Florent Kermarrec aff1609a53 firmware/libboard: use correct jesd clocking 2017-11-10 10:56:45 +01:00
Florent Kermarrec d90d624877 firmware/libboard/serwb: revert init reset, show delay 2017-11-10 10:53:20 +01:00
Florent Kermarrec 76ddb063cf gateware/targets/sayma: get hmc830/7043 spi working (still need to test clock generation) 2017-11-06 12:08:28 +01:00
whitequark fcd660d682 runtime: remove accidentally deleted code. 2017-11-03 16:10:59 +00:00
whitequark dfb2fe0b80 runtime: allow #[cfg(not(has_ethmac))] builds. 2017-11-03 16:09:22 +00:00
whitequark 4835431ac3 runtime: allow #[cfg(not(has_kernel_cpu))] builds. 2017-11-03 16:04:17 +00:00
whitequark ad8fcb8b86 runtime: has_rtio -> has_rtio_core.
has_rtio is the cfg for the kernel CPU, has_rtio_core is the one
for the comms CPU.

Also remove a few useless #[cfg]s.
2017-11-03 15:59:59 +00:00
whitequark 2404a0d8c8 runtime: allow #[cfg(not(has_rtio))] builds. 2017-11-03 15:49:30 +00:00
Florent Kermarrec b3e920b3c8 firmware/libboard/serwb: fix init 2017-11-03 12:16:16 +01:00
Sebastien Bourdeauducq 0d8bad5128 runtime: fix rtio::log 2017-11-03 09:25:37 +08:00
Sebastien Bourdeauducq 4387b0be1e clean up rtio_log 2017-11-03 00:52:53 +08:00
whitequark b03e36e4e9 conda: update misoc. 2017-10-30 09:33:02 +00:00
whitequark 7f32ae31de runtime: fix a typo. 2017-10-30 08:48:35 +00:00
whitequark a66450b0af runtime: temporarily revert ethmac statistics collection. 2017-10-30 08:27:51 +00:00
whitequark ae2d7abbed runtime: update smoltcp. 2017-10-30 08:26:54 +00:00
whitequark cdf63c5ea0 runtime: interrogate ethmac error counters and display changes. 2017-10-30 07:46:23 +00:00
whitequark 978c0d98aa runtime: update smoltcp. 2017-10-30 07:22:47 +00:00
whitequark 8e91856426 runtime: parse the "ip" configuration as IP, not CIDR.
Or it defaults to the default IP on settings that were previously
perfectly valid.
2017-10-30 04:25:58 +00:00
whitequark 6bdeddd201 runtime: remove UDP-related code. 2017-10-25 02:55:01 +00:00
whitequark cdba330845 Update smoltcp.
Fixes #840.
2017-10-25 02:31:27 +00:00
whitequark 9d356ed93b firmware: implement board::pcr. 2017-10-18 11:04:13 +00:00
Robert Jördens e1e1f58ba9 libboard: fix use 2017-10-13 12:26:34 +02:00
whitequark e7dac530c1 runtime: avoid hardcoding ethmac slot layout, use info from CSR. 2017-10-03 19:16:11 +00:00
Sebastien Bourdeauducq a89b053473 firmware: wait for HMC830 lock 2017-10-04 01:42:57 +08:00
whitequark 2684aec4c6 firmware: use read_unaligned instead of a hack. NFC. 2017-10-02 03:38:31 +00:00
whitequark fd07c3f4d7 runtime: get rid of config_dummy.rs. NFC.
Use the same strategy as elsewhere.
2017-10-02 03:20:50 +00:00
whitequark 73c76ebb9a firmware: eliminate most transmutes and document the rest. NFC. 2017-10-02 03:09:46 +00:00
whitequark 7ad54e1dcf firmware: unbreak heap view.
This was missing since 7799413a for no good reason.
2017-10-02 02:02:45 +00:00
Sebastien Bourdeauducq b4c52c34f7 Merge branch 'sinara' 2017-09-30 01:11:16 +08:00
Sebastien Bourdeauducq 6c049ad40c rtio: report channel numbers in asynchronous errors 2017-09-29 16:32:57 +08:00
Sebastien Bourdeauducq 5437f0e3e3 rtio: make sequence errors consistently asychronous 2017-09-29 14:40:06 +08:00
whitequark c00b3fe8cd firmware: update smoltcp. 2017-09-24 22:57:27 +00:00
whitequark 7799413a41 firmware: update Rust from 1.18.0 to 1.20.0. 2017-09-24 22:51:44 +00:00
Sebastien Bourdeauducq 20d79c930c drtio: use SED and input collector 2017-09-24 12:23:47 +08:00
whitequark c1829f3eda runtime: update smoltcp. 2017-09-22 19:05:18 +00:00
Sebastien Bourdeauducq 928cffb09b firmware: export floor() in ksupport. Closes #828 2017-09-10 12:07:06 +08:00
Sebastien Bourdeauducq 264d5fde83 runtime: fix Rust types in RTIO
Previous code assumed all RTIO registers were u32, but this was changed
by misoc c5edcd08.
2017-09-06 19:21:39 +08:00
Sebastien Bourdeauducq 2b2b345eb9 firmware: wait for serwb to be ready before proceeding further 2017-09-06 11:07:07 +08:00
Sebastien Bourdeauducq 33f053cff8 libboard: complete but undebugged support for HMC830/7043 programming 2017-09-06 10:46:02 +08:00
Sebastien Bourdeauducq 4baf17cebe libboard: generate HMC7043 register write list 2017-09-05 21:46:03 +08:00
Sebastien Bourdeauducq 091bb28043 libboard: use libbuild_artiq 2017-09-05 21:13:04 +08:00
whitequark 74b7010d67 runtime: allow safely pulling logs even on TRACE log level.
Before this commit, this resulted in a packet flood, because
sending a TRACE log message to the host caused more TRACE log
messages to be emitted.
2017-08-31 14:13:51 +00:00
Sebastien Bourdeauducq b609366c6f runtime: fix Rust types in RTIO
Previous code assumed all RTIO registers were u32, but this was changed
by misoc c5edcd08.
2017-08-31 13:42:32 +08:00
Sebastien Bourdeauducq 44edba0c65 firmware: add placeholder code for HMC830/7043 initialization 2017-08-31 13:35:47 +08:00
Sebastien Bourdeauducq 0a5904bbaa firmware: support for multiple JESD DACs 2017-08-31 13:05:48 +08:00
whitequark 4883eea252 libproto: simplify (NFC). 2017-08-31 02:48:59 +00:00
whitequark 20f43d5792 firmware: fix ethmac MTU value.
1500 is the maximum payload size, not maximum frame size.
2017-08-31 00:57:35 +00:00
whitequark 737c1044a4 firmware: update smoltcp. 2017-08-31 00:45:56 +00:00
whitequark f26e698f31 Revert "firmware: reduce ethmac maximum burst size by one."
This reverts commit 2231b16e0a.

Only made a difference with TRACE log level to UART, i.e. only
because UART was the bottleneck.
2017-08-30 15:22:20 +00:00
whitequark 39ecbc0d68 firmware: update smoltcp. 2017-08-30 14:35:45 +00:00
whitequark 2231b16e0a firmware: reduce ethmac maximum burst size by one.
Empirically, this much reduces packet loss. I'm not really sure why,
but it seems safe to do the change.
2017-08-30 14:35:25 +00:00
whitequark e6e176fa14 Revert "firmware: update smoltcp."
This reverts commit 7c340f6b48.
2017-08-25 12:03:01 +00:00
whitequark 7c340f6b48 firmware: update smoltcp. 2017-08-25 07:20:38 +00:00
whitequark f5e1d9568d firmware: update smoltcp. 2017-08-24 05:50:59 +00:00
Sebastien Bourdeauducq ac83bfbd8e runtime: add support for targets without SPI flash 2017-08-20 11:28:57 -04:00
Sebastien Bourdeauducq 8459cfe8db firmware: remove unnecessary git_describe rust-cfg 2017-08-15 08:14:17 -06:00
whitequark dd87508a7f Implement forwarding of logs from core device to master.
Fixes #691.
2017-07-18 05:31:59 +00:00
whitequark 819440f839 runtime: split log timestamp into secs.micros. 2017-07-18 05:31:59 +00:00
Sebastien Bourdeauducq 9045b4cc19 drtio: initial firmware support for multi-link 2017-07-18 00:40:21 +08:00
whitequark d06d53b00d firmware: don't bail out if building not from a git checkout (#783). 2017-07-15 03:16:21 +00:00
whitequark 1e2603572a runtime: fix a bug causing sockets to get stuck in CLOSE-WAIT. 2017-07-05 16:27:36 +00:00
whitequark ee1d5dbccb runtime: allow a much larger log buffer and avoid hacks. 2017-07-04 18:18:31 +00:00
whitequark 6a49c114c8 runtime: update smoltcp. 2017-06-28 00:27:22 +00:00
whitequark 370f22541c runtime: update smoltcp. 2017-06-27 21:06:45 +00:00
whitequark f17a6616b2 runtime: ensure management interface buffer can hold log buffer.
Otherwise we get weird edge cases where the network stack could try
to append to log buffer while management interface is holding
the log buffer and trying to push it out, and it's just no good.

The serialized log buffer at its maximum length is slightly longer
than 32 KiB, so we just allocate the largest possible TCP buffer
to the management interface to keep it simple.
2017-06-24 17:09:28 +00:00
whitequark 12357d884e runtime: update smoltcp. 2017-06-24 16:55:59 +00:00
Sebastien Bourdeauducq 66dee9d1ad drtio: send/process I2C and SPI aux packets (#740) 2017-06-21 16:50:51 +08:00
Sebastien Bourdeauducq f58f16ccd4 drtioaux: add default timeout 2017-06-21 16:23:11 +08:00
Sebastien Bourdeauducq 7675dd063b drtioaux: add I2C and SPI packets (#740) 2017-06-21 14:07:16 +08:00