[riot-commits] [RIOT-OS/RIOT] 5cc990: cpu/esp32: cleanup of includes in esp_wifi

benpicco noreply at github.com
Thu Sep 5 13:51:12 CEST 2019


  Branch: refs/heads/master
  Home:   https://github.com/RIOT-OS/RIOT
  Commit: 5cc990fb7c0589e2573504ecada143b0c600ddd8
      https://github.com/RIOT-OS/RIOT/commit/5cc990fb7c0589e2573504ecada143b0c600ddd8
  Author: Gunar Schorcht <gunar at schorcht.net>
  Date:   2019-09-05 (Thu, 05 Sep 2019)

  Changed paths:
    M cpu/esp32/esp-wifi/esp_wifi_netdev.c

  Log Message:
  -----------
  cpu/esp32: cleanup of includes in esp_wifi


  Commit: 28ce17e64c2e7196942ae9429535bf7eef660e20
      https://github.com/RIOT-OS/RIOT/commit/28ce17e64c2e7196942ae9429535bf7eef660e20
  Author: Gunar Schorcht <gunar at schorcht.net>
  Date:   2019-09-05 (Thu, 05 Sep 2019)

  Changed paths:
    M cpu/esp32/esp-wifi/esp_wifi_netdev.c

  Log Message:
  -----------
  cpu/esp32: event handling changed in esp_wifi

Events of different type can be pending at the same time. Therefore it is not possible to use ascending identifiers for the presence of a pending event. Rather, each event type has to be represented by one bit. Thes bits ORed identify all types of pending events. In the esp_wifi_isr function all pending events are then handled in one call. Otherwise, some events might be lost.


  Commit: 1ed09492a4bb154e40d5a6cb79f97fd53d006324
      https://github.com/RIOT-OS/RIOT/commit/1ed09492a4bb154e40d5a6cb79f97fd53d006324
  Author: Gunar Schorcht <gunar at schorcht.net>
  Date:   2019-09-05 (Thu, 05 Sep 2019)

  Changed paths:
    M cpu/esp32/esp-wifi/esp_wifi_netdev.c

  Log Message:
  -----------
  cpu/esp32: param checks replaced by asserts in esp_wifi


  Commit: 0e4ab637354d531258693c94742573a2ea29b88f
      https://github.com/RIOT-OS/RIOT/commit/0e4ab637354d531258693c94742573a2ea29b88f
  Author: Gunar Schorcht <gunar at schorcht.net>
  Date:   2019-09-05 (Thu, 05 Sep 2019)

  Changed paths:
    M cpu/esp32/esp-wifi/esp_wifi_netdev.c

  Log Message:
  -----------
  cpu/esp32: uniform debug output in esp_wifi


  Commit: 74cbc410b7a6dbc0e0c3a965c32479df5c353442
      https://github.com/RIOT-OS/RIOT/commit/74cbc410b7a6dbc0e0c3a965c32479df5c353442
  Author: Gunar Schorcht <gunar at schorcht.net>
  Date:   2019-09-05 (Thu, 05 Sep 2019)

  Changed paths:
    M cpu/esp32/esp-wifi/esp_wifi_netdev.c

  Log Message:
  -----------
  cpu/esp32: ringbuffer introduced in esp_wifi

Receive call back function `_esp_wifi_rx_cb` is called from WiFi hardware driver with a pointer to a frame buffer that is allocated in the WiFi hardware driver. This frame buffer was freed immediately after copying its content to a single local receive buffer of the `esp_wifi` netdev. The local receive buffer remained occupied until the protocol stack had processed it. Further incoming packets were dropped.  However, very often a number of subsequent WiFi frames are received at the same time before the first one is processed completely. Having the single local receive buffer to hold only one received frame, led to a number of lost packets, even at low network load. Therefore, a ringbuffer of rx_buf elements was introduced which doesn't store the frames directly but only references to the frame buffers allocated in WiFi hardware driver. Since there is enough memory to hold several frames, the frames buffers allocated in WiFi hardware driver aren't freed immediatly any longer but are kept until the frame is processed by the protocol stack. This results in a much less loss rate of packets.


  Commit: 3d5ef146501226f3d63605f7d24c146a18eda159
      https://github.com/RIOT-OS/RIOT/commit/3d5ef146501226f3d63605f7d24c146a18eda159
  Author: Gunar Schorcht <gunar at schorcht.net>
  Date:   2019-09-05 (Thu, 05 Sep 2019)

  Changed paths:
    M cpu/esp32/esp-wifi/esp_wifi_netdev.c

  Log Message:
  -----------
  cpu/esp32: local buffer in send of esp_wifi

Instead of having a send buffer as member `esp_wifi` netdev, a local variable is used now as send buffer. This avoids the need for a locking mechanism and reduces the risk of deadlocks.


  Commit: 6d77529c8397e7b667736e38248b5cc08c09ad25
      https://github.com/RIOT-OS/RIOT/commit/6d77529c8397e7b667736e38248b5cc08c09ad25
  Author: Gunar Schorcht <gunar at schorcht.net>
  Date:   2019-09-05 (Thu, 05 Sep 2019)

  Changed paths:
    M cpu/esp32/esp-wifi/esp_wifi_netdev.c
    M cpu/esp32/esp-wifi/esp_wifi_netdev.h

  Log Message:
  -----------
  cpu/esp32: cleaning up left overs in esp_wifi


  Commit: 999fffdc595b048c785b36a7c694d5d529c8293e
      https://github.com/RIOT-OS/RIOT/commit/999fffdc595b048c785b36a7c694d5d529c8293e
  Author: benpicco <benpicco at googlemail.com>
  Date:   2019-09-05 (Thu, 05 Sep 2019)

  Changed paths:
    M cpu/esp32/esp-wifi/esp_wifi_netdev.c
    M cpu/esp32/esp-wifi/esp_wifi_netdev.h

  Log Message:
  -----------
  Merge pull request #11997 from gschorcht/cpu/esp32/esp_wifi/cleanups

cpu/esp32: esp_wifi improvements and cleanups


Compare: https://github.com/RIOT-OS/RIOT/compare/b3737715e51f...999fffdc595b


More information about the commits mailing list