diff --git a/src/osmo-bts-litecell15/lc15_l1_if.c b/src/osmo-bts-litecell15/lc15_l1_if.c
index 053844f..580cdf0 100644
--- a/src/osmo-bts-litecell15/lc15_l1_if.c
+++ b/src/osmo-bts-litecell15/lc15_l1_if.c
@@ -145,6 +145,11 @@
 	return l1if_req_pdch(fl1h, msg);
 }
 
+int l1if_disconnect_pdch(void *obj, uint8_t ts)
+{
+	return 0;
+}
+
 static int handle_ph_readytosend_ind(struct lc15l1_hdl *fl1h,
 				     GsmL1_PhReadyToSendInd_t *rts_ind)
 {
diff --git a/src/osmo-bts-oc2g/oc2g_l1_if.c b/src/osmo-bts-oc2g/oc2g_l1_if.c
index 1ea0b26..48005a2 100644
--- a/src/osmo-bts-oc2g/oc2g_l1_if.c
+++ b/src/osmo-bts-oc2g/oc2g_l1_if.c
@@ -146,6 +146,11 @@
 	return l1if_req_pdch(fl1h, msg);
 }
 
+int l1if_disconnect_pdch(void *obj, uint8_t ts)
+{
+	return 0;
+}
+
 static int handle_ph_readytosend_ind(struct oc2gl1_hdl *fl1h,
 				     GsmL1_PhReadyToSendInd_t *rts_ind)
 {
diff --git a/src/osmo-bts-sysmo/sysmo_l1_if.c b/src/osmo-bts-sysmo/sysmo_l1_if.c
index 31028f5..18378b6 100644
--- a/src/osmo-bts-sysmo/sysmo_l1_if.c
+++ b/src/osmo-bts-sysmo/sysmo_l1_if.c
@@ -128,6 +128,11 @@
 	return l1if_req_pdch(fl1h, msg);
 }
 
+int l1if_disconnect_pdch(void *obj, uint8_t ts)
+{
+	return 0;
+}
+
 static int handle_ph_readytosend_ind(struct femtol1_hdl *fl1h,
 				     GsmL1_PhReadyToSendInd_t *rts_ind)
 {
diff --git a/src/pcu_l1_if.cpp b/src/pcu_l1_if.cpp
index fdee83d..258a118 100644
--- a/src/pcu_l1_if.cpp
+++ b/src/pcu_l1_if.cpp
@@ -918,6 +918,10 @@
 				     trx_nr, ts_nr, pdch->tsc, pdch->fh.enabled ? "yes" : "no");
 			} else {
 				if (pdch->is_enabled()) {
+#ifdef ENABLE_DIRECT_PHY
+					if ((info_ind->flags & PCU_IF_FLAG_SYSMO))
+						l1if_disconnect_pdch(bts->trx[trx_nr].fl1h, ts_nr);
+#endif
 					pcu_tx_act_req(bts, pdch, 0);
 					pdch->disable();
 				}
diff --git a/src/pcu_l1_if_phy.h b/src/pcu_l1_if_phy.h
index 73d0b6f..318d0aa 100644
--- a/src/pcu_l1_if_phy.h
+++ b/src/pcu_l1_if_phy.h
@@ -7,4 +7,5 @@
 int l1if_connect_pdch(void *obj, uint8_t ts);
 int l1if_pdch_req(void *obj, uint8_t ts, int is_ptcch, uint32_t fn, uint16_t arfcn, uint8_t block_nr, uint8_t *data,
 		  uint8_t len);
+int l1if_disconnect_pdch(void *obj, uint8_t ts);
 int l1if_close_pdch(void *obj);
diff --git a/tests/alloc/AllocTest.cpp b/tests/alloc/AllocTest.cpp
index 21fa6f2..08f5910 100644
--- a/tests/alloc/AllocTest.cpp
+++ b/tests/alloc/AllocTest.cpp
@@ -861,6 +861,7 @@
 extern "C" {
 void l1if_pdch_req() { abort(); }
 void l1if_connect_pdch() { abort(); }
+void l1if_disconnect_pdch() { abort(); }
 void l1if_close_pdch() { abort(); }
 void l1if_open_pdch() { abort(); }
 }
diff --git a/tests/alloc/MslotTest.cpp b/tests/alloc/MslotTest.cpp
index 1b06b0b..1d5ff97 100644
--- a/tests/alloc/MslotTest.cpp
+++ b/tests/alloc/MslotTest.cpp
@@ -175,6 +175,7 @@
 extern "C" {
 void l1if_pdch_req() { abort(); }
 void l1if_connect_pdch() { abort(); }
+void l1if_disconnect_pdch() { abort(); }
 void l1if_close_pdch() { abort(); }
 void l1if_open_pdch() { abort(); }
 }
diff --git a/tests/app_info/AppInfoTest.cpp b/tests/app_info/AppInfoTest.cpp
index 668b081..659c011 100644
--- a/tests/app_info/AppInfoTest.cpp
+++ b/tests/app_info/AppInfoTest.cpp
@@ -198,6 +198,7 @@
 extern "C" {
 void l1if_pdch_req() { abort(); }
 void l1if_connect_pdch() { abort(); }
+void l1if_disconnect_pdch() { abort(); }
 void l1if_close_pdch() { abort(); }
 void l1if_open_pdch() { abort(); }
 }
diff --git a/tests/edge/EdgeTest.cpp b/tests/edge/EdgeTest.cpp
index dd318c0..4cc7960 100644
--- a/tests/edge/EdgeTest.cpp
+++ b/tests/edge/EdgeTest.cpp
@@ -1427,6 +1427,7 @@
 extern "C" {
 void l1if_pdch_req() { abort(); }
 void l1if_connect_pdch() { abort(); }
+void l1if_disconnect_pdch() { abort(); }
 void l1if_close_pdch() { abort(); }
 void l1if_open_pdch() { abort(); }
 }
diff --git a/tests/emu/pcu_emu.cpp b/tests/emu/pcu_emu.cpp
index b08c31d..c1ccf07 100644
--- a/tests/emu/pcu_emu.cpp
+++ b/tests/emu/pcu_emu.cpp
@@ -170,6 +170,7 @@
 extern "C" {
 void l1if_pdch_req() { abort(); }
 void l1if_connect_pdch() { abort(); }
+void l1if_disconnect_pdch() { abort(); }
 void l1if_close_pdch() { abort(); }
 void l1if_open_pdch() { abort(); }
 }
diff --git a/tests/fn/FnTest.cpp b/tests/fn/FnTest.cpp
index ae15164..f4b998c 100644
--- a/tests/fn/FnTest.cpp
+++ b/tests/fn/FnTest.cpp
@@ -171,6 +171,8 @@
 		abort();
 	} void l1if_connect_pdch() {
 		abort();
+	} void l1if_disconnect_pdch() {
+		abort();
 	}
 	void l1if_close_pdch() {
 		abort();
diff --git a/tests/llc/LlcTest.cpp b/tests/llc/LlcTest.cpp
index bdc5863..547dc79 100644
--- a/tests/llc/LlcTest.cpp
+++ b/tests/llc/LlcTest.cpp
@@ -381,6 +381,7 @@
 extern "C" {
 void l1if_pdch_req() { abort(); }
 void l1if_connect_pdch() { abort(); }
+void l1if_disconnect_pdch() { abort(); }
 void l1if_close_pdch() { abort(); }
 void l1if_open_pdch() { abort(); }
 }
diff --git a/tests/ms/MsTest.cpp b/tests/ms/MsTest.cpp
index cbafee9..6a770c9 100644
--- a/tests/ms/MsTest.cpp
+++ b/tests/ms/MsTest.cpp
@@ -661,6 +661,7 @@
 extern "C" {
 void l1if_pdch_req() { abort(); }
 void l1if_connect_pdch() { abort(); }
+void l1if_disconnect_pdch() { abort(); }
 void l1if_close_pdch() { abort(); }
 void l1if_open_pdch() { abort(); }
 }
diff --git a/tests/tbf/TbfTest.cpp b/tests/tbf/TbfTest.cpp
index aa3c121..0b2e868 100644
--- a/tests/tbf/TbfTest.cpp
+++ b/tests/tbf/TbfTest.cpp
@@ -3517,6 +3517,7 @@
 extern "C" {
 void l1if_pdch_req() { abort(); }
 void l1if_connect_pdch() { abort(); }
+void l1if_disconnect_pdch() { abort(); }
 void l1if_close_pdch() { abort(); }
 void l1if_open_pdch() { abort(); }
 }
diff --git a/tests/types/TypesTest.cpp b/tests/types/TypesTest.cpp
index c728af1..a4f6db6 100644
--- a/tests/types/TypesTest.cpp
+++ b/tests/types/TypesTest.cpp
@@ -975,6 +975,7 @@
 extern "C" {
 void l1if_pdch_req() { abort(); }
 void l1if_connect_pdch() { abort(); }
+void l1if_disconnect_pdch() { abort(); }
 void l1if_close_pdch() { abort(); }
 void l1if_open_pdch() { abort(); }
 }
diff --git a/tests/ulc/PdchUlcTest.cpp b/tests/ulc/PdchUlcTest.cpp
index a199311..44aef34 100644
--- a/tests/ulc/PdchUlcTest.cpp
+++ b/tests/ulc/PdchUlcTest.cpp
@@ -338,6 +338,8 @@
 		abort();
 	} void l1if_connect_pdch() {
 		abort();
+	} void l1if_disconnect_pdch() {
+		abort();
 	}
 	void l1if_close_pdch() {
 		abort();
