gigaset: allow building without I4L
Add a dummy LL interface to the Gigaset driver so that it can be built and, in a limited way, used without the ISDN4Linux subsystem. Impact: new configuration alternative Signed-off-by: Tilman Schmidt <tilman@imap.cc> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
088ec0cc96
commit
aaba2b3f82
3 changed files with 83 additions and 2 deletions
|
@ -1,6 +1,5 @@
|
|||
menuconfig ISDN_DRV_GIGASET
|
||||
tristate "Siemens Gigaset support"
|
||||
depends on ISDN_I4L
|
||||
select CRC_CCITT
|
||||
select BITREVERSE
|
||||
help
|
||||
|
@ -11,9 +10,21 @@ menuconfig ISDN_DRV_GIGASET
|
|||
If you have one of these devices, say M here and for at least
|
||||
one of the connection specific parts that follow.
|
||||
This will build a module called "gigaset".
|
||||
Note: If you build the ISDN4Linux subsystem (ISDN_I4L)
|
||||
as a module, you have to build this driver as a module too,
|
||||
otherwise the Gigaset device won't show up as an ISDN device.
|
||||
|
||||
if ISDN_DRV_GIGASET
|
||||
|
||||
config GIGASET_I4L
|
||||
bool
|
||||
depends on ISDN_I4L='y'||(ISDN_I4L='m'&&ISDN_DRV_GIGASET='m')
|
||||
default y
|
||||
|
||||
config GIGASET_DUMMYLL
|
||||
bool
|
||||
default !GIGASET_I4L
|
||||
|
||||
config GIGASET_BASE
|
||||
tristate "Gigaset base station support"
|
||||
depends on USB
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
gigaset-y := common.o interface.o proc.o ev-layer.o i4l.o asyncdata.o
|
||||
gigaset-y := common.o interface.o proc.o ev-layer.o asyncdata.o
|
||||
gigaset-$(CONFIG_GIGASET_I4L) += i4l.o
|
||||
gigaset-$(CONFIG_GIGASET_DUMMYLL) += dummyll.o
|
||||
usb_gigaset-y := usb-gigaset.o
|
||||
ser_gigaset-y := ser-gigaset.o
|
||||
bas_gigaset-y := bas-gigaset.o isocdata.o
|
||||
|
|
68
drivers/isdn/gigaset/dummyll.c
Normal file
68
drivers/isdn/gigaset/dummyll.c
Normal file
|
@ -0,0 +1,68 @@
|
|||
/*
|
||||
* Dummy LL interface for the Gigaset driver
|
||||
*
|
||||
* Copyright (c) 2009 by Tilman Schmidt <tilman@imap.cc>.
|
||||
*
|
||||
* =====================================================================
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
* =====================================================================
|
||||
*/
|
||||
|
||||
#include "gigaset.h"
|
||||
|
||||
void gigaset_skb_sent(struct bc_state *bcs, struct sk_buff *skb)
|
||||
{
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(gigaset_skb_sent);
|
||||
|
||||
void gigaset_skb_rcvd(struct bc_state *bcs, struct sk_buff *skb)
|
||||
{
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(gigaset_skb_rcvd);
|
||||
|
||||
void gigaset_isdn_rcv_err(struct bc_state *bcs)
|
||||
{
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(gigaset_isdn_rcv_err);
|
||||
|
||||
int gigaset_isdn_icall(struct at_state_t *at_state)
|
||||
{
|
||||
return ICALL_IGNORE;
|
||||
}
|
||||
|
||||
void gigaset_isdn_connD(struct bc_state *bcs)
|
||||
{
|
||||
}
|
||||
|
||||
void gigaset_isdn_hupD(struct bc_state *bcs)
|
||||
{
|
||||
}
|
||||
|
||||
void gigaset_isdn_connB(struct bc_state *bcs)
|
||||
{
|
||||
}
|
||||
|
||||
void gigaset_isdn_hupB(struct bc_state *bcs)
|
||||
{
|
||||
}
|
||||
|
||||
void gigaset_isdn_start(struct cardstate *cs)
|
||||
{
|
||||
}
|
||||
|
||||
void gigaset_isdn_stop(struct cardstate *cs)
|
||||
{
|
||||
}
|
||||
|
||||
int gigaset_isdn_register(struct cardstate *cs, const char *isdnid)
|
||||
{
|
||||
pr_info("no ISDN subsystem interface\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
void gigaset_isdn_unregister(struct cardstate *cs)
|
||||
{
|
||||
}
|
Loading…
Reference in a new issue