aboutsummaryrefslogtreecommitdiffstats
path: root/src/input/dahdi.c
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@gnumonks.org>2011-08-19 18:43:38 +0200
committerPablo Neira Ayuso <pablo@gnumonks.org>2011-08-19 18:43:38 +0200
commit4e862cbf4b3b438a07ea89438f4384bd10468ea9 (patch)
tree9e9cc25a91a7b1095566f6375deb3fc449cdc522 /src/input/dahdi.c
parent7e0d006e3c7f163cf1e3621d77a7366a5a7e828a (diff)
e1_input: rework configuration of virtual E1 line operations
struct e1inp_line_ops { - enum e1inp_line_role role; - char *addr; - void *data; + union { + struct { + enum e1inp_line_role role; /* BSC or BTS mode. */ + const char *addr; /* IP address .*/ + void *dev; /* device parameters. */ + } ipa; + struct { + const char *port; /* e.g. /dev/ttyUSB0 */ + unsigned int delay; + } rs232; + } cfg; Now this structure contains the configuration details for the virtual E1 line, instead of using a pointer. This also get the line_update callback to its original layout: + int (*line_update)(struct e1inp_line *line);
Diffstat (limited to 'src/input/dahdi.c')
-rw-r--r--src/input/dahdi.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/input/dahdi.c b/src/input/dahdi.c
index 1b366e1d..e4e49051 100644
--- a/src/input/dahdi.c
+++ b/src/input/dahdi.c
@@ -385,8 +385,7 @@ static int dahdi_fd_cb(struct osmo_fd *bfd, unsigned int what)
return rc;
}
-static int dahdi_e1_line_update(struct e1inp_line *line,
- enum e1inp_line_role role, const char *addr);
+static int dahdi_e1_line_update(struct e1inp_line *line);
struct e1inp_driver dahdi_driver = {
.name = "dahdi",
@@ -501,8 +500,7 @@ static int dahdi_e1_setup(struct e1inp_line *line)
return 0;
}
-static int dahdi_e1_line_update(struct e1inp_line *line,
- enum e1inp_line_role role, const char *addr)
+static int dahdi_e1_line_update(struct e1inp_line *line)
{
if (line->driver != &dahdi_driver)
return -EINVAL;