diff --git a/sdk/fidl/fuchsia.wlan.sme/sme.fidl b/sdk/fidl/fuchsia.wlan.sme/sme.fidl
index df97fd4c..4f84c38 100644
--- a/sdk/fidl/fuchsia.wlan.sme/sme.fidl
+++ b/sdk/fidl/fuchsia.wlan.sme/sme.fidl
@@ -59,6 +59,7 @@
     NOT_SUPPORTED = 1;
     INTERNAL_ERROR = 2;
     SHOULD_WAIT = 3;
+    CANCELED_BY_DRIVER_OR_FIRMWARE = 4;
 };
 
 struct ScanError {
diff --git a/src/connectivity/wlan/wlancfg/src/client/scan.rs b/src/connectivity/wlan/wlancfg/src/client/scan.rs
index 77d39bb..f5aec85 100644
--- a/src/connectivity/wlan/wlancfg/src/client/scan.rs
+++ b/src/connectivity/wlan/wlancfg/src/client/scan.rs
@@ -83,11 +83,15 @@
                 }
                 fidl_sme::ScanTransactionEvent::OnError { error } => {
                     error!("Scan error from SME: {:?}", error);
-                    return Err(if error.code == fidl_sme::ScanErrorCode::ShouldWait {
-                        SmeScanError::ShouldRetryLater
-                    } else {
-                        SmeScanError::Other
-                    });
+                    return Err(
+                        if error.code == fidl_sme::ScanErrorCode::ShouldWait
+                            || error.code == fidl_sme::ScanErrorCode::CanceledByDriverOrFirmware
+                        {
+                            SmeScanError::ShouldRetryLater
+                        } else {
+                            SmeScanError::Other
+                        },
+                    );
                 }
             };
         }
@@ -1129,6 +1133,7 @@
 
     #[test_case(fidl_sme::ScanErrorCode::ShouldWait, false; "SME scan error ShouldWait with failed retry")]
     #[test_case(fidl_sme::ScanErrorCode::ShouldWait, true; "SME scan error ShouldWait with successful retry")]
+    #[test_case(fidl_sme::ScanErrorCode::CanceledByDriverOrFirmware, true; "SME scan error CanceledByDriverOrFirmware with successful retry")]
     fn sme_scan_error_with_retry(error_code: fidl_sme::ScanErrorCode, retry_succeeds: bool) {
         let mut exec = fasync::Executor::new().expect("failed to create an executor");
         let (sme_proxy, mut sme_stream) = exec.run_singlethreaded(create_sme_proxy());
diff --git a/src/connectivity/wlan/wlanstack/src/station/client.rs b/src/connectivity/wlan/wlanstack/src/station/client.rs
index c2f00ac..1a7599e 100644
--- a/src/connectivity/wlan/wlanstack/src/station/client.rs
+++ b/src/connectivity/wlan/wlanstack/src/station/client.rs
@@ -259,6 +259,10 @@
                     code: fidl_sme::ScanErrorCode::ShouldWait,
                     message: "Scanning is temporarily unavailable".to_string(),
                 },
+                fidl_mlme::ScanResultCode::CanceledByDriverOrFirmware => fidl_sme::ScanError {
+                    code: fidl_sme::ScanErrorCode::CanceledByDriverOrFirmware,
+                    message: "Scanning was canceled by driver or FW".to_string(),
+                },
                 _ => fidl_sme::ScanError {
                     code: fidl_sme::ScanErrorCode::InternalError,
                     message: "Internal error occurred".to_string(),
@@ -351,6 +355,11 @@
         "Scanning not supported by device"
     )]
     #[test_case(
+        fidl_mlme::ScanResultCode::CanceledByDriverOrFirmware,
+        fidl_sme::ScanErrorCode::CanceledByDriverOrFirmware,
+        "Scanning was canceled by driver or FW"
+    )]
+    #[test_case(
         fidl_mlme::ScanResultCode::InvalidArgs,
         fidl_sme::ScanErrorCode::InternalError,
         "Internal error occurred"
