mac802154: Handle basic beaconing
authorMiquel Raynal <miquel.raynal@bootlin.com>
Wed, 25 Jan 2023 10:29:23 +0000 (11:29 +0100)
committerStefan Schmidt <stefan@datenfreihafen.org>
Sat, 28 Jan 2023 12:55:10 +0000 (13:55 +0100)
commit3accf4762734a69ebd03cba989249c78ac7dfc7e
tree403c80eb108413d4f0d4fc4e68e9fb2dc86a0b5b
parent9bc114504b07207d671593f6f6d787d55dcf91bd
mac802154: Handle basic beaconing

Implement the core hooks in order to provide the softMAC layer support
for sending beacons. Coordinators may be requested to send beacons in a
beacon enabled PAN in order for the other devices around to self
discover the available PANs automatically.

Changing the channels is prohibited while a beacon operation is
ongoing.

The implementation uses a workqueue triggered at a certain interval
depending on the symbol duration for the current channel and the
interval order provided.

Sending beacons in response to a BEACON_REQ frame (ie. answering active
scans) is not yet supported.

This initial patchset has no security support (llsec).

Co-developed-by: David Girault <david.girault@qorvo.com>
Signed-off-by: David Girault <david.girault@qorvo.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Acked-by: Alexander Aring <aahringo@redhat.com>
Link: https://lore.kernel.org/r/20230125102923.135465-3-miquel.raynal@bootlin.com
Signed-off-by: Stefan Schmidt <stefan@datenfreihafen.org>
include/net/ieee802154_netdev.h
net/ieee802154/header_ops.c
net/mac802154/cfg.c
net/mac802154/ieee802154_i.h
net/mac802154/iface.c
net/mac802154/llsec.c
net/mac802154/main.c
net/mac802154/scan.c