Commit Graph

48 Commits

Author SHA1 Message Date
anjiahao
d1d46335df Replace nxsem API when used as a lock with nxmutex API
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-10-17 15:59:46 +09:00
Xiang Xiao
1d1bdd85a3 Remove the double blank line from source files
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-02-20 20:10:14 +01:00
Xiang Xiao
cde88cabcc Run codespell -w with the latest dictonary again
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-02-23 22:27:46 +01:00
Anthony Merlino
a8e1620f3c Merged in antmerlino/nuttx/mac802154_fix_eaddr (pull request #985)
mac802154: Fixes issues with extended address. 1) Extended address should be read-only. 2) Extended address should be placed in frame in "reverse-canonical" order.

The extended address is a read-only attribute and thus an attempt to write the extended address should be denied. Instead, the extended address should really be either set by the PHY/radio itself, or provided at board bring-up time to the radio layer. The MAC layer now pulls in the extended address from the radio any time the MAC is reset.

The extended address is also supposed to be sent in the frame in reverse-canonical order. This is very confusing in the standard and it wasn't until I realized it was backwards in Wireshark that I researched this further. Searching online I find documents from the committee for suggestions/feedback on the future standard. It isn't in the 2015 standard but a newer version of the standard will presumably clarify this. It says that the extended address should be written in reverse-canonical form, meaning the OUI comes last, not first inside the frame.

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-08-10 18:25:13 +00:00
Anthony Merlino
70186874e3 Merged in antmerlino/nuttx/macnetdev (pull request #976)
mac802154_netdev: Allow 64-bit prefix to be configurable when auto-configuring the IPv6 address during bring-up.

Previously, the link-local prefix fe80::/64 was used. Also, put the network in the DOWN state at the end of initialization.

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-08-10 17:02:26 +00:00
Gregory Nutt
09f4dee6bc All network drivers! Change pre-processor logic that selects the high priority work queue or gives preferential treatment to the high priority work. All network logic must run on the low priority work queue! Or suffer the consequences. 2018-11-21 07:57:26 -06:00
Gregory Nutt
29a4a80f8c Squashed commit of the following:
wireless/bluetooth:  This completes the basic logic path that gets frames from the Bluetooth stack and into the network layer.
    wireless/bluetooth:  Fleshes out some of the network packet receive logic.
    wireless/bluetooth:  Replace buffer allocated with primitive allocator from ieee 802.15.4.
    wireless/ieee802154:  Fix a few typos.
    wireless/bluetooth:  More renaming in preparation for some real work.
    wireless/bluetooth:  Some trivial renaming; update comments
2018-04-01 12:25:30 -06:00
Anthony Merlino
14fb37c995 Merged in antmerlino/nuttx/sixlowpan-mac802154 (pull request #526)
ieee802154: Simplifies notify() and rxframe() calls to a single notify() call. dataind's and all other "notifs" are now "primitives" which aligns with standard terminology

* mac802154: Adds missing breaks from case statement

* sixlowpan: Fixes bad logic where ACK is not requested if address is not a broadcast

* ieee802154: Simplification of "notifs" and "datainds" to generic primitives passed via a single notify call to the layer above the MAC

* Directories.mk should reference CONFIG_WIRELESS instead of CONFIG_DRIVERS_WIRELESS

* xbee_netdev: Network must be locked when calling sixlowpan_input

* sixlowpan: Reassembly buffer can't be freed if provided by radio driver

* sixlowpan: Don't free IOB if there is an error processing it as the MAC will try to pass it along to another receiver

* ieee802154: Adds basic logging to ieee802154_primitive.c

* Minor fixes after rebase

* xbee: Adds AT query timeout to retry if XBee doesn't respond to request

* same70-xplained: Adds Xbee support. Makes mikroBus slot Kconfig 'choice'

* mac802154: Removes unused function declaration

* drivers/mrf24j40: Fixes compilation error using . operator rather than -> operator

* mac802154_device: Changes a few mac802154_primtive_free's to ieee802154_primitive_free() and changes notif to primitive in a couple places.

* mac802154: Adds promiscous mode logic to bypass parsing of incoming frames. MAC char device also checks for promiscous mode and passes whole frames including header and FCS to the application if promiscous mode is enabled.

* sixlowpan: Fixes logic to correctly check if packet is large enough to include header.  This would cause packets to be considered too small when they are sufficiently sized.

* sixlowpan: Fixes forwarding logic to use forwarding device rather than received device to look up destination link layer address

* net/ipforward: Fixes typo that caused build error when IP forwarding was enabled with CONFIG_NET_ICMPv6_NEIGHBOR enabled as well.

* configs/same70-xplained: Simple spelling fix

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2017-11-01 20:15:21 +00:00
Gregory Nutt
0438783afa Squashed commit of the following:
commit 5b7b6e6e616c475c782e9883ada9f4a3b7cb4e2c
Author: Gregory Nutt <gnutt@nuttx.org>
Date:   Sun Aug 20 11:13:17 2017 -0600

    IEEE 802.15.4 network device:  Make same changes as per loopback device so that it will build with PF_IEEE802154 but without 6LoWPAN.

commit d656a98cf8eab2f20e884224b52cd47ec35df4cc
Author: Gregory Nutt <gnutt@nuttx.org>
Date:   Sun Aug 20 10:31:28 2017 -0600

    PF_IEEE802154: More fixes to device registration and to IEEE 802.15.4 loopback driver for PF_IEEE802154 without 6LoWPAN.

commit 866bb9cbb0c5af79734bbd434c07fa2560b6608f
Author: Gregory Nutt <gnutt@nuttx.org>
Date:   Sun Aug 20 09:58:13 2017 -0600

    Network: Reorganize some Kconfig selections.

commit 230b4cb48008cba5fccdafa22340df1d43584829
Author: Gregory Nutt <gnutt@nuttx.org>
Date:   Sun Aug 20 09:19:53 2017 -0600

    Changes to conditional compilation so that PF_IEEE802154 can build without 6LoWPAN

commit d96cbd6520d40590a740f695c4cd72208ce872da
Author: Gregory Nutt <gnutt@nuttx.org>
Date:   Sun Aug 20 09:17:02 2017 -0600

    configs/sim/pf_ieee802154: Disable 6LoWPAN, IPv6, TCP, and UDP.  Now things do not build
2017-08-20 11:14:43 -06:00
Gregory Nutt
42efcbe3a9 Merge remote-tracking branch 'origin/master' into beacon802154 2017-07-20 08:04:41 -06:00
Gregory Nutt
c3b552e072 Minor cosmetic updates from review of last PR. 2017-07-20 07:39:57 -06:00
Gregory Nutt
747c79aa57 Merge remote-tracking branch 'origin/master' into beacon802154 2017-07-17 07:58:47 -06:00
Gregory Nutt
d639d8857d IEEE 802.15.4 MAC: Disable option to select interrupt-level meta data allocator. 2017-07-16 12:53:01 -06:00
Anthony Merlino
b9a9ba7dd0 ieee802154: Adds configuration options for verbose logging of certain features, to aid in debugging 2017-07-10 13:06:12 -04:00
Anthony Merlino
da8afe9d9e ieee802154: Finishes transmission of beacon frames, and performing a passive scan 2017-06-25 18:08:00 -04:00
Gregory Nutt
05590a2228 6LoWPAN: Correct a few addressing issues. The apps/examples/udp test now appears to be fully functional. Also reserve two bytes at the end of the frame for the FCS. 2017-06-21 13:43:53 -06:00
Gregory Nutt
2397bc728b Add some comments to a Kconfig file; Fix a typo introduced in previous commit. 2017-06-21 10:40:36 -06:00
Gregory Nutt
a12ff2836c Fixes from review of last PR 2017-06-21 10:15:23 -06:00
Anthony Merlino
cf53c9767e Merged in merlin17/nuttx/ieee802154 (pull request #415)
wireless/ieee802154: Minor naming change to align better with coding guidelines

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2017-06-21 16:11:12 +00:00
Gregory Nutt
26cfafdbca Back out a previous (good) change in hope of eliminating PR conflict. 2017-06-21 10:10:13 -06:00
Gregory Nutt
0d290904af Renaming in hope of eliminating a conflict with a pending PR. 2017-06-21 10:08:25 -06:00
Gregory Nutt
e7e8228b00 Missing option to select CONFIG_MAC802154_NNOTIF in Kconfig 2017-06-21 07:35:09 -06:00
Anthony Merlino
9b2df31adc ieee802154: Fixes Kconfig naming for number of TX desc and number of notifications 2017-06-21 01:00:42 -04:00
Gregory Nutt
192bacbd7f ieee802154 network driver now retries if ieee802154_req_data() returns EINTR. In clicker2-stm32 6LoWPAN configuration, increased the number of TX descriptors to match then number of IOBs. 2017-06-20 13:30:17 -06:00
Gregory Nutt
cfea8adacb L should be capitalized in 6LoWPAN 2017-06-18 16:00:08 -06:00
Gregory Nutt
2d4ba3ee3f IEEE 802.15.4 MAC: Add list management and prioritization logic that will permit the MAC layer to support bound multiple clients. 2017-06-18 11:00:47 -06:00
Anthony Merlino
83d8a7ed8b wireless/ieee802154: Renames Kconfig option, adds option for unimplemented receiver priority. 2017-06-18 10:53:31 -04:00
Anthony Merlino
908d438047 WIP: wireless/ieee802154: More work on association/beacon-enabled networks 2017-06-14 02:49:32 -04:00
Anthony Merlino
8ec0b71a59 wireless/ieee802154: Updates configuration settings 2017-05-14 17:59:19 -04:00
Gregory Nutt
2043e1a114 IOBs: Move from driver/iob to a better location in mm/iob 2017-05-09 07:35:30 -06:00
Anthony Merlino
1490599b69 wireless/ieee802154: Reworks data_ind allocation to include IOB allocation/deallocation. Hides private data. 2017-05-06 10:20:19 -04:00
Gregory Nutt
3fcdc28a59 ieee 802.15.4: Add a pool-based memory allocator for RX frame meta-data. 2017-05-05 12:50:34 -06:00
Anthony Merlino
dd40014279 wireless/ieee802154: Removes radio IOCTL. Starts bringing radio and MAC closer with well-defined interface. 2017-05-05 11:15:38 -04:00
Anthony Merlino
9e760dcf6a wireless/ieee802154: Lots of little fixes and changes to get everything to build 2017-04-26 11:36:06 -04:00
Gregory Nutt
83660ac30e Add configuration/build support for an IEEE802.15.4 network device. 2017-04-08 13:27:03 -06:00
Gregory Nutt
cd64339413 Still try to recover from bad merge. 2017-04-03 15:31:18 -06:00
Gregory Nutt
ca7040b7c1 Merge remote-tracking branch 'origin/master' into ieee802154 2017-04-03 15:28:46 -06:00
Gregory Nutt
068ac948e1 sim: Add a configuration for testing 6loWPAN. 2017-04-03 08:46:16 -06:00
Gregory Nutt
1b3cb3752a Merge remote-tracking branch 'origin/master' into ieee802154 2017-04-03 08:12:04 -06:00
Gregory Nutt
04346ebaf2 iee802154 loopback: Eliminate dependency on CONFIG_NET_LOOPBACK 2017-04-03 08:09:25 -06:00
Gregory Nutt
86dc312ae4 iee802154 loopback: Eliminate dependency on CONFIG_NET_LOOPBACK 2017-04-02 16:29:02 -06:00
Anthony Merlino
8df78cc74b wireless/ieee802154: Adds MAC character driver structure. Nonfunctional 2017-03-29 12:51:01 -04:00
Gregory Nutt
e97a13ea90 MRF24J40/Clicker2: Add an MRF24J40 device configuration to the Clicker2 STM32 board. Fix a few errors discovered during build. 2017-03-24 13:49:40 -06:00
Anthony Merlino
a702d6b638 wireless/ieee802154: Fixes build and configuration setup 2017-03-24 11:06:59 -04:00
Sebastien Lorquet
b5824d0993 Merge branch 'master' into ieee 2017-03-13 16:51:05 +01:00
Gregory Nutt
430b52c977 Networking: Add registration support for integrated ieee80211 wireless drivers. Rename CONFIG_IEEE802154 to CONFIG_WIRELESS_IEEE8021514 following the convention of including the location of the configuration variable as a part of its name. 2017-03-12 12:50:41 -06:00
Sebastien Lorquet
b0afc4807d synthetic commit to import ieee branch from old repo 2016-06-01 12:12:21 +02:00
Gregory Nutt
1ecb092e51 Add wireless/ieee802154 to the build 2016-02-26 17:27:58 -06:00