mirror of git://git.sysmocom.de/ofono
Add plugin for static CAIF device detection
This commit is contained in:
parent
ae6a0b32cf
commit
badca24c5a
|
@ -70,6 +70,9 @@ rules_DATA = $(foreach file,$(udev_files), plugins/97-$(notdir $(file)))
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
builtin_modules += caif
|
||||||
|
builtin_sources += plugins/caif.c
|
||||||
|
|
||||||
if ISIMODEM
|
if ISIMODEM
|
||||||
builtin_modules += isimodem
|
builtin_modules += isimodem
|
||||||
builtin_sources += $(gisi_sources) \
|
builtin_sources += $(gisi_sources) \
|
||||||
|
|
|
@ -0,0 +1,68 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* oFono - Open Source Telephony
|
||||||
|
*
|
||||||
|
* Copyright (C) 2008-2010 Intel Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License version 2 as
|
||||||
|
* published by the Free Software Foundation.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program; if not, write to the Free Software
|
||||||
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifdef HAVE_CONFIG_H
|
||||||
|
#include <config.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <errno.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
#include <glib.h>
|
||||||
|
|
||||||
|
#define OFONO_API_SUBJECT_TO_CHANGE
|
||||||
|
#include <ofono/plugin.h>
|
||||||
|
#include <ofono/modem.h>
|
||||||
|
#include <ofono/log.h>
|
||||||
|
|
||||||
|
static GSList *modem_list = NULL;
|
||||||
|
|
||||||
|
static int caif_init(void)
|
||||||
|
{
|
||||||
|
struct ofono_modem *modem;
|
||||||
|
|
||||||
|
modem = ofono_modem_create("caif", "ste");
|
||||||
|
if (modem == NULL)
|
||||||
|
return -EIO;
|
||||||
|
|
||||||
|
modem_list = g_slist_prepend(modem_list, modem);
|
||||||
|
|
||||||
|
ofono_modem_register(modem);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void caif_exit(void)
|
||||||
|
{
|
||||||
|
GSList *list;
|
||||||
|
|
||||||
|
for (list = modem_list; list; list = list->next) {
|
||||||
|
struct ofono_modem *modem = list->data;
|
||||||
|
|
||||||
|
ofono_modem_remove(modem);
|
||||||
|
}
|
||||||
|
|
||||||
|
g_slist_free(modem_list);
|
||||||
|
modem_list = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
OFONO_PLUGIN_DEFINE(caif, "CAIF device detection", VERSION,
|
||||||
|
OFONO_PLUGIN_PRIORITY_LOW, caif_init, caif_exit)
|
Loading…
Reference in New Issue