History log of /include/net/phonet/pep.h
Revision Date Author Comments
f7ae8d59f66154df0424fd94035c89981fed3379 08-Mar-2011 Rémi Denis-Courmont <remi.denis-courmont@nokia.com> Phonet: allocate sock from accept syscall rather than soft IRQ

This moves most of the accept logic to process context like other
socket stacks do. Then we can use a few more common socket helpers
and simplify a bit.

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
8f44fcc72a454c5eb7cbc138bd53f0963f23e87f 25-Feb-2011 Rémi Denis-Courmont <remi.denis-courmont@nokia.com> Phonet: fix flawed "SYN/ACK" logic

* Do not fail if the peer supports more or less than 3 algorithms.
* Ignore unknown congestion control algorithms instead of failing.
* Simplify congestion algorithm negotiation (largest is best).
* Do not use a static buffer.
* Fix off-by-two read overflow.
* Avoid extra memory copy (in addition to skb_copy_bits()).

The previous code really made no sense.

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
0165d69bcb18c5aa220538389c872852243f9725 25-Feb-2011 Rémi Denis-Courmont <remi.denis-courmont@nokia.com> Phonet: don't bother with transaction IDs (especially for indications)

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2feb61816f7f0be57f4bc61137555e9a8cb4f322 25-Feb-2011 Rémi Denis-Courmont <remi.denis-courmont@nokia.com> Phonet: remove redumdant pep->pipe_state

sk->sk_state already contains the pipe state.

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
14ba8faebcc241e4d60a4ef4a7d3fdef1c2e846f 25-Feb-2011 Rémi Denis-Courmont <remi.denis-courmont@nokia.com> Phonet: use socket destination in pipe protocol

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
b3d6255388de0680a14f0907deb7b7f4fa0d25d5 12-Oct-2010 Kumar Sanghvi <kumar.sanghvi@stericsson.com> Phonet: 'connect' socket implementation for Pipe controller

Based on suggestion by Rémi Denis-Courmont to implement 'connect'
for Pipe controller logic, this patch implements 'connect' socket
call for the Pipe controller logic.
The patch does following:-
- Removes setsockopts for PNPIPE_CREATE and PNPIPE_DESTROY
- Adds setsockopt for setting the Pipe handle value
- Implements connect socket call
- Updates the Pipe controller logic

User-space should now follow below sequence with Pipe controller:-
-socket
-bind
-setsockopt for PNPIPE_PIPE_HANDLE
-connect
-setsockopt for PNPIPE_ENCAP_IP
-setsockopt for PNPIPE_ENABLE

GPRS/3G data has been tested working fine with this.

Signed-off-by: Kumar Sanghvi <kumar.sanghvi@stericsson.com>
Acked-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
8d98efa84b790bdd62248eb0dfff17e9baf5c844 26-Sep-2010 Kumar Sanghvi <kumar.sanghvi@stericsson.com> Phonet: Implement Pipe Controller to support Nokia Slim Modems

Phonet stack assumes the presence of Pipe Controller, either in Modem or
on Application Processing Engine user-space for the Pipe data.
Nokia Slim Modems like WG2.5 used in ST-Ericsson U8500 platform do not
implement Pipe controller in them.
This patch adds Pipe Controller implemenation to Phonet stack to support
Pipe data over Phonet stack for Nokia Slim Modems.

Signed-off-by: Kumar Sanghvi <kumar.sanghvi@stericsson.com>
Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
6482f554e2b9cbe733d63124765104f29cf0c9ad 15-Sep-2010 Rémi Denis-Courmont <remi.denis-courmont@nokia.com> Phonet: remove dangling pipe if an endpoint is closed early

Closing a pipe endpoint is not normally allowed by the Phonet pipe,
other than as a side after-effect of removing the pipe between two
endpoints. But there is no way to prevent Linux userspace processes
from being killed or suffering from bugs, so this can still happen.
We might as well forcefully close Phonet pipe endpoints then.

The cellular modem supports only a few existing pipes at a time. So we
really should not leak them. This change instructs the modem to destroy
the pipe if either of the pipe's endpoint (Linux socket) is closed too
early.

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
fea93ecef619b5779ca6984568517b1685079b05 04-Jan-2010 Rémi Denis-Courmont <remi.denis-courmont@nokia.com> Phonet: zero-copy GPRS TX

Send aligned pipe payload if requested to do so. Then, the socket buffer
needs not be fragmented anymore.

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
fc6a110754476362f9f4fa3199a637f2331c5993 04-Jan-2010 Rémi Denis-Courmont <remi.denis-courmont@nokia.com> Phonet: zero-copy aligned GPRS RX

Newer Nokia cellular modems can use aligned payload for their GPRS pipe.

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
be677730a0ccb6bedced6f65f2ba8f57a3c607ba 18-Dec-2008 Rémi Denis-Courmont <remi.denis-courmont@nokia.com> Phonet: use atomic for packet TX window

GPRS TX flow control won't need to lock the underlying socket anymore.

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
02a47617cdce440f60c71a51f3a93f9f5fcc5a7a 05-Oct-2008 Rémi Denis-Courmont <remi.denis-courmont@nokia.com> Phonet: implement GPRS virtual interface over PEP socket

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
c41bd97f815720f9404f97da0c4f4400b52c243d 05-Oct-2008 Rémi Denis-Courmont <remi.denis-courmont@nokia.com> Phonet: receive pipe control requests as out-of-band data

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
9641458d3ec42def729fde64669abf07f3220cd5 05-Oct-2008 Rémi Denis-Courmont <remi.denis-courmont@nokia.com> Phonet: Pipe End Point for Phonet Pipes protocol

This protocol provides some connection handling and negotiated
congestion control. Nokia cellular modems use it for bulk transfers.
It provides packet boundaries (hence SOCK_SEQPACKET). Congestion
control is per packet rather per byte, so we do not re-use the
generic socket memory accounting.

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
9995a32b4d14dcda2f8df58030526bee91114c16 05-Oct-2008 Rémi Denis-Courmont <remi.denis-courmont@nokia.com> Phonet: connected sockets glue

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Acked-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>