diff --git a/wpa_supplicant/config.c b/wpa_supplicant/config.c
index 5901946..1693631 100644
--- a/wpa_supplicant/config.c
+++ b/wpa_supplicant/config.c
@@ -4384,8 +4384,8 @@
 	config->disassoc_imminent_rssi_threshold =
 		DEFAULT_DISASSOC_IMMINENT_RSSI_THRESHOLD;
 	config->oce = DEFAULT_OCE_SUPPORT;
-	config->btm_offload = DEFAULT_BTM_OFFLOAD;
 #endif /* CONFIG_MBO */
+	config->btm_offload = DEFAULT_BTM_OFFLOAD;
 
 	if (ctrl_interface)
 		config->ctrl_interface = os_strdup(ctrl_interface);
@@ -5188,8 +5188,8 @@
 		    MBO_CELL_CAPA_NOT_SUPPORTED), 0 },
 	{ INT_RANGE(disassoc_imminent_rssi_threshold, -120, 0), 0 },
 	{ INT_RANGE(oce, 0, 3), 0 },
-	{ INT_RANGE(btm_offload, 0, 1), CFG_CHANGED_DISABLE_BTM_NOTIFY },
 #endif /* CONFIG_MBO */
+	{ INT_RANGE(btm_offload, 0, 1), CFG_CHANGED_DISABLE_BTM_NOTIFY },
 	{ INT(gas_address3), 0 },
 	{ INT_RANGE(ftm_responder, 0, 1), 0 },
 	{ INT_RANGE(ftm_initiator, 0, 1), 0 },
diff --git a/wpa_supplicant/config.h b/wpa_supplicant/config.h
index 7e69343..914b5d9 100644
--- a/wpa_supplicant/config.h
+++ b/wpa_supplicant/config.h
@@ -1476,15 +1476,14 @@
 	 *  - Set BIT(1) to enable OCE in STA-CFON mode
 	 */
 	unsigned int oce;
-
+#endif /* CONFIG_MBO */
 	/**
 	 * btm_offload - Set where to perform roaming logic
 	 *  - Set to 0 to handle fully roaming logic in supplicant
 	 *  - Set to 1 to skip roaming logic in supplicant for firmware roaming
 	 *    just parse BTM frame and notify framework
 	 */
-        int btm_offload;
-#endif /* CONFIG_MBO */
+	int btm_offload;
 
 	/**
 	 * gas_address3 - GAS Address3 field behavior
diff --git a/wpa_supplicant/wnm_sta.c b/wpa_supplicant/wnm_sta.c
index 1b6c1b4..155e8f4 100644
--- a/wpa_supplicant/wnm_sta.c
+++ b/wpa_supplicant/wnm_sta.c
@@ -1465,17 +1465,15 @@
 	vendor = get_ie(pos, end - pos, WLAN_EID_VENDOR_SPECIFIC);
 	if (vendor) {
 		wpas_mbo_ie_trans_req(wpa_s, vendor + 2, vendor[1]);
-		if (wpa_s->conf->btm_offload) {
-			wpa_msg(wpa_s, MSG_INFO,
-				"WNM: Notify BSS Transition Management Request frame status");
-			wpa_s->bss_tm_status = WNM_BSS_TM_ACCEPT;
-			wpas_notify_bss_tm_status(wpa_s);
-			/* since it could be referenced in the scan result logic, initialize it */
-			wpa_s->wnm_mbo_trans_reason_present = 0;
-			return;
-		}
 	}
 #endif /* CONFIG_MBO */
+	if (wpa_s->conf->btm_offload) {
+		wpa_printf(MSG_INFO,
+			"WNM: BTM offload enabled. Notify status and return");
+		wpa_s->bss_tm_status = WNM_BSS_TM_ACCEPT;
+		wpas_notify_bss_tm_status(wpa_s);
+		return;
+	}
 
 	if (wpa_s->wnm_mode & WNM_BSS_TM_REQ_DISASSOC_IMMINENT) {
 		wpa_msg(wpa_s, MSG_INFO, "WNM: Disassociation Imminent - "
