@@ -3174,16 +3174,18 @@ static void ipw2100_irq_tasklet(struct ipw2100_priv *priv)
if (inta & IPW2100_INTA_FATAL_ERROR) {
printk(KERN_WARNING DRV_NAME
": Fatal interrupt. Scheduling firmware restart.\n");
+
priv->inta_other++;
write_register(dev, IPW_REG_INTA, IPW2100_INTA_FATAL_ERROR);
read_nic_dword(dev, IPW_NIC_FATAL_ERROR, &priv->fatal_error);
- IPW_DEBUG_INFO("%s: Fatal error value: 0x%08X\n",
- priv->net_dev->name, priv->fatal_error);
-
read_nic_dword(dev, IPW_ERROR_ADDR(priv->fatal_error), &tmp);
- IPW_DEBUG_INFO("%s: Fatal error address value: 0x%08X\n",
- priv->net_dev->name, tmp);
+
+ printk(KERN_WARNING "%s: Fatal error value: 0x%08X, "
+ "address: 0x%08X, inta: 0x%08lX\n",
+ priv->net_dev->name, priv->fatal_error, tmp,
+ (unsigned long)inta & IPW_INTERRUPT_MASK);
+ WARN_ON_ONCE(1);
/* Wake up any sleeping jobs */
schedule_reset(priv);