diff --git a/drivers/staging/nvec/nvec.c b/drivers/staging/nvec/nvec.c
index 8c01723d681a38098c1a73af457a38df040b4c66..a80f9935a3e14d5225ef183de295304d5f4959fd 100644
--- a/drivers/staging/nvec/nvec.c
+++ b/drivers/staging/nvec/nvec.c
@@ -446,6 +446,11 @@ static void nvec_rx_completed(struct nvec_chip *nvec)
 
 		nvec_msg_free(nvec, nvec->rx);
 		nvec->state = 0;
+
+		/* Battery quirk - Often incomplete, and likes to crash */
+		if (nvec->rx->data[0] == NVEC_BAT)
+			complete(&nvec->ec_transfer);
+
 		return;
 	}