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 {
|
||||
unsigned index;
|
||||
uint8_t device;
|
||||
GHashTable *services;
|
||||
gboolean subs_source;
|
||||
int req_fd;
|
||||
|
@ -537,6 +538,27 @@ void g_isi_modem_set_flags(GIsiModem *modem, unsigned long 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)
|
||||
{
|
||||
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_by_name(const char *name);
|
||||
void g_isi_modem_destroy(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_debug(GIsiModem *modem, GIsiDebugFunc debug);
|
||||
|
||||
void *g_isi_modem_set_userdata(GIsiModem *modem, void *data);
|
||||
void *g_isi_modem_get_userdata(GIsiModem *modem);
|
||||
|
||||
|
|
Loading…
Reference in New Issue