Commit 7fd6b12f authored by Samuel Ortiz's avatar Samuel Ortiz Committed by John W. Linville
Browse files

iwmc3200wifi: Support unexpected reboot barker



We can receive unexpected reboot barker at any time, and we're supposed to
reset the whole device then.

Signed-off-by: default avatarSamuel Ortiz <sameo@linux.intel.com>
Signed-off-by: default avatarZhu Yi <yi.zhu@intel.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 9829e1b5
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -1321,6 +1321,14 @@ int iwm_rx_handle(struct iwm_priv *iwm, u8 *buf, unsigned long buf_size)

	switch (le32_to_cpu(hdr->cmd)) {
	case UMAC_REBOOT_BARKER:
		if (test_bit(IWM_STATUS_READY, &iwm->status)) {
			IWM_ERR(iwm, "Unexpected BARKER\n");

			schedule_work(&iwm->reset_worker);

			return 0;
		}

		return iwm_notif_send(iwm, NULL, IWM_BARKER_REBOOT_NOTIFICATION,
				      IWM_SRC_UDMA, buf, buf_size);
	case UMAC_ACK_BARKER: