aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl4965-base.c
diff options
context:
space:
mode:
authorTomas Winkler <tomas.winkler@intel.com>2008-04-21 18:41:52 -0400
committerJohn W. Linville <linville@tuxdriver.com>2008-05-07 15:02:15 -0400
commit073d3f5f1b3b6512eb82a3d40c84dedb14dc6f73 (patch)
tree49ef76bf1d863a231b0a672c2c34fb44f63fad9c /drivers/net/wireless/iwlwifi/iwl4965-base.c
parent5da4b55f78fb2ed40926b775d4f7c791594ecbd7 (diff)
iwlwifi: changing EEPROM layout handling
This patch 1. changes the current EEPROM handling through a single HW struct layout representation, to more general approach, treating the EEPROM image as a flat bytes array, handling this image through ops functions and offsets. 2. Eeprom is dynamically allocated accroding HW type Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Ron Rindjunsky <ron.rindjunsky@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl4965-base.c')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl4965-base.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl4965-base.c b/drivers/net/wireless/iwlwifi/iwl4965-base.c
index 6cb54580fe6b..c5ac82c4aeb4 100644
--- a/drivers/net/wireless/iwlwifi/iwl4965-base.c
+++ b/drivers/net/wireless/iwlwifi/iwl4965-base.c
@@ -7550,7 +7550,7 @@ static int iwl4965_pci_probe(struct pci_dev *pdev, const struct pci_device_id *e
7550 /* Device-specific setup */ 7550 /* Device-specific setup */
7551 if (priv->cfg->ops->lib->set_hw_params(priv)) { 7551 if (priv->cfg->ops->lib->set_hw_params(priv)) {
7552 IWL_ERROR("failed to set hw parameters\n"); 7552 IWL_ERROR("failed to set hw parameters\n");
7553 goto out_iounmap; 7553 goto out_free_eeprom;
7554 } 7554 }
7555 7555
7556 /******************* 7556 /*******************
@@ -7611,6 +7611,8 @@ static int iwl4965_pci_probe(struct pci_dev *pdev, const struct pci_device_id *e
7611 sysfs_remove_group(&pdev->dev.kobj, &iwl4965_attribute_group); 7611 sysfs_remove_group(&pdev->dev.kobj, &iwl4965_attribute_group);
7612 out_unset_hw_params: 7612 out_unset_hw_params:
7613 iwl4965_unset_hw_params(priv); 7613 iwl4965_unset_hw_params(priv);
7614 out_free_eeprom:
7615 iwl_eeprom_free(priv);
7614 out_iounmap: 7616 out_iounmap:
7615 pci_iounmap(pdev, priv->hw_base); 7617 pci_iounmap(pdev, priv->hw_base);
7616 out_pci_release_regions: 7618 out_pci_release_regions:
@@ -7674,6 +7676,7 @@ static void __devexit iwl4965_pci_remove(struct pci_dev *pdev)
7674 7676
7675 iwl4965_unset_hw_params(priv); 7677 iwl4965_unset_hw_params(priv);
7676 iwlcore_clear_stations_table(priv); 7678 iwlcore_clear_stations_table(priv);
7679 iwl_eeprom_free(priv);
7677 7680
7678 7681
7679 /*netif_stop_queue(dev); */ 7682 /*netif_stop_queue(dev); */