[BSC] Move the BTS-type specific code from bcs_init.c to bts_*.c

bsc_init.c was a big mess even only for two supported BTS models,
so before adding more BTS types, this needs a cleanup.

All the BTS specific code from bsc_init.c has now moved into
bts_{siemens_bs11,ipaccess_nanobts}.c

This has required that input_event() and nm_state_event() get both
converted to proper libosmocore signals instead of referencing external
symbols.
diff --git a/openbsc/src/e1_input.c b/openbsc/src/e1_input.c
index def6aca..92bfb24 100644
--- a/openbsc/src/e1_input.c
+++ b/openbsc/src/e1_input.c
@@ -66,9 +66,6 @@
 
 static void *tall_sigl_ctx;
 
-/* to be implemented, e.g. by bsc_hack.c */
-void input_event(int event, enum e1inp_sign_type type, struct gsm_bts_trx *trx);
-
 /*
  * pcap writing of the misdn load
  * pcap format is from http://wiki.wireshark.org/Development/LibpcapFileFormat
@@ -563,13 +560,17 @@
 int e1inp_event(struct e1inp_ts *ts, int evt, u_int8_t tei, u_int8_t sapi)
 {
 	struct e1inp_sign_link *link;
+	struct input_signal_data isd;
 
 	link = e1inp_lookup_sign_link(ts, tei, sapi);
 	if (!link)
 		return -EINVAL;
 
-	/* FIXME: report further upwards */
-	input_event(evt, link->type, link->trx);
+	isd.link_type = link->type;
+	isd.trx = link->trx;
+
+	/* report further upwards */
+	dispatch_signal(SS_INPUT, evt, &isd);
 	return 0;
 }