dyn TS: bts_chan_load: use correct nr of subslots for dyn ts

For TCH/F_TCH/H_PDCH dynamic timeslots, the ts->pchan does not lead to a
meaningful value from the subslots_per_pchan[] array. Use the ts_subslots()
function instead, which checks for dyn pchan.

Change-Id: I659acebca82dfb3e305433471be64e9d27439af8
diff --git a/openbsc/src/libbsc/chan_alloc.c b/openbsc/src/libbsc/chan_alloc.c
index c3a7e0f..d9808f4 100644
--- a/openbsc/src/libbsc/chan_alloc.c
+++ b/openbsc/src/libbsc/chan_alloc.c
@@ -555,12 +555,14 @@
 			struct gsm_bts_trx_ts *ts = &trx->ts[i];
 			struct load_counter *pl = &cl->pchan[ts->pchan];
 			int j;
+			int subslots;
 
 			/* skip administratively deactivated timeslots */
 			if (!nm_is_running(&ts->mo.nm_state))
 				continue;
 
-			for (j = 0; j < subslots_per_pchan[ts->pchan]; j++) {
+			subslots = ts_subslots(ts);
+			for (j = 0; j < subslots; j++) {
 				struct gsm_lchan *lchan = &ts->lchan[j];
 
 				pl->total++;