14fb37c995
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>
61 lines
2.1 KiB
Plaintext
61 lines
2.1 KiB
Plaintext
#
|
|
# For a description of the syntax of this configuration file,
|
|
# see the file kconfig-language.txt in the NuttX tools repository.
|
|
#
|
|
|
|
if IEEE802154_XBEE
|
|
|
|
config IEEE802154_XBEE_FREQUENCY
|
|
int "SPI Frequency for XBee Radio"
|
|
default 2000000
|
|
---help---
|
|
SPI SLCK frequency in Hz
|
|
|
|
choice
|
|
prompt "Work queue"
|
|
default XBEE_NETDEV_LPWORK if SCHED_LPWORK
|
|
default XBEE_NETDEV_HPWORK if !SCHED_LPWORK && SCHED_HPWORK
|
|
depends on SCHED_WORKQUEUE
|
|
---help---
|
|
Work queue support is required to use the XBee MAC network
|
|
driver.
|
|
|
|
WARNING!! The IEEE802.15.4 network device must never run on the same
|
|
work queue as does the IEEE 802.15.4 MAC. That configuration will
|
|
cause deadlocks: The network logic may be blocked on the work queue
|
|
waiting on resources that can only be freed by the MAC logic but the
|
|
MAC is unable to run because the work queue is blocked. The
|
|
recommended configuration is: Network on the LP work queue; MAC on HP
|
|
work queue. Blocking on the HP work queue is a very bad thing in
|
|
any case.
|
|
|
|
config XBEE_NETDEV_HPWORK
|
|
bool "High priority"
|
|
depends on SCHED_HPWORK
|
|
|
|
config XBEE_NETDEV_LPWORK
|
|
bool "Low priority"
|
|
depends on SCHED_LPWORK
|
|
|
|
endchoice # Work queue
|
|
|
|
config XBEE_NETDEV_RECVRPRIO
|
|
int "Priority of frame receiver registerd with the MAC layer"
|
|
default 1
|
|
---help---
|
|
When the MAC layer receives an incoming data frame, it passes the frame
|
|
to registered receivers, in order of receiver priority, until one of the
|
|
receivers claim the frame.
|
|
|
|
An example case would be when 6LoWPAN and the MAC character driver are
|
|
enabled. Both have receivers registered with the MAC. The 6LoWPAN layer
|
|
should get assigned a higher priority than the character driver. In this
|
|
case, the 6LoWPAN receiver will receive the frame first. If the frame is
|
|
a 6LoWPAN frame, it will claim the frame and the MAC will not pass the
|
|
frame to any additional receivers. If it does not claim the frame, the
|
|
MAC layer will call the next highest priority receiver, in this case,
|
|
the MAC character driver (which should always be lowest priority since
|
|
it is a "catch-all" type receiver).
|
|
|
|
endif # IEEE802154_XBEE
|