diff --git a/openbsc/src/libbsc/bts_ericsson_rbs2000.c b/openbsc/src/libbsc/bts_ericsson_rbs2000.c
index 6480d34..1b64b36 100644
--- a/openbsc/src/libbsc/bts_ericsson_rbs2000.c
+++ b/openbsc/src/libbsc/bts_ericsson_rbs2000.c
@@ -161,13 +161,12 @@
 	case OM2K_MO_CLS_IS:
 		if (nsd->new_state->availability == OM2K_MO_S_ENABLED) {
 			/* IS is enabled, we can proceed with TRXC/RX/TX/TS */
+			break;
 		}
-		if (nsd->new_state->operational != NM_OPSTATE_ENABLED ||
-		    nsd->new_state->availability == OM2K_MO_S_DISABLED)
+		if (nsd->new_state->operational != NM_OPSTATE_ENABLED)
 			break;
 		/* IS has started, we can configure + enable it */
 		abis_om2k_tx_is_conf_req(nsd->bts);
-		abis_om2k_tx_enable_req(nsd->bts, nsd->om2k_mo);
 		break;
 	case OM2K_MO_CLS_TF:
 		if (nsd->new_state->operational != NM_OPSTATE_ENABLED ||
@@ -176,12 +175,10 @@
 		if (nsd->new_state->availability == OM2K_MO_S_STARTED) {
 			/* TF has started, configure + enable it */
 			abis_om2k_tx_is_conf_req(nsd->bts);
-			abis_om2k_tx_enable_req(nsd->bts, nsd->om2k_mo);
 		}
 		break;
 	case OM2K_MO_CLS_TRXC:
-		if (nsd->new_state->operational != NM_OPSTATE_ENABLED ||
-		    nsd->new_state->availability != OM2K_MO_S_STARTED)
+		if (nsd->new_state->availability != OM2K_MO_S_STARTED)
 			break;
 		/* TRXC is started, connect the TX and RX objects */
 		memcpy(&mo, nsd->om2k_mo, sizeof(mo));
@@ -196,7 +193,6 @@
 			break;
 		/* RX is started, configure + enable it */
 		abis_om2k_tx_rx_conf_req(nsd->obj);
-		abis_om2k_tx_enable_req(nsd->bts, nsd->om2k_mo);
 		break;
 	case OM2K_MO_CLS_TX:
 		if (nsd->new_state->operational != NM_OPSTATE_ENABLED ||
@@ -204,6 +200,18 @@
 			break;
 		/* RX is started, configure + enable it */
 		abis_om2k_tx_tx_conf_req(nsd->obj);
+		break;
+	}
+}
+
+static void nm_conf_res(struct nm_om2k_signal_data *nsd)
+{
+	switch (nsd->om2k_mo->class) {
+	case OM2K_MO_CLS_IS:
+	case OM2K_MO_CLS_TF:
+	case OM2K_MO_CLS_RX:
+	case OM2K_MO_CLS_TX:
+		/* If configuration was a success, enable it */
 		abis_om2k_tx_enable_req(nsd->bts, nsd->om2k_mo);
 		break;
 	}
@@ -219,6 +227,10 @@
 	case S_NM_STATECHG_OPER:
 	case S_NM_STATECHG_ADM:
 		nm_statechg_evt(signal, signal_data);
+		break;
+	case S_NM_OM2K_CONF_RES:
+		nm_conf_res(signal_data);
+		break;
 	default:
 		break;
 	}
