Commit Graph

156 Commits

Author SHA1 Message Date
Wladimir J. van der Laan
d7eb8dd0e8 rust: sysctl PLL setting
Port over the terrible PLL frequency setting code, and use it to set up
the clocks for every demo.
2019-08-20 21:18:23 +00:00
Wladimir J. van der Laan
f8f7235daa rust: UART/network optimizations 2019-08-18 14:40:19 +00:00
Wladimir J. van der Laan
2840ec0cf9 doc: Add important note on I2C addresses 2019-08-18 11:32:53 +00:00
Wladimir J. van der Laan
213ca1d50e rust: Use buffered UART1 in term-server and weather 2019-08-16 17:27:39 +00:00
Wladimir J. van der Laan
1118d708b1 rust: Actually provide trap handler 2019-08-15 20:53:22 +00:00
Wladimir J. van der Laan
335f728b72 rust: Drop cc-rs patch
1.0.40 was released with RISC-V support !
2019-08-15 14:57:53 +00:00
Wladimir J. van der Laan
1990bff89f rust: k210-pac dependency bump 2019-08-15 12:48:41 +00:00
Wladimir J. van der Laan
b6b5d13b0c rust: Add interrupt test
really want to handle UART interrupts so this needs PLIC
and dispatching but this is a start…
2019-08-14 18:35:38 +00:00
Wladimir J. van der Laan
31da4a7cd7 rust: Update secp256k1 dependency to 0.15.2
`lowmemory` feature was merged upstream, no need for a patch anymore.
2019-08-14 17:57:05 +00:00
Wladimir J. van der Laan
0dcbeda646 rust: sdcard read/write sectors using DMA 2019-08-12 17:43:16 +00:00
Wladimir J. van der Laan
ed91b43e2a rust: sdlcd improvements
- Init error reporting
- Put 16-bit halves of display output correctly
- Better comments
2019-08-12 07:37:32 +00:00
Wladimir J. van der Laan
a46b314c6d rust: Clean up sdlcd, add ffmpeg commandline to README 2019-08-12 06:57:27 +00:00
Wladimir J. van der Laan
31dc21ce85 rust: Add sdlcd example
Stream raw SD card contents directly to LCD screen.
2019-08-11 18:16:53 +00:00
Wladimir J. van der Laan
862407a1bc rust: Comment update 2019-08-11 18:16:53 +00:00
Wladimir J. van der Laan
e32ba5b66a rust: Bump LCD SPI clock rate
Now that LCD is using DMA, the SPI clock rate can be increased.
2019-08-11 18:16:53 +00:00
Wladimir J. van der Laan
a5d1f5c9ae rust: Make SPI send/recv loops nicer
Use iterators to make the loops simpler.
2019-08-11 18:16:53 +00:00
Wladimir J. van der Laan
161bd9982e rust: Prefer X::from to as X 2019-08-11 18:16:44 +00:00
Wladimir J. van der Laan
c2c6287f9c rust: Basic sdcard test
Print SD card information and dump a sector.
2019-08-11 09:56:54 +00:00
Wladimir J. van der Laan
ff1e5c5483 Rust dependency bump 2019-08-09 14:51:54 +00:00
Wladimir J. van der Laan
6056338e93 rust/secp256k1-test: Pushing bits upstream
Not yet upstream:
- cc-rs: disable fPIC for risc-v targets
- secp256k1: low-memory feature
- riscv-rt: .sdata2 sections linker script
2019-08-08 06:48:30 +00:00
Wladimir J. van der Laan
d9434deb22 rust/game-of-life: Check toggle coords against correct bounds 2019-08-07 18:32:09 +00:00
Wladimir J. van der Laan
4ed4555586 rust: Add secp256k1 test 2019-08-07 18:14:48 +00:00
Wladimir J. van der Laan
e43668a88c rust: Remove k210-pac patch
Upstream k210-pac is good enough now, no need to override it anymore.
2019-08-07 13:01:01 +00:00
Wladimir J. van der Laan
4e5ea50f08 rust: lcd: Clarify magic values 2019-08-07 11:27:49 +00:00
Wladimir J. van der Laan
e86d5c5f75 Use DMAC for display everywhere
This mimics the way the Kendryte SDK does things—it is better because
the MMIO based SPI tends to sometimes lose synchonization when the CPU
doesn't keep up providing data fast enough.
2019-08-07 10:22:05 +00:00
Wladimir J. van der Laan
2906c8c895 DMAC!
Add basic DMAC support (SPI/LCD first).

The current implementation (adding _dma to LCD traits) is really, really
awkward and just for testing. Probably it would be better for the LCD to
own its own dedicated DMA channel to avoid having to pass them in
for every… single… thing…
2019-08-07 09:19:44 +00:00
Wladimir J. van der Laan
59fe6125a6 Merge branch 'master' of https://github.com/laanwj/k210-sdk-stuff 2019-08-05 18:14:39 +00:00
Wladimir J. van der Laan
3c7451e04f doc: Clean up lcd controller line in onboard.md 2019-08-01 23:26:35 +02:00
Wladimir J. van der Laan
0f15e5f85d weather: Repeat query every 10 minutes 2019-07-26 12:32:04 +00:00
Wladimir J. van der Laan
838067dcb0 esp8266at: Add 'dyn' for traits as requested by compiler 2019-07-26 11:15:39 +00:00
Wladimir J. van der Laan
c091f406eb Fix cargo build in /rust
Move esp8266 out of the workspace, it defaults to `nom` with different
features (`std` enabled) which means that `std` gets enabled for use of
nom (see https://github.com/rust-lang/cargo/issues/4463).

This caused the build to fail with missing std in riscv-….
2019-07-26 11:06:22 +00:00
Wladimir J. van der Laan
427e370600 rust: Bump riscv-rt dependency
This version bump is necessary to get a linker script that works with
newer nightlies.
2019-07-23 18:29:06 +00:00
Wladimir J. van der Laan
6cd6168038 rust: Add term-server demo 2019-07-06 16:00:06 +00:00
Wladimir J. van der Laan
d4b2b6bbbd rust: Dependency bump k210-hal
Peripherals moved to pac, UARTS take the pins to use and internally
configure sysctl.
2019-07-03 18:24:24 +00:00
Wladimir J. van der Laan
02f1e24258 rust/weather: Revert unintentional changes 2019-07-02 17:53:40 +00:00
Wladimir J. van der Laan
c1fc53d249 Dependencies bump 2019-07-02 17:20:39 +00:00
Wladimir J. van der Laan
3ff4933a88 Comment updates 2019-07-02 15:13:22 +00:00
Wladimir J. van der Laan
ec7ce47dff rust: Add rust version of glyph mapping demo 2019-06-02 12:51:51 +00:00
Wladimir J. van der Laan
1531cc8fe0 dvp-ov: Align frame to 64 bytes
The magic seems to work without (how do we even DMA without the DMAC?),
but when in doubt better to follow the SDK.
2019-06-02 09:56:39 +00:00
Wladimir J. van der Laan
e9f95b7e0d rust: Fix orientation in dvp-ov
Camera image was rotated by 180 degrees, the easiest way to fix this
is to rotate the display from LRUD to RLDU.
2019-06-01 23:25:41 +00:00
Wladimir J. van der Laan
610af76592 rust: esp8266at: Wrap parsing of responses to avoid exposing dependency on nom
Makes it possible to switch parser later for whatever reason,
it's undesirable to expose these implementation details to clients.
2019-06-01 23:06:00 +00:00
Wladimir J. van der Laan
d20791330d rust: Remove wrong comment from dvp 2019-06-01 22:51:53 +00:00
Wladimir J. van der Laan
9bdd98f29b rust: Clean up SPI interface
Selectively borrow types from pac, this breaks the need for a direct
dependency on pac for clients of SPI and makes the interface easier to
use.
2019-06-01 22:07:52 +00:00
Wladimir J. van der Laan
00ac503e3e rust: clean up FPIOA interface
Remove need for .into() everywhere by accepting everything
that goes into usize in the appropriate methods.
2019-06-01 21:56:35 +00:00
Wladimir J. van der Laan
1630dc2a31 rust: Add dvp-ov 2019-06-01 21:56:35 +00:00
Wladimir J. van der Laan
cd7f72f03f rust: Improve DVP interface
Clean up interface a bit.
2019-06-01 21:56:35 +00:00
Wladimir J. van der Laan
8cc5ff53f5 rust: DVP
Add support for DVP peripheral.
2019-06-01 21:56:35 +00:00
Wladimir J. van der Laan
5f2c94fa01 rust: Simplify I2C traits
All the I2C blocks are the same, no need for all the different
abstractions. Fix a wrongly copy-pasted comment.
2019-06-01 09:35:42 +00:00
Wladimir J. van der Laan
62b594b8dc rust: make PWM usable with every timer 2019-05-31 16:17:11 +00:00
Wladimir J. van der Laan
f8166abd0f rust/esp8266at: Pass a FnMut directly
There's no good reason to require a mutable reference to a closure
here.

Also works around https://github.com/rust-embedded/riscv-rt/issues/33
2019-05-31 11:31:14 +00:00