aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-agn.c40
1 files changed, 6 insertions, 34 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn.c b/drivers/net/wireless/iwlwifi/iwl-agn.c
index 467c8617cb7d..db580cbf5982 100644
--- a/drivers/net/wireless/iwlwifi/iwl-agn.c
+++ b/drivers/net/wireless/iwlwifi/iwl-agn.c
@@ -1291,6 +1291,7 @@ static int iwl_read_ucode(struct iwl_priv *priv)
1291 size_t len; 1291 size_t len;
1292 u32 api_ver, build; 1292 u32 api_ver, build;
1293 u32 inst_size, data_size, init_size, init_data_size, boot_size; 1293 u32 inst_size, data_size, init_size, init_data_size, boot_size;
1294 u16 eeprom_ver;
1294 1295
1295 /* Ask kernel firmware_class module to get the boot firmware off disk. 1296 /* Ask kernel firmware_class module to get the boot firmware off disk.
1296 * request_firmware() is synchronous, file is in memory on return. */ 1297 * request_firmware() is synchronous, file is in memory on return. */
@@ -1368,6 +1369,11 @@ static int iwl_read_ucode(struct iwl_priv *priv)
1368 if (build) 1369 if (build)
1369 IWL_DEBUG_INFO(priv, "Build %u\n", build); 1370 IWL_DEBUG_INFO(priv, "Build %u\n", build);
1370 1371
1372 eeprom_ver = iwl_eeprom_query16(priv, EEPROM_VERSION);
1373 IWL_DEBUG_INFO(priv, "NVM Type: %s, version: 0x%x\n",
1374 (priv->nvm_device_type == NVM_DEVICE_TYPE_OTP)
1375 ? "OTP" : "EEPROM", eeprom_ver);
1376
1371 IWL_DEBUG_INFO(priv, "f/w package hdr ucode version raw = 0x%x\n", 1377 IWL_DEBUG_INFO(priv, "f/w package hdr ucode version raw = 0x%x\n",
1372 priv->ucode_ver); 1378 priv->ucode_ver);
1373 IWL_DEBUG_INFO(priv, "f/w package hdr runtime inst size = %u\n", 1379 IWL_DEBUG_INFO(priv, "f/w package hdr runtime inst size = %u\n",
@@ -2483,39 +2489,6 @@ static DEVICE_ATTR(debug_level, S_IWUSR | S_IRUGO,
2483#endif /* CONFIG_IWLWIFI_DEBUG */ 2489#endif /* CONFIG_IWLWIFI_DEBUG */
2484 2490
2485 2491
2486static ssize_t show_version(struct device *d,
2487 struct device_attribute *attr, char *buf)
2488{
2489 struct iwl_priv *priv = dev_get_drvdata(d);
2490 struct iwl_alive_resp *palive = &priv->card_alive;
2491 ssize_t pos = 0;
2492 u16 eeprom_ver;
2493
2494 if (palive->is_valid)
2495 pos += sprintf(buf + pos,
2496 "fw version: 0x%01X.0x%01X.0x%01X.0x%01X\n"
2497 "fw type: 0x%01X 0x%01X\n",
2498 palive->ucode_major, palive->ucode_minor,
2499 palive->sw_rev[0], palive->sw_rev[1],
2500 palive->ver_type, palive->ver_subtype);
2501 else
2502 pos += sprintf(buf + pos, "fw not loaded\n");
2503
2504 if (priv->eeprom) {
2505 eeprom_ver = iwl_eeprom_query16(priv, EEPROM_VERSION);
2506 pos += sprintf(buf + pos, "NVM Type: %s, version: 0x%x\n",
2507 (priv->nvm_device_type == NVM_DEVICE_TYPE_OTP)
2508 ? "OTP" : "EEPROM", eeprom_ver);
2509
2510 } else {
2511 pos += sprintf(buf + pos, "EEPROM not initialzed\n");
2512 }
2513
2514 return pos;
2515}
2516
2517static DEVICE_ATTR(version, S_IWUSR | S_IRUGO, show_version, NULL);
2518
2519static ssize_t show_temperature(struct device *d, 2492static ssize_t show_temperature(struct device *d,
2520 struct device_attribute *attr, char *buf) 2493 struct device_attribute *attr, char *buf)
2521{ 2494{
@@ -2779,7 +2752,6 @@ static struct attribute *iwl_sysfs_entries[] = {
2779#ifdef CONFIG_IWLWIFI_DEBUG 2752#ifdef CONFIG_IWLWIFI_DEBUG
2780 &dev_attr_debug_level.attr, 2753 &dev_attr_debug_level.attr,
2781#endif 2754#endif
2782 &dev_attr_version.attr,
2783 NULL 2755 NULL
2784}; 2756};
2785 2757