Commit b251d4de authored by Lennert Buytenhek's avatar Lennert Buytenhek Committed by Marcel Holtmann

Documentation/networking/ieee802154.txt: fix various inaccuracies.

* Update the linux-zigbee git:// repository URL.

* Remove the MLME section as the current kernel does not provide a
  full 802.15.4 MLME implementation.

* The hardmac example driver 'fakehard' was removed some time ago.

* The IEEE 802.15.4 device drivers live in drivers/net/ieee802154/,
  not in drivers/ieee802154/.

* The IEEE 802.15.4 MTU is 127 bytes, not 128 bytes.

* Some of the 6LoWPAN code lives in net/6lowpan/.
Signed-off-by: default avatarLennert Buytenhek <buytenh@wantstofly.org>
Reviewed-by: default avatarStefan Schmidt <stefan@osg.samsung.com>
Acked-by: default avatarAlexander Aring <alex.aring@gmail.com>
Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
parent c032705e
...@@ -30,8 +30,8 @@ int sd = socket(PF_IEEE802154, SOCK_DGRAM, 0); ...@@ -30,8 +30,8 @@ int sd = socket(PF_IEEE802154, SOCK_DGRAM, 0);
The address family, socket addresses etc. are defined in the The address family, socket addresses etc. are defined in the
include/net/af_ieee802154.h header or in the special header include/net/af_ieee802154.h header or in the special header
in our userspace package (see either linux-zigbee sourceforge download page in the userspace package (see either http://wpan.cakelab.org/ or the
or git tree at git://linux-zigbee.git.sourceforge.net/gitroot/linux-zigbee). git tree at https://github.com/linux-wpan/wpan-tools).
One can use SOCK_RAW for passing raw data towards device xmit function. YMMV. One can use SOCK_RAW for passing raw data towards device xmit function. YMMV.
...@@ -49,15 +49,6 @@ Like with WiFi, there are several types of devices implementing IEEE 802.15.4. ...@@ -49,15 +49,6 @@ Like with WiFi, there are several types of devices implementing IEEE 802.15.4.
Those types of devices require different approach to be hooked into Linux kernel. Those types of devices require different approach to be hooked into Linux kernel.
MLME - MAC Level Management
============================
Most of IEEE 802.15.4 MLME interfaces are directly mapped on netlink commands.
See the include/net/nl802154.h header. Our userspace tools package
(see above) provides CLI configuration utility for radio interfaces and simple
coordinator for IEEE 802.15.4 networks as an example users of MLME protocol.
HardMAC HardMAC
======= =======
...@@ -75,8 +66,6 @@ net_device with a pointer to struct ieee802154_mlme_ops instance. The fields ...@@ -75,8 +66,6 @@ net_device with a pointer to struct ieee802154_mlme_ops instance. The fields
assoc_req, assoc_resp, disassoc_req, start_req, and scan_req are optional. assoc_req, assoc_resp, disassoc_req, start_req, and scan_req are optional.
All other fields are required. All other fields are required.
We provide an example of simple HardMAC driver at drivers/ieee802154/fakehard.c
SoftMAC SoftMAC
======= =======
...@@ -89,7 +78,8 @@ stack interface for network sniffers (e.g. WireShark). ...@@ -89,7 +78,8 @@ stack interface for network sniffers (e.g. WireShark).
This layer is going to be extended soon. This layer is going to be extended soon.
See header include/net/mac802154.h and several drivers in drivers/ieee802154/. See header include/net/mac802154.h and several drivers in
drivers/net/ieee802154/.
Device drivers API Device drivers API
...@@ -114,18 +104,17 @@ Moreover IEEE 802.15.4 device operations structure should be filled. ...@@ -114,18 +104,17 @@ Moreover IEEE 802.15.4 device operations structure should be filled.
Fake drivers Fake drivers
============ ============
In addition there are two drivers available which simulate real devices with In addition there is a driver available which simulates a real device with
HardMAC (fakehard) and SoftMAC (fakelb - IEEE 802.15.4 loopback driver) SoftMAC (fakelb - IEEE 802.15.4 loopback driver) interface. This option
interfaces. This option provides possibility to test and debug stack without provides possibility to test and debug stack without usage of real hardware.
usage of real hardware.
See sources in drivers/ieee802154 folder for more details. See sources in drivers/net/ieee802154 folder for more details.
6LoWPAN Linux implementation 6LoWPAN Linux implementation
============================ ============================
The IEEE 802.15.4 standard specifies an MTU of 128 bytes, yielding about 80 The IEEE 802.15.4 standard specifies an MTU of 127 bytes, yielding about 80
octets of actual MAC payload once security is turned on, on a wireless link octets of actual MAC payload once security is turned on, on a wireless link
with a link throughput of 250 kbps or less. The 6LoWPAN adaptation format with a link throughput of 250 kbps or less. The 6LoWPAN adaptation format
[RFC4944] was specified to carry IPv6 datagrams over such constrained links, [RFC4944] was specified to carry IPv6 datagrams over such constrained links,
...@@ -140,7 +129,8 @@ In Semptember 2011 the standard update was published - [RFC6282]. ...@@ -140,7 +129,8 @@ In Semptember 2011 the standard update was published - [RFC6282].
It deprecates HC1 and HC2 compression and defines IPHC encoding format which is It deprecates HC1 and HC2 compression and defines IPHC encoding format which is
used in this Linux implementation. used in this Linux implementation.
All the code related to 6lowpan you may find in files: net/ieee802154/6lowpan.* All the code related to 6lowpan you may find in files: net/6lowpan/*
and net/ieee802154/6lowpan/*
To setup 6lowpan interface you need (busybox release > 1.17.0): To setup 6lowpan interface you need (busybox release > 1.17.0):
1. Add IEEE802.15.4 interface and initialize PANid; 1. Add IEEE802.15.4 interface and initialize PANid;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment