trxcon/l1sched: clarify TDMA Fn (mod 26) maps
[osmocom-bb.git] / src / host / layer23 / README
blobc52e7bc6ae80b11574a3853a9c073a599830c800
1 = OsmocomBB layer23 architecture =
3 layer23 is an (incomplete) MS-side implementation of the L2 and L3 GSM
4 protocols as described in GSM TS 04.06, 04.08 and others.
6 == Interfaces ==
8 L1 (on the phone) uses the L1CTL protocol to talk with layer23 (on the PC).
10 L2 (inside layer23) uses the RSLms protocol to talk with the L3 (inside layer23)
13 === RSLms ===
15 RSLms is modeled after the GSM TS 08.58 Radio Subsystem Link protocol.  Despite
16 being designed for the network side, RSL seems a good match for the L2/L3
17 interface inside a MS, too.
19 At least the RLL (Radio Link Layer) part of RSL is 100% as applicable to the MS
20 side as it is for the ntwork side.
22 ==== Lower interface (L2 to RSLms) ====
24 Layer2 calls rslms_sendmsg() with a msgb that has the msgb->l2h pointing to a
25 RSL header (struct abis_rsl_common_hdr).
27 ==== Upper interface (L3 to RSLms) ====
29 Layer3 calls rslms_recvmsg() with a msgb that has the msgb->l2h pointing to a
30 RSL header (struct abis_rsl_common_hdr).
32 There are utility functions like rslms_tx_rll_req() and rslms_tx_rsll_req_l3()
33 for creating msgb's with the appropriate RSL/RLL headers.
36 === LAPDm ===
38 LAPDm is the GSM TS 04.06 protocol
40 The lower interface (to L1) is using L1CTL
42 The upper interface (to L3) is using RSLms