harry commented on issue renet/ENC424J600#9 2021-04-23 12:47:07 +08:00
Can SPI chip select timing be ensured without delay_ns?

@occheung When you're free again, would you please show us how to test that this behaviour has been completely eliminated?

harry opened issue renet/ENC424J600#9 2021-04-23 12:45:50 +08:00
SPI NSS (chip select) might go high too early after data received
harry commented on pull request renet/ENC424J600#2 2021-04-21 17:16:51 +08:00
Remove cortex-m dependencies for delay

Agh! Finally found someone else complaining about a similar situation as we do: https://github.com/rust-embedded/embedded-hal/issues/264

I'm going to read through it and see what steps we can…

harry commented on pull request renet/ENC424J600#2 2021-04-21 11:35:55 +08:00
Remove cortex-m dependencies for delay

When Dip comes back, I'd like to know the actual reason behind this delay between CS assertion/dessertion and the actual SPI transfer. Must the delay be in nanoseconds?

harry opened issue renet/ENC424J600#8 2021-04-21 10:44:43 +08:00
NAL should be removed
harry merged pull request renet/ENC424J600#7 2021-04-12 09:28:56 +08:00
nal: Fix loops & socket handle management
harry pushed to master at renet/ENC424J600 2021-04-12 09:28:56 +08:00
232a08f110 nal: Fix comments & styling
2eadb652ff nal: Fix infinite loop when TX buffer is full
6de19f43cc nal: Prevent pushing duplicate handles for the same TcpSocket
66c3aa534f nal: socket (TcpSocket) → handle; internal_socket → socket
99899e6657 nal: Fix read/write not pushing erroneous socket back to the stack
Compare 6 commits »
harry pushed to master at M-Labs/nix-scripts 2021-04-07 13:54:32 +08:00
b5e19a2944 artiq-full: build ap drtio system
harry pushed to master at harry/mlabs-kb-cobalt 2021-03-25 11:57:54 +08:00
f49b92a606 posts/000001: fix confusing description about ext clk on Kasli
harry commented on pull request renet/ENC424J600#7 2021-03-17 10:23:20 +08:00
nal: Fix loops & socket handle management

In 232a08f11012fd749b68882140a8b9dc1a653363, I added a pair of newlines, one before the comment line (that explains polling), and one after self.poll(). Would that be good?

harry commented on pull request renet/ENC424J600#7 2021-03-17 10:21:43 +08:00
nal: Fix loops & socket handle management

Resolved in 232a08f11012fd749b68882140a8b9dc1a653363 by copying this original line of comment verbatim.

harry pushed to fix-nal at renet/ENC424J600 2021-03-17 10:21:25 +08:00
232a08f110 nal: Fix comments & styling
ca2fea4ed4 nal: Fix comments
Compare 2 commits »
harry pushed to fix-nal at renet/ENC424J600 2021-03-17 10:18:33 +08:00
ca2fea4ed4 nal: Fix comments
harry commented on pull request renet/ENC424J600#7 2021-03-16 14:59:25 +08:00
nal: Fix loops & socket handle management

Just added 2eadb652ff1d8e043736006aa74170dbb6d67f15 to deal with full TX buffer. We could check smoltcp::socket::TcpSocket::can_send() before doing send_slice(), but by just checking the number…

harry pushed to fix-nal at renet/ENC424J600 2021-03-16 10:25:27 +08:00
2eadb652ff nal: Fix infinite loop when TX buffer is full
harry commented on pull request renet/ENC424J600#7 2021-03-12 13:59:17 +08:00
nal: Fix loops & socket handle management

@astro Thanks a lot for reviewing this. I didn't update the PR description early enough before you pushed your review, and I just updated it to show some corrections.

The main thing I've changed…

harry pushed to fix-nal at renet/ENC424J600 2021-03-12 12:36:38 +08:00
6de19f43cc nal: Prevent pushing duplicate handles for the same TcpSocket
harry commented on pull request renet/ENC424J600#7 2021-03-12 11:44:46 +08:00
nal: Fix loops & socket handle management

Perhaps @occheung meant that the internal_socket is the socket stored "internally" in the smoltcp::socket::SocketSet within the NetworkStack, which returns the socket needed using the socket

harry pushed to fix-nal at renet/ENC424J600 2021-03-12 11:44:34 +08:00
66c3aa534f nal: socket (TcpSocket) → handle; internal_socket → socket
harry commented on pull request renet/ENC424J600#7 2021-03-12 11:30:19 +08:00
nal: Fix loops & socket handle management

Right. Before, poll() is simply part of update(), and I decided to separate them simply for the sake of clarity.

What do you think: is it good to keep them separated?