aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Kocialkowski <contact@paulk.fr>2012-07-04 19:14:53 +0200
committerPaul Kocialkowski <contact@paulk.fr>2012-07-04 19:14:53 +0200
commit776839085031611b9d48ddeca529b1931c01dd22 (patch)
treee98672c6e842876f0728c48e50a5a9091e00a070
parent0ec570aca028a4b82f761bfd376fd705250a812c (diff)
downloadexternal_libsamsung-ipc-776839085031611b9d48ddeca529b1931c01dd22.zip
external_libsamsung-ipc-776839085031611b9d48ddeca529b1931c01dd22.tar.gz
external_libsamsung-ipc-776839085031611b9d48ddeca529b1931c01dd22.tar.bz2
GPRS: New capabilities structure and related handler
Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
-rw-r--r--include/radio.h6
-rw-r--r--samsung-ipc/ipc.c10
-rw-r--r--samsung-ipc/ipc_private.h2
3 files changed, 17 insertions, 1 deletions
diff --git a/include/radio.h b/include/radio.h
index 7a18096..30572ff 100644
--- a/include/radio.h
+++ b/include/radio.h
@@ -52,6 +52,11 @@ struct ipc_message_info {
struct ipc_client;
struct ipc_handlers;
+struct ipc_client_gprs_capabilities {
+ int port_list;
+ int cid_max;
+};
+
typedef void (*ipc_client_log_handler_cb)(const char *message, void *user_data);
typedef int (*ipc_io_handler_cb)(void *data, unsigned int size, void *io_data);
@@ -83,6 +88,7 @@ int ipc_client_gprs_handlers_available(struct ipc_client *client);
int ipc_client_gprs_activate(struct ipc_client *client);
int ipc_client_gprs_deactivate(struct ipc_client *client);
int ipc_client_gprs_get_iface(struct ipc_client *client, char **iface);
+int ipc_client_gprs_get_capabilities(struct ipc_client *client, struct ipc_client_gprs_capabilities *cap);
int ipc_client_recv(struct ipc_client *client, struct ipc_message_info *response);
diff --git a/samsung-ipc/ipc.c b/samsung-ipc/ipc.c
index 6bfcc8f..d7a1b67 100644
--- a/samsung-ipc/ipc.c
+++ b/samsung-ipc/ipc.c
@@ -407,6 +407,16 @@ int ipc_client_gprs_get_iface(struct ipc_client *client, char **iface)
return client->handlers->gprs_get_iface(iface);
}
+int ipc_client_gprs_get_capabilities(struct ipc_client *client, struct ipc_client_gprs_capabilities *cap)
+{
+ if (client == NULL ||
+ client->handlers == NULL ||
+ client->handlers->gprs_get_capabilities == NULL)
+ return -1;
+
+ return client->handlers->gprs_get_capabilities(cap);
+}
+
int _ipc_client_send(struct ipc_client *client, struct ipc_message_info *request)
{
if (client == NULL ||
diff --git a/samsung-ipc/ipc_private.h b/samsung-ipc/ipc_private.h
index 5c349b4..650ac98 100644
--- a/samsung-ipc/ipc_private.h
+++ b/samsung-ipc/ipc_private.h
@@ -47,12 +47,12 @@ struct ipc_handlers {
void *power_off_data;
/* GPRS handlers */
-
ipc_handler_cb gprs_activate;
void *gprs_activate_data;
ipc_handler_cb gprs_deactivate;
void *gprs_deactivate_data;
int (*gprs_get_iface)(char **iface);
+ int (*gprs_get_capabilities)(struct ipc_client_gprs_capabilities *cap);
/* Handlers common data*/
void *common_data;