diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c
index d006e6c0e3b4b70efbafca49297c13470413fbbb..8680aae678ce012a0b62a206d14dc96936122a0e 100644
--- a/net/bluetooth/l2cap_core.c
+++ b/net/bluetooth/l2cap_core.c
@@ -3234,6 +3234,9 @@ static int l2cap_build_conf_req(struct l2cap_chan *chan, void *data)
 
 	switch (chan->mode) {
 	case L2CAP_MODE_BASIC:
+		if (disable_ertm)
+			break;
+
 		if (!(chan->conn->feat_mask & L2CAP_FEAT_ERTM) &&
 		    !(chan->conn->feat_mask & L2CAP_FEAT_STREAMING))
 			break;