mirror of git://git.sysmocom.de/ofono
gisi: Add new API for setting modem remote device
This commit is contained in:
parent
5b3a43a17c
commit
4eedacac20
22
gisi/modem.c
22
gisi/modem.c
|
@ -59,6 +59,7 @@ typedef struct _GIsiServiceMux GIsiServiceMux;
|
||||||
|
|
||||||
struct _GIsiModem {
|
struct _GIsiModem {
|
||||||
unsigned index;
|
unsigned index;
|
||||||
|
uint8_t device;
|
||||||
GHashTable *services;
|
GHashTable *services;
|
||||||
gboolean subs_source;
|
gboolean subs_source;
|
||||||
int req_fd;
|
int req_fd;
|
||||||
|
@ -537,6 +538,27 @@ void g_isi_modem_set_flags(GIsiModem *modem, unsigned long flags)
|
||||||
modem->flags = flags;
|
modem->flags = flags;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
uint8_t g_isi_modem_device(GIsiModem *modem)
|
||||||
|
{
|
||||||
|
if (modem == NULL)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
return modem->device;
|
||||||
|
}
|
||||||
|
|
||||||
|
int g_isi_modem_set_device(GIsiModem *modem, uint8_t remote)
|
||||||
|
{
|
||||||
|
if (modem == NULL)
|
||||||
|
return -EINVAL;
|
||||||
|
|
||||||
|
if (remote != PN_DEV_HOST && remote != PN_DEV_MODEM)
|
||||||
|
return -EINVAL;
|
||||||
|
|
||||||
|
modem->device = remote;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
static uint8_t service_next_utid(GIsiServiceMux *mux)
|
static uint8_t service_next_utid(GIsiServiceMux *mux)
|
||||||
{
|
{
|
||||||
if (mux->last_utid == 0x00 || mux->last_utid == 0xFF)
|
if (mux->last_utid == 0x00 || mux->last_utid == 0xFF)
|
||||||
|
|
|
@ -48,9 +48,15 @@ typedef void (*GIsiDebugFunc)(const char *fmt, ...);
|
||||||
GIsiModem *g_isi_modem_create(unsigned index);
|
GIsiModem *g_isi_modem_create(unsigned index);
|
||||||
GIsiModem *g_isi_modem_create_by_name(const char *name);
|
GIsiModem *g_isi_modem_create_by_name(const char *name);
|
||||||
void g_isi_modem_destroy(GIsiModem *modem);
|
void g_isi_modem_destroy(GIsiModem *modem);
|
||||||
|
|
||||||
unsigned g_isi_modem_index(GIsiModem *modem);
|
unsigned g_isi_modem_index(GIsiModem *modem);
|
||||||
|
|
||||||
|
uint8_t g_isi_modem_device(GIsiModem *modem);
|
||||||
|
int g_isi_modem_set_device(GIsiModem *modem, uint8_t dev);
|
||||||
|
|
||||||
void g_isi_modem_set_trace(GIsiModem *modem, GIsiNotifyFunc notify);
|
void g_isi_modem_set_trace(GIsiModem *modem, GIsiNotifyFunc notify);
|
||||||
void g_isi_modem_set_debug(GIsiModem *modem, GIsiDebugFunc debug);
|
void g_isi_modem_set_debug(GIsiModem *modem, GIsiDebugFunc debug);
|
||||||
|
|
||||||
void *g_isi_modem_set_userdata(GIsiModem *modem, void *data);
|
void *g_isi_modem_set_userdata(GIsiModem *modem, void *data);
|
||||||
void *g_isi_modem_get_userdata(GIsiModem *modem);
|
void *g_isi_modem_get_userdata(GIsiModem *modem);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue