Commit 8d98efa8 authored by Kumar Sanghvi's avatar Kumar Sanghvi Committed by David S. Miller

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: default avatarKumar Sanghvi <kumar.sanghvi@stericsson.com>
Acked-by: default avatarLinus Walleij <linus.walleij@stericsson.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent e40051d1
...@@ -36,6 +36,11 @@ ...@@ -36,6 +36,11 @@
/* Socket options for SOL_PNPIPE level */ /* Socket options for SOL_PNPIPE level */
#define PNPIPE_ENCAP 1 #define PNPIPE_ENCAP 1
#define PNPIPE_IFINDEX 2 #define PNPIPE_IFINDEX 2
#define PNPIPE_CREATE 3
#define PNPIPE_ENABLE 4
#define PNPIPE_DISABLE 5
#define PNPIPE_DESTROY 6
#define PNPIPE_INQ 7
#define PNADDR_ANY 0 #define PNADDR_ANY 0
#define PNADDR_BROADCAST 0xFC #define PNADDR_BROADCAST 0xFC
......
...@@ -45,6 +45,10 @@ struct pep_sock { ...@@ -45,6 +45,10 @@ struct pep_sock {
u8 tx_fc; /* TX flow control */ u8 tx_fc; /* TX flow control */
u8 init_enable; /* auto-enable at creation */ u8 init_enable; /* auto-enable at creation */
u8 aligned; u8 aligned;
#ifdef CONFIG_PHONET_PIPECTRLR
u16 remote_pep;
u8 pipe_state;
#endif
}; };
static inline struct pep_sock *pep_sk(struct sock *sk) static inline struct pep_sock *pep_sk(struct sock *sk)
...@@ -165,4 +169,21 @@ enum { ...@@ -165,4 +169,21 @@ enum {
PEP_IND_READY, PEP_IND_READY,
}; };
#ifdef CONFIG_PHONET_PIPECTRLR
#define PNS_PEP_CONNECT_UTID 0x02
#define PNS_PIPE_CREATED_IND_UTID 0x04
#define PNS_PIPE_ENABLE_UTID 0x0A
#define PNS_PIPE_ENABLED_IND_UTID 0x0C
#define PNS_PIPE_DISABLE_UTID 0x0F
#define PNS_PIPE_DISABLED_IND_UTID 0x11
#define PNS_PEP_DISCONNECT_UTID 0x06
/* Used for tracking state of a pipe */
enum {
PIPE_IDLE,
PIPE_DISABLED,
PIPE_ENABLED,
};
#endif /* CONFIG_PHONET_PIPECTRLR */
#endif #endif
...@@ -14,3 +14,14 @@ config PHONET ...@@ -14,3 +14,14 @@ config PHONET
To compile this driver as a module, choose M here: the module To compile this driver as a module, choose M here: the module
will be called phonet. If unsure, say N. will be called phonet. If unsure, say N.
config PHONET_PIPECTRLR
bool "Phonet Pipe Controller"
depends on PHONET
default N
help
The Pipe Controller implementation in Phonet stack to support Pipe
data with Nokia Slim modems like WG2.5 used on ST-Ericsson U8500
platform.
If unsure, say N.
This diff is collapsed.
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