Lines Matching +full:implementation +full:- +full:defined
3 copyright (C) ST-Ericsson AB 2010
9 ------------
10 CAIF is a MUX protocol used by ST-Ericsson cellular modems for
15 ST-Ericsson modems support a number of transports between modem
20 ------------
21 The implementation of CAIF is divided into:
23 * CAIF Core Protocol Implementation
29 ! +------+ +------+
30 ! +------+! +------+!
32 +-------> !interf!+ ! API !+ <- CAIF Client APIs
33 ! +------+ +------!
35 ! +-----------+
37 ! +------+ <- CAIF Core Protocol
40 ! +------+
41 ! +----------!---------+
43 ! +------+ +-----+ +------+
44 +--> ! HSI ! ! TTY ! ! USB ! <- Link Layer (Net Devices)
45 +------+ +-----+ +------+
56 CAIF Core layer implements the CAIF protocol as defined by ST-Ericsson.
63 The Core CAIF implementation contains:
64 - Simple implementation of CAIF.
65 - Layered architecture (a la Streams), each layer in the CAIF
66 specification is implemented in a separate c-file.
67 - Clients must call configuration function to add PHY layer.
68 - Clients must implement CAIF layer to consume/produce
70 - Clients must call configuration function to add and connect the
72 - When receiving / transmitting CAIF Packets (cfpkt), ownership is passed
76 --------------------
78 Implementation. The support functions include:
80 - CFPKT CAIF Packet. Implementation of CAIF Protocol Packet. The
84 The CAIF Protocol implementation contains:
86 - CFCNFG CAIF Configuration layer. Configures the CAIF Protocol
87 Stack and provides a Client interface for adding Link-Layer and
90 - CFCTRL CAIF Control layer. Encodes and Decodes control messages
94 - CFSERVL General CAIF Service Layer functionality; handles flow
97 - CFVEI CAIF VEI layer. Handles CAIF AT Channels on VEI (Virtual
100 - CFDGML CAIF Datagram layer. Handles CAIF Datagram layer (IP
103 - CFMUX CAIF Mux layer. Handles multiplexing between multiple
107 on Channel-Id and Physical-ID.
109 - CFFRML CAIF Framing layer. Handles Framing i.e. Frame length
112 - CFSERL CAIF Serial layer. Handles concatenation/split of frames
117 +---------+
120 +---------+
122 +---------+ +---------+ +---------+
125 +---------+ +---------+ +---------+
128 +---------+
131 +---------+
134 +---------+ +---------+
137 +---------+ +---------+
139 +---------+ +---------+
142 +---------+ +---------+
146 - All layers embed the same structure "struct cflayer"
147 - A layer does not depend on any other layer's private data.
148 - Layers are stacked by setting the pointers
149 layer->up , layer->dn
150 - In order to send data upwards, each layer should do
151 layer->up->receive(layer->up, packet);
152 - In order to send data downwards, each layer should do
153 layer->dn->transmit(layer->dn, packet);
162 Net device and Socket implement the 'receive()' function defined by
164 receive of packets is handled as by the rest of the layers: the 'dn->transmit()'
168 ---------------------------
172 The CAIF Protocol relies on a loss-less link layer without implementing
174 Therefore a flow-control mechanism is implemented where the physical