#define EFX_ASSERT_RESET_SERIALISED(efx)               \
        do {                                            \
-               if ((efx->state == STATE_RUNNING) ||    \
+               if ((efx->state == STATE_READY) ||      \
                    (efx->state == STATE_DISABLED))     \
                        ASSERT_RTNL();                  \
        } while (0)
         * of these flags are safe to read under just the rtnl lock */
        if (efx->port_enabled)
                return;
-       if ((efx->state != STATE_RUNNING) && (efx->state != STATE_INIT))
+       if ((efx->state != STATE_READY) && (efx->state != STATE_UNINIT))
                return;
        if (!netif_running(efx->net_dev))
                return;
        if (!pending)
                return;
 
-       /* If we're not RUNNING then don't reset. Leave the reset_pending
+       /* If we're not READY then don't reset. Leave the reset_pending
         * flags set so that efx_pci_probe_main will be retried */
-       if (efx->state != STATE_RUNNING) {
+       if (efx->state != STATE_READY) {
                netif_info(efx, drv, efx->net_dev,
-                          "scheduled reset quenched. NIC not RUNNING\n");
+                          "scheduled reset quenched; NIC not ready\n");
                return;
        }
 
        INIT_DELAYED_WORK(&efx->selftest_work, efx_selftest_async_work);
        efx->pci_dev = pci_dev;
        efx->msg_enable = debug;
-       efx->state = STATE_INIT;
+       efx->state = STATE_UNINIT;
        strlcpy(efx->name, pci_name(pci_dev), sizeof(efx->name));
 
        efx->net_dev = net_dev;
 
        /* Mark the NIC as fini, then stop the interface */
        rtnl_lock();
-       efx->state = STATE_FINI;
+       efx->state = STATE_UNINIT;
        dev_close(efx->net_dev);
 
        /* Allow any queued efx_resets() to complete */
                goto fail4;
        }
 
-       /* Switch to the running state before we expose the device to the OS,
+       /* Switch to the READY state before we expose the device to the OS,
         * so that dev_open()|efx_start_all() will actually start the device */
-       efx->state = STATE_RUNNING;
+       efx->state = STATE_READY;
 
        rc = efx_register_netdev(efx);
        if (rc)
 {
        struct efx_nic *efx = pci_get_drvdata(to_pci_dev(dev));
 
-       efx->state = STATE_FINI;
+       efx->state = STATE_UNINIT;
 
        netif_device_detach(efx->net_dev);
 
 {
        struct efx_nic *efx = pci_get_drvdata(to_pci_dev(dev));
 
-       efx->state = STATE_INIT;
-
        efx_start_interrupts(efx, false);
 
        mutex_lock(&efx->mac_lock);
 
        netif_device_attach(efx->net_dev);
 
-       efx->state = STATE_RUNNING;
+       efx->state = STATE_READY;
 
        efx->type->resume_wol(efx);
 
 
 #define EFX_INT_MODE_USE_MSI(x) (((x)->interrupt_mode) <= EFX_INT_MODE_MSI)
 
 enum nic_state {
-       STATE_INIT = 0,
-       STATE_RUNNING = 1,
-       STATE_FINI = 2,
-       STATE_DISABLED = 3,
-       STATE_MAX,
+       STATE_UNINIT = 0,       /* device being probed/removed or is frozen */
+       STATE_READY = 1,        /* hardware ready and netdev registered */
+       STATE_DISABLED = 2,     /* device disabled due to hardware errors */
 };
 
 /*
  * @irq_rx_adaptive: Adaptive IRQ moderation enabled for RX event queues
  * @irq_rx_moderation: IRQ moderation time for RX event queues
  * @msg_enable: Log message enable flags
- * @state: Device state flag. Serialised by the rtnl_lock.
+ * @state: Device state number (%STATE_*). Serialised by the rtnl_lock.
  * @reset_pending: Bitmask for pending resets
  * @tx_queue: TX DMA queues
  * @rx_queue: RX DMA queues