[riot-notifications] [RIOT-OS/RIOT] drivers/w5100: Fixed netdev_driver_t::recv() API (#10412)

Martine Lenders notifications at github.com
Tue Jan 22 12:42:55 CET 2019

miri64 requested changes on this pull request.

I tested with `w5100` on `arduino-due`. On current master I was able to ping the link-local address of my laptop from the Arduino and to ping the link-local address of the Arduino from the laptop. However it doesn't work with this PR. When I ping the Arduino from my laptop, I see NS that try to do address resolution on the interface, but no NA in reply. When I ping the laptop from the Arduino I see NS and NAs, but no ICMPv6 echo requests (ping packets). So my guess is the device now drops *all* packets. I added a comment below with my suspicion why this is, but I am not 100% sure.

-            /* if RX buffer now empty, clear RECV interrupt flag */
-            if ((num - psize) == 0) {
-                wreg(dev, S0_IR, IR_RECV);
-            }
+        /* if frame received OR drop requested, remove frame from RX buffer */
+        if ((in_buf != NULL) || (len > 0)) {

I think this must be `&&`?

You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.riot-os.org/pipermail/notifications/attachments/20190122/c7dfd8bb/attachment-0001.html>

More information about the notifications mailing list