#endif
 }
 
-
-
-static u32 iwl_hw_detect(struct iwl_priv *priv)
-{
-       return iwl_read32(trans(priv), CSR_HW_REV);
-}
-
 /* Size of one Rx buffer in host DRAM */
 #define IWL_RX_BUF_SIZE_4K (4 * 1024)
 #define IWL_RX_BUF_SIZE_8K (8 * 1024)
        struct iwl_priv *priv;
        struct ieee80211_hw *hw;
        u16 num_mac;
-       u32 hw_rev;
 
        /************************
         * 1. Allocating HW data
        /***********************
         * 3. Read REV register
         ***********************/
-       hw_rev = iwl_hw_detect(priv);
        IWL_INFO(priv, "Detected %s, REV=0x%X\n",
-               cfg(priv)->name, hw_rev);
+               cfg(priv)->name, trans(priv)->hw_rev);
 
        err = iwl_trans_start_hw(trans(priv));
        if (err)
         * 4. Read EEPROM
         *****************/
        /* Read the EEPROM */
-       err = iwl_eeprom_init(priv, hw_rev);
+       err = iwl_eeprom_init(priv, trans(priv)->hw_rev);
        /* Reset chip to save power until we load uCode during "up". */
        iwl_trans_stop_hw(trans(priv));
        if (err) {
 
        trans->dev = &pdev->dev;
        trans->irq = pdev->irq;
        trans_pcie->pci_dev = pdev;
+       trans->hw_rev = iwl_read32(trans, CSR_HW_REV);
        trans->hw_id = (pdev->device << 16) + pdev->subsystem_device;
        snprintf(trans->hw_id_str, sizeof(trans->hw_id_str),
                 "PCI ID: 0x%04X:0x%04X", pdev->device, pdev->subsystem_device);