When connecting to a wifi network messages like "iwm0: unhandled firmware response 0xff/0xb8000010 rx ring" appear. After looking at https://patchwork.kernel.org/patch/9869017/ I came up with following patch.
The link also explains what is happening.

I'm not sure if it makes sense to log the firmware responses like the linux kernel does.
They don't appear to have any negative effect so I decided against it.

diff --git sys/dev/pci/if_iwm.c sys/dev/pci/if_iwm.c
index 476c61f0b3d..77d87fa079e 100644
--- sys/dev/pci/if_iwm.c
+++ sys/dev/pci/if_iwm.c
@@ -7219,6 +7219,8 @@ iwm_notif_intr(struct iwm_softc *sc)
case IWM_WIDE_ID(IWM_ALWAYS_LONG_GROUP, IWM_SCAN_CFG_CMD): case IWM_WIDE_ID(IWM_ALWAYS_LONG_GROUP, IWM_SCAN_REQ_UMAC): case IWM_WIDE_ID(IWM_ALWAYS_LONG_GROUP, IWM_SCAN_ABORT_UMAC):
+               case IWM_WIDE_ID(IWM_SYSTEM_GROUP,
+                   IWM_FSEQ_VER_MISMATCH_NOTIFICATION):
                case IWM_SCAN_OFFLOAD_REQUEST_CMD:
                case IWM_SCAN_OFFLOAD_ABORT_CMD:
                case IWM_REPLY_BEACON_FILTERING_CMD:
diff --git sys/dev/pci/if_iwmreg.h sys/dev/pci/if_iwmreg.h
index 3c5cfea7b23..06eef017015 100644
--- sys/dev/pci/if_iwmreg.h
+++ sys/dev/pci/if_iwmreg.h
@@ -1813,6 +1813,9 @@ struct iwm_agn_scd_bc_tbl {
 #define IWM_NET_DETECT_HOTSPOTS_CMD            0x58
 #define IWM_NET_DETECT_HOTSPOTS_QUERY_CMD      0x59

+/* system group command IDs */
+#define IWM_FSEQ_VER_MISMATCH_NOTIFICATION     0xff
+
 #define IWM_REPLY_MAX  0xff

 /**
@@ -5820,6 +5823,7 @@ iwm_cmd_id(uint8_t opcode, uint8_t groupid, uint8_t version)

 /* due to the conversion, this group is special */
 #define IWM_ALWAYS_LONG_GROUP  1
+#define IWM_SYSTEM_GROUP       4

 struct iwm_cmd_header {
        uint8_t code;

Reply via email to