Add function to update TRAU muxer after assignment or handover

E1 based BTS use TRAU muxer to decode TRAU frames. After changing
channel from one timeslot to another (due to handover or assignment),
the TRAU muxer must be updated. The call reference of the call is
disconnected from the old channel and connected to the new channel.
diff --git a/openbsc/src/libbsc/bsc_api.c b/openbsc/src/libbsc/bsc_api.c
index 86d2493..e567038 100644
--- a/openbsc/src/libbsc/bsc_api.c
+++ b/openbsc/src/libbsc/bsc_api.c
@@ -31,6 +31,7 @@
 #include <openbsc/handover.h>
 #include <openbsc/debug.h>
 #include <openbsc/gsm_04_08.h>
+#include <openbsc/trau_mux.h>
 
 #include <osmocom/gsm/protocol/gsm_08_08.h>
 
@@ -419,6 +420,10 @@
 		return;
 	}
 
+	/* switch TRAU muxer for E1 based BTS from one channel to another */
+	if (is_e1_bts(conn->bts))
+		switch_trau_mux(conn->lchan, conn->secondary_lchan);
+
 	/* swap channels */
 	osmo_timer_del(&conn->T10);