Skip to content

Commit

Permalink
Merge pull request tock#4022 from tock/154-readme
Browse files Browse the repository at this point in the history
802.15.4: Add 15.4 Stack Readme
  • Loading branch information
alevy authored Jun 9, 2024
2 parents 51d7dae + 3d29c8e commit 5ef6b65
Showing 1 changed file with 52 additions and 0 deletions.
52 changes: 52 additions & 0 deletions capsules/extra/src/ieee802154/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
IEEE 802.15.4 Stack
===================

Tock supports two different implementations of an IEEE 802.15.4 stack in the
kernel. The first version implements packet framing and a MAC layer, virtualizes
the 15.4 interface, and provides a multi-programmable userspace interface. The second version
provides userspace with the ability to send/receive raw 802.15.4 frames as well as directly control the radio, and is appropriate for access by one process at a time.

In-Kernel Stack
---------------

Stack overview:

```text
┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ Syscall Interface
┌──────────────────────┐
│ RadioDriver │
└──────────────────────┘
┄┄ ieee802154::device::MacDevice ┄┄
┌──────────────────────┐
│ VirtualMac │
└──────────────────────┘
┄┄ ieee802154::device::MacDevice ┄┄
┌──────────────────────┐
│ Framer │
└──────────────────────┘
┄┄ ieee802154::mac::Mac ┄┄
┌──────────────────────┐
│ MAC (ex: AwakeMac) │
└──────────────────────┘
┄┄ hil::radio::Radio ┄┄
┌──────────────────────┐
│ 802.15.4 Radio │
└──────────────────────┘
```


Raw Stack
---------

Stack overview:

```text
┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ Syscall Interface
┌─────────────────────────┐
│ phy_driver::RadioDriver │
└─────────────────────────┘
┄┄ hil::radio::Radio ┄┄
┌─────────────────────────┐
│ 802.15.4 Radio │
└─────────────────────────┘
```

0 comments on commit 5ef6b65

Please sign in to comment.