Commit Graph

11 Commits

Author SHA1 Message Date
ab1735950b fix memory safety issue in ethernet interface (closes #33)
The CPU is allowed to access normal memory writes out-of-order. Here
the write to the OWN flag in the DMA descriptor (normal memory) was
placed after the DMA tail pointer advance (in device memory, so not
reorderable). This meant the ethernet DMA engine stalled as it saw
a descriptor it did not own, and only restarted and sent the packet
when the next packet was released.

This fix will work as long as the CPU data cache is disabled. If we
want to enable the cache, the simplest method would be to mark SRAM3
as uncacheable via the MPU.
2019-11-16 03:25:42 +00:00
0b4f7c9201 remove unused code, deny warnings 2019-11-11 12:04:50 +01:00
ba5634fb31 smoltcp: bump 2019-08-27 13:19:03 +00:00
61250a3e90 cargo: bump stm32h7, misc 2019-07-29 08:34:46 +00:00
ef18eb38ca ethernet peripheral ownership, cs 2019-05-06 18:10:42 +00:00
86dbdf98e2 stm32h7 svd and pac changes 2019-05-06 08:48:22 +00:00
0ebcd685c3 eth: remove counter 2019-04-29 20:00:53 +02:00
cd284d2c07 eth: mtu clarification 2019-04-29 17:55:24 +00:00
9863ba3a33 cleanup 2019-04-29 11:03:39 +00:00
0efd14aec8 ethernet: tweak 2019-04-28 14:06:56 +00:00
0fafd7aa42 eth: sketch
eth: rework

ethernet: wip

eth: simplify

cargo: bump stm32h7

ethmac: rework

ethmac: fixup

cargo: semihosting version bump

ethmac: fixup

eth: tweak

eth: cleanup

eth: tweaks

eth: more debug

eth: tweak

memory: rename for clarity

eth: tweak

eth: pings

eth: cleanup

eth: cleanup, use interrupts, tighten filter
2019-04-27 16:17:28 +00:00