1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

155 Commits

Author SHA1 Message Date
benpicco
b0364941b5
Merge pull request #16082 from yarrick/link_state
pkg/lwip: Set netif link state properly when supported
2021-03-25 13:36:07 +01:00
Erik Ekman
d3ba3117f2 pkg/lwip: Use NETIF_FOREACH macro in sock implementation
Decreases dependency on lwIP internals, and will handle LWIP_SINGLE_NETIF.
2021-03-06 11:27:14 +01:00
Erik Ekman
9b03b79a85 pkg/lwip: Add netifs with netif_add_noaddr
Makes 6lowpan netifs work even if dual stack is enabled,
and one less static method needed.
2021-03-05 00:17:17 +01:00
Erik Ekman
60d5d1aa74 pkg/lwip: Set link state properly when supported
Set link state correctly in lwIP for interfaces that support
the NETOPT_LINK option. Interfaces that do not support it
(like tap for native arch) remain up all the time.

Netdevs that support NETOPT_LINK but do not send NETDEV_EVENT_LINK_UP/DOWN
events will end up with a mismatched link state - but DHCP would
already not start for them either.

Use netifapi to signal lwIP to do the work in its own thread.
2021-03-01 23:55:08 +01:00
Benjamin Valentin
a57e58d6ef lwip: hook up sam0_eth support 2021-02-26 12:54:40 +01:00
Martine Lenders
afb027852d
Merge pull request #15992 from yarrick/more_lwip
Add lwIP ifconfig shell command
2021-02-23 16:59:41 +01:00
Erik Ekman
9da7ea2dec pkg/lwip: Name sixlowpan netifs 2021-02-23 11:47:33 +01:00
Martine Lenders
de4ee0f934
Merge pull request #15562 from benpicco/socket_zep_register
socket_zep: register with netdev, provide EUI-64 as command line parameter
2021-02-20 20:32:01 +01:00
Erik Ekman
a29c835b2e lwip/esp: Support adding both netifs (eth/wifi) 2021-02-13 15:42:33 +01:00
Benjamin Valentin
d8918c24fa socket_zep: register with netdev 2021-01-25 22:59:01 +01:00
f4523140f1
pkg/lwip: fix typo (semaphor => semaphore) 2021-01-08 10:15:33 +01:00
Marian Buschsieweke
77b39c5550
pkg/lwip: Implement sock_aux_local
Provide address the IP packet / UDP datagram was received on in the auxiliary
data, if module sock_aux_local is used.
2020-12-04 12:51:48 +01:00
Marian Buschsieweke
9d46bc7d7f
Merge pull request #14703 from maribu/sock-aux-api
net/sock: Add access to auxiliary data (API only)
2020-12-03 12:08:49 +01:00
Marian Buschsieweke
893bfd13d0
net/sock_udp: Extend API for auxiliary data 2020-12-02 17:56:13 +01:00
Marian Buschsieweke
ebcf1c0ab4
net/sock_ip: Extend API for auxiliary data 2020-12-02 17:56:13 +01:00
Martine Lenders
71224b4b1e
lwip_sock: use new mbox_avail() function 2020-11-20 13:09:42 +01:00
Bas Stottelaar
38a5ff7d4b pkg/*: realign ENABLE_DEBUG 2020-10-23 02:43:10 +02:00
Bas Stottelaar
970c72a0cb pkg/*: add missing include of assert.h 2020-10-22 11:13:08 +02:00
Jose Alamos
246acb311f lwip: adapt bootstrap for nrf802154 2020-10-19 15:18:35 +02:00
Benjamin Valentin
1afe72a5e5 drivers/enc28j60: register with netdev 2020-10-08 10:36:56 +02:00
Benjamin Valentin
988ee1648f drivers/mrf24j40: register with netdev 2020-10-07 16:39:39 +02:00
Benjamin Valentin
53eedc283b drivers/at86rf2xx: register driver with netdev 2020-08-17 22:53:51 +02:00
Marian Buschsieweke
00c44b0924
pkg/lwip: Use IS_ACTIVE() & NETCONNTYPE_ISIPV6()
This also fixes an issue detected by `tests/lwip_sock_udp` when both IPv4 and
IPv6 are enabled.
2020-07-31 13:27:09 +02:00
Gunar Schorcht
b64ce62a8f pkg/lwip: fixes the netif handling for atwinc15x0
With PR #14349 the double stack mode for lwIP was activated. The ATWINC15x0 driver was provided before the changes in PR #14349 but merged after that. Therefore, the changes for the driver were not taken into account anymore and have to be applied accordingly.
2020-06-27 11:09:50 +02:00
Gunar Schorcht
f92d2acb0a pkg/lwip: support of ATWINC15x0 WiFi netdev 2020-06-26 12:33:38 +02:00
Martine S. Lenders
e80c473830
pkg/lwip: only use ip4_addr_t component of IP4_ADDR_ANY at bootstrap
IP4_ADDR_ANY is a generic address of type IPv4 when lwIP is compiled
with both IPv4 and IPv6, so we need to extract the `ip4_addr_t`
component when using with `netif_add()` as that is the expected type.
2020-06-25 12:45:37 +02:00
Martine S. Lenders
c0b7560dde
pkg/lwip: remove code duplication for IPv4-based netif initialization 2020-06-25 12:45:37 +02:00
Martine S. Lenders
035acc2e53
pkg/lwip: remove ipv6only clause for AF_INET6 sockets 2020-06-24 18:44:06 +02:00
2778e037fe
Merge pull request #14220 from aabadie/pr/pkg/lwip_nrf802154
pkg/lwip: add support for nrf802154
2020-06-16 11:13:33 +02:00
MichelRottleuthner
bd44f63557
Merge pull request #14150 from miri64/lwip/enh/netdev_tap_ipv4
lwip: add IPv4 support for `netdev_tap`
2020-06-09 14:30:02 +02:00
Martine S. Lenders
f5c4a05281
lwip: add IPv4 support for netdev_tap 2020-06-09 12:12:54 +02:00
b3620b35b8
pkg/lwip: add support for nrf802154 2020-06-07 21:24:14 +02:00
Martine Lenders
a38428b8f2
Merge pull request #13701 from miri64/lwip_sock/enh/recv_buf
lwip_sock: provide implementation for `sock_*_recv_buf()`
2020-05-26 21:33:09 +02:00
Martine S. Lenders
ef1d458089
lwip_sock: re-issue receive events if there are still received messages
... after `*_recv()` or `*_accept()` was called.

This prevents a client from needing to call `*_recv()` or `*_accept()`
in a loop.
2020-05-12 14:19:34 +02:00
Martine S. Lenders
77b89bb968
lwip_sock: provide implementation for sock_*_recv_buf() 2020-04-28 09:46:07 +02:00
Martine S. Lenders
29651da8f4
lwip_sock: update implementation for async callback argument 2020-03-11 16:54:12 +01:00
Martine S. Lenders
612e782b3c
sock_async: supply optional callback argument with callback setter 2020-03-11 16:54:11 +01:00
Martine S. Lenders
6e6e435c65
sock_async: add optional callback argument 2020-03-11 16:54:11 +01:00
Martine Lenders
1a4e6e9cdb
lwip_sock_tcp: close accepted connection if queue is full 2020-03-06 11:29:45 +01:00
Martine S. Lenders
e98e2f6143
lwip: fix style errors found by Vera++ 2020-03-06 11:29:45 +01:00
Martine S. Lenders
fc67e6143a
lwip: provide sock_async support 2020-03-06 11:28:16 +01:00
Martine S. Lenders
20805548b3 lwip: introduce sock base-type 2020-02-21 19:07:47 +01:00
Giuseppe Tipaldi
c8426ce8f5 pkg/lwip: add auto-init support for transciever ENC28J60 2020-01-31 22:01:49 +01:00
Martine Lenders
87d00ab294
Merge pull request #12932 from miri64/lwip_sock/fix/sock-cleanup
lwip_sock: clean-up connection handling without a sock.
2020-01-09 15:00:55 +01:00
benpicco
4f4e7cde16
Merge pull request #12965 from gschorcht/pkg/lwip/ipv4_dhcp
pkg/lwip: start DHCP for a netif with lwip_dhcp
2019-12-18 09:21:29 +01:00
Gunar Schorcht
ff506ccf07 pkg/lwip: start DHCP for a netif with lwip_dhcp
The NETDEV_EVENT_LINK_UP is used to start DHCP for a network interface
2019-12-18 07:16:41 +01:00
Gunar Schorcht
ddc34b4d73 cpu/esp: fix lwip for IPv4 and esp_wifi 2019-12-17 08:28:33 +01:00
Gunar Schorcht
3257c8e9f5
Merge pull request #12903 from wosym/lwip_stm32_ipv4
Add IPv4 support for LWIP-stm32
2019-12-16 11:45:24 +01:00
Wouter Symons
a3145a0ad0 pkg/lwip: correct coding style 2019-12-16 10:29:21 +01:00
Wouter Symons
5c42f680ed pkg/lwip: add IPv4 support for LWIP-stm32 2019-12-16 10:28:46 +01:00
Gunar Schorcht
91e764a538 pkg/lwip: add esp_eth for lwIP and IPv4 2019-12-15 19:11:58 +01:00
Gunar Schorcht
4e003b5608 pkg/lwip: add ESP32 esp_eth netdev 2019-12-14 16:59:54 +01:00
Wouter Symons
49a8f64c62 pkg/lwip: fix memory issue when sending with empty sock 2019-12-13 17:28:32 +01:00
Martine S. Lenders
e96bc2a13d lwip_sock: additional indirection of conn is unnecessary
Either the sock is provided with `sock_*_send()` or not. In the first
case the indirection is not necessary, and in the second we need to
delete the created `conn` within `lwip_sock_send()` anyway, so returning
it makes no sense.
2019-12-12 11:19:51 +01:00
Martine S. Lenders
80c23cfbf3 lwip_sock: check if sock is set before dereferencing it 2019-12-12 11:01:30 +01:00
Wouter
ed9cdb221a Add LWIP stm32 glue code
Fix minor coding style issues
2019-12-06 16:26:31 +01:00
Gunar Schorcht
074369fbb5 pkg/lwip: changes for ESP8266 esp_wifi 2019-11-14 12:04:29 +01:00
Martine S. Lenders
0a2945164c lwip: improve and fix documentation 2019-10-09 14:45:30 +02:00
Martine Lenders
4c88cb5f0e lwip: sys_arch: replace sched_switch() with thread_yield_higher()
`sched_switch()` is supposed to be used in core only.

This fixes #6756.
2019-09-24 16:33:11 +02:00
Martine Lenders
1dc6bded04
Merge pull request #11946 from gschorcht/cpu/esp32/lwip_netdev
cpu/esp32: lwIP netdev
2019-08-07 08:10:03 +02:00
Benjamin Valentin
66117601bb pkg: make use of ARRAY_SIZE macro 2019-08-06 19:43:54 +02:00
Gunar Schorcht
d4f818b5f3 pkg/lwip: add esp_wifi network device
The changes allow to use an esp_wifi network device of ESP32 with lwIP.
2019-08-06 19:12:29 +02:00
Martine Lenders
301b6555aa lwip: use l2util_ipv6_iid_from_addr() instead of NETOPT_IPV6_IID 2019-03-27 11:48:49 +01:00
Martine Lenders
98ac1249bf
Merge pull request #10114 from miri64/pkg/enh/lwip-socket_zep
pkg/lwip: provide socket_zep support
2019-03-26 21:17:48 +01:00
120a46c784 pkg/lwip: use xtimer_set64() in sys_arch_mbox_fetch()
Used _xtimer_set64 previously, which expects ticks instead of us.
That broke on non-1us xtimer ticks (e.g., hifive1 with 32kHZ).
2019-02-21 13:53:21 +01:00
Martine Lenders
fd69f2e63f lwip_netdev: fix setting of link-local address for 6Lo 2018-10-15 21:32:34 +02:00
Martine Lenders
6822f90004 lwip_sock: adapt for address zoning 2018-10-15 21:32:34 +02:00
Martine Lenders
0abd89e7e6 pkg/lwip: provide socket_zep support
This brings 802.15.4 support for native to lwIP. I used this to find
[this bug][1] and thought it might also be useful upstream. Downside:
There is no automated test for it yet.

[1]: https://savannah.nongnu.org/bugs/?54749
2018-10-05 10:39:38 +02:00
Martine Lenders
6c58441d06 lwip: fix lwip thread_create() wrapper 2018-07-17 14:13:01 +02:00
e7debdb865
lwip: explicitly set required netdev events 2018-07-12 12:00:39 +02:00
Martine Lenders
0151655de5 lwip_sock_udp: provide port for #9376 API fix 2018-06-20 14:51:17 +02:00
70407a1a3e pkg*: fix doxygen grouping 2018-06-11 19:12:02 +02:00
403faf2314 pkg/lwip: update to use iolists 2018-03-06 14:00:32 +01:00
smlng
e381317fbf make: fix sign-compare errors
cpu, nrf5x_common: fix sign-compare in periph/flashpage
    drivers, periph_common: fix sign-compare in flashpage
    cpu, sam0_common: fix sign-compare error in periph/gpio
    cpu, cc2538: fix sign-compare in periph/timer
    cpu, sam3: fix sign-compare in periph/gpio
    cpu, stm32_common: fix sign-compare in periph/pwm
    cpu, stm32_common: fix sign-compare in periph/timer
    cpu, stm32_common: fix sign-compare in periph/flashpage
    cpu, nrf5x_common: fix sign-compare in radio/nrfmin
    cpu, samd21: fix sign-compare in periph/pwm
    cpu, ezr32wg: fix sign-compare in periph/gpio
    cpu, ezr32wg: fix sign-compare in periph/timer
    drivers, ethos: fix sign-compare
    sys, net: fix sign-compare
    cpu, atmega_common: fix sign-compare error
    cpu, msp430fxyz: fix sign-compare in periph/gpio
    boards, msb-430-common: fix sign-compare in board_init
    driver, cc2420: fix sign-compared
    sys/net: fix sign-compare in gnrc_tftp
    driver, pcd8544: fix sign-compare
    driver, pn532: fix sign-compare
    driver, sdcard_spi: fix sign-compare
    tests: fix sign_compare
    sys/net, lwmac: fix sign_compare
    pkg, lwip: fix sign-compare
    boards, waspmote: make CORECLOCK unsigned long to fix sign_compare error
    tests, sock_ip: fix sign compare
    tests, msg_avail: fix sign compare
    tests, sock_udp: fix sign compare
    boards: fix sign-compare for calliope and microbit matrix
2017-11-28 11:55:48 +01:00
f5a4124866 Merge pull request #6976 from miri64/conn/cleanup/rm
net: remove conn API
2017-05-12 16:09:00 +02:00
Martine Lenders
48aae4ef2f
lwip: port to v2.0.2 2017-05-11 11:49:38 +02:00
Martine Lenders
13770361bb
net: remove conn API
conn was deprecated in 38217347. 3 Releases later and now that no module
is using it RIOT-internally anymore, I think it is time to say goodbye.
2017-04-28 15:23:54 +02:00
Martine Lenders
fd16692c1c Merge pull request #6696 from lebrush/fix/semaphore
sys: sema: semaphore bugfixes
2017-03-28 20:54:06 +02:00
Oleg Hahm
409183d95d pkg: lwip: do not panic on failing netdev->recv() 2017-03-20 11:44:20 +01:00
Martine Lenders
29842bb5e4 netdev2: rename to netdev and remove gnrc_netdev
With some minor hand-edits I used the following chain of commands:

```sh
git rm sys/include/net/gnrc/netdev.h
git grep --name-only -i netdev2 | \
        xargs sed -i -e 's/^\(NETDEV\)2\(.*\)\( [("]\)/\1\2 \3/g' \
                     -e 's/\(netdev\)2\(.*\)\( \/\*\*<\)/\1\2 \3/I' \
                     -e 's/\(netdev\)2/\1/gI'
git add -p
git commit --amend
git ls-tree --full-tree -r HEAD --name-only | \
        grep "netdev2" | xargs -I'{}' dirname '{}' | uniq | \
        grep "netdev2" | while read dir; do
                new_dir="$(echo "$dir" | sed "s/netdev2/netdev/g")"
                git mv -f "$dir" "$new_dir"
        done
git commit --amend
git ls-tree --full-tree -r HEAD --name-only | \
        grep "netdev2" | while read file; do
                new_file="$(echo "$file" | sed "s/netdev2/netdev/g")"
                git mv -f "$file" "$new_file"
        done
git commit --amend
git grep --name-only "\<drivers_netdev_netdev\>" | \
        xargs sed -i "s/\<drivers_netdev_netdev\>/drivers_netdev_api/g"
git add -p
git commit --amend
```
2017-03-15 09:31:20 +01:00
Victor Arino
a4bb7b8d58 pkg/lwip: use blocking sema_wait 2017-03-06 18:03:27 +01:00
Martine Lenders
b915d15de1 pkg: provide sock_tcp support for lwip 2017-02-13 20:10:42 +01:00
Peter Kietzmann
e5e79c2834 Merge pull request #5937 from miri64/pkg/feat/lwip-sock-udp
pkg: provide sock_udp support for lwip
2017-02-08 09:43:20 +01:00
Martine Lenders
a45256a2a7 pkg: provide sock_udp support for lwip 2017-02-07 15:48:47 +01:00
672da2c457 drivers/mrf24j40: initial mrf24j40 support 2017-01-26 10:05:20 +01:00
Oleg Hahm
693636690c Merge pull request #6399 from OlegHahm/timex_constants
timex: unambiguous time conversion macros
2017-01-19 17:29:26 +01:00
Francisco Acosta
70fbcbf7ed Merge pull request #6311 from miri64/native/enh/multi-tap
cpu/native: allow for multiple netdev2_tap devices
2017-01-19 14:56:55 +01:00
Oleg Hahm
4f4214235b timex: unambiguous time conversion macros 2017-01-19 13:18:08 +01:00
Martine Lenders
1f6f02e196 cpu/native: adapt start-up and auto-init for multiple netdev2_tap 2017-01-19 12:07:10 +01:00
Victor Arino
49adbf24da pkg/lwip: use new sema implementation 2017-01-19 08:59:17 +01:00
Peter Kietzmann
1730b883ef Merge pull request #5936 from miri64/pkg/feat/lwip-sock-ip
pkg: provide sock_ip support for lwip
2017-01-17 13:19:00 +01:00
Martine Lenders
bf60c2fbfa pkg: provide sock_ip support for lwip 2017-01-17 09:00:44 +01:00
Joakim Nohlgård
7c48c891a0 xtimer: Update xtimer usage to match API changes 2016-11-29 20:44:31 +01:00
Martine Lenders
07f8148432 pkg: lwip: remove timeout timer
In case of no timeout this timer is not removed, leading to the
re-addition in a later call. This fix removes it properly.
2016-09-29 13:09:35 +02:00
Martine Lenders
b81ac9ca0e pkg: lwip: do not re-set values already set in netif_add
lwip_netdev2_init() is called by netif_add, which already sets these
values to an according value.
2016-09-27 17:27:25 +02:00
Martine Lenders
9b2cff9a7b lwip: port mboxes to core_mbox 2016-09-02 15:04:18 +02:00
Martine Lenders
cc6b123758 lwip: initialize link-local address correctly
lwIP does some weird byte-swapping in netif_create_ip6_linklocal_address()
with non-ethernet-addresses, so I rather initialize it like in GNRC, so it is
compatible to both GNRC and emb6.
2016-08-02 16:33:35 +02:00
Victor Arino
9528b22209 pkg/lwip: remove duplicated line in netdev2 wrapper 2016-07-14 16:46:10 +02:00
7718f114cb all: remove pointer casts for msg.content.ptr 2016-06-02 23:13:42 +02:00
15d9ce4963 pkg: lwip: adapt to changed netdev2->event_callback signature 2016-06-02 11:11:40 +02:00