diff options
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-debugfs.c')
| -rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-debugfs.c | 54 |
1 files changed, 53 insertions, 1 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-debugfs.c b/drivers/net/wireless/iwlwifi/iwl-debugfs.c index 36cfeccfafbc..64eb585f1578 100644 --- a/drivers/net/wireless/iwlwifi/iwl-debugfs.c +++ b/drivers/net/wireless/iwlwifi/iwl-debugfs.c | |||
| @@ -425,6 +425,56 @@ static ssize_t iwl_dbgfs_channels_read(struct file *file, char __user *user_buf, | |||
| 425 | return ret; | 425 | return ret; |
| 426 | } | 426 | } |
| 427 | 427 | ||
| 428 | static ssize_t iwl_dbgfs_status_read(struct file *file, | ||
| 429 | char __user *user_buf, | ||
| 430 | size_t count, loff_t *ppos) { | ||
| 431 | |||
| 432 | struct iwl_priv *priv = (struct iwl_priv *)file->private_data; | ||
| 433 | char buf[512]; | ||
| 434 | int pos = 0; | ||
| 435 | const size_t bufsz = sizeof(buf); | ||
| 436 | |||
| 437 | pos += scnprintf(buf + pos, bufsz - pos, "STATUS_HCMD_ACTIVE:\t %d\n", | ||
| 438 | test_bit(STATUS_HCMD_ACTIVE, &priv->status)); | ||
| 439 | pos += scnprintf(buf + pos, bufsz - pos, "STATUS_HCMD_SYNC_ACTIVE: %d\n", | ||
| 440 | test_bit(STATUS_HCMD_SYNC_ACTIVE, &priv->status)); | ||
| 441 | pos += scnprintf(buf + pos, bufsz - pos, "STATUS_INT_ENABLED:\t %d\n", | ||
| 442 | test_bit(STATUS_INT_ENABLED, &priv->status)); | ||
| 443 | pos += scnprintf(buf + pos, bufsz - pos, "STATUS_RF_KILL_HW:\t %d\n", | ||
| 444 | test_bit(STATUS_RF_KILL_HW, &priv->status)); | ||
| 445 | pos += scnprintf(buf + pos, bufsz - pos, "STATUS_RF_KILL_SW:\t %d\n", | ||
| 446 | test_bit(STATUS_RF_KILL_SW, &priv->status)); | ||
| 447 | pos += scnprintf(buf + pos, bufsz - pos, "STATUS_INIT:\t\t %d\n", | ||
| 448 | test_bit(STATUS_INIT, &priv->status)); | ||
| 449 | pos += scnprintf(buf + pos, bufsz - pos, "STATUS_ALIVE:\t\t %d\n", | ||
| 450 | test_bit(STATUS_ALIVE, &priv->status)); | ||
| 451 | pos += scnprintf(buf + pos, bufsz - pos, "STATUS_READY:\t\t %d\n", | ||
| 452 | test_bit(STATUS_READY, &priv->status)); | ||
| 453 | pos += scnprintf(buf + pos, bufsz - pos, "STATUS_TEMPERATURE:\t %d\n", | ||
| 454 | test_bit(STATUS_TEMPERATURE, &priv->status)); | ||
| 455 | pos += scnprintf(buf + pos, bufsz - pos, "STATUS_GEO_CONFIGURED:\t %d\n", | ||
| 456 | test_bit(STATUS_GEO_CONFIGURED, &priv->status)); | ||
| 457 | pos += scnprintf(buf + pos, bufsz - pos, "STATUS_EXIT_PENDING:\t %d\n", | ||
| 458 | test_bit(STATUS_EXIT_PENDING, &priv->status)); | ||
| 459 | pos += scnprintf(buf + pos, bufsz - pos, "STATUS_IN_SUSPEND:\t %d\n", | ||
| 460 | test_bit(STATUS_IN_SUSPEND, &priv->status)); | ||
| 461 | pos += scnprintf(buf + pos, bufsz - pos, "STATUS_STATISTICS:\t %d\n", | ||
| 462 | test_bit(STATUS_STATISTICS, &priv->status)); | ||
| 463 | pos += scnprintf(buf + pos, bufsz - pos, "STATUS_SCANNING:\t %d\n", | ||
| 464 | test_bit(STATUS_SCANNING, &priv->status)); | ||
| 465 | pos += scnprintf(buf + pos, bufsz - pos, "STATUS_SCAN_ABORTING:\t %d\n", | ||
| 466 | test_bit(STATUS_SCAN_ABORTING, &priv->status)); | ||
| 467 | pos += scnprintf(buf + pos, bufsz - pos, "STATUS_SCAN_HW:\t\t %d\n", | ||
| 468 | test_bit(STATUS_SCAN_HW, &priv->status)); | ||
| 469 | pos += scnprintf(buf + pos, bufsz - pos, "STATUS_POWER_PMI:\t %d\n", | ||
| 470 | test_bit(STATUS_POWER_PMI, &priv->status)); | ||
| 471 | pos += scnprintf(buf + pos, bufsz - pos, "STATUS_FW_ERROR:\t %d\n", | ||
| 472 | test_bit(STATUS_FW_ERROR, &priv->status)); | ||
| 473 | pos += scnprintf(buf + pos, bufsz - pos, "STATUS_MODE_PENDING:\t %d\n", | ||
| 474 | test_bit(STATUS_MODE_PENDING, &priv->status)); | ||
| 475 | return simple_read_from_buffer(user_buf, count, ppos, buf, pos); | ||
| 476 | } | ||
| 477 | |||
| 428 | DEBUGFS_READ_WRITE_FILE_OPS(sram); | 478 | DEBUGFS_READ_WRITE_FILE_OPS(sram); |
| 429 | DEBUGFS_WRITE_FILE_OPS(log_event); | 479 | DEBUGFS_WRITE_FILE_OPS(log_event); |
| 430 | DEBUGFS_READ_FILE_OPS(eeprom); | 480 | DEBUGFS_READ_FILE_OPS(eeprom); |
| @@ -432,6 +482,7 @@ DEBUGFS_READ_FILE_OPS(stations); | |||
| 432 | DEBUGFS_READ_FILE_OPS(rx_statistics); | 482 | DEBUGFS_READ_FILE_OPS(rx_statistics); |
| 433 | DEBUGFS_READ_FILE_OPS(tx_statistics); | 483 | DEBUGFS_READ_FILE_OPS(tx_statistics); |
| 434 | DEBUGFS_READ_FILE_OPS(channels); | 484 | DEBUGFS_READ_FILE_OPS(channels); |
| 485 | DEBUGFS_READ_FILE_OPS(status); | ||
| 435 | 486 | ||
| 436 | /* | 487 | /* |
| 437 | * Create the debugfs files and directories | 488 | * Create the debugfs files and directories |
| @@ -466,7 +517,7 @@ int iwl_dbgfs_register(struct iwl_priv *priv, const char *name) | |||
| 466 | DEBUGFS_ADD_FILE(rx_statistics, data); | 517 | DEBUGFS_ADD_FILE(rx_statistics, data); |
| 467 | DEBUGFS_ADD_FILE(tx_statistics, data); | 518 | DEBUGFS_ADD_FILE(tx_statistics, data); |
| 468 | DEBUGFS_ADD_FILE(channels, data); | 519 | DEBUGFS_ADD_FILE(channels, data); |
| 469 | DEBUGFS_ADD_X32(status, data, (u32 *)&priv->status); | 520 | DEBUGFS_ADD_FILE(status, data); |
| 470 | DEBUGFS_ADD_BOOL(disable_sensitivity, rf, &priv->disable_sens_cal); | 521 | DEBUGFS_ADD_BOOL(disable_sensitivity, rf, &priv->disable_sens_cal); |
| 471 | DEBUGFS_ADD_BOOL(disable_chain_noise, rf, | 522 | DEBUGFS_ADD_BOOL(disable_chain_noise, rf, |
| 472 | &priv->disable_chain_noise_cal); | 523 | &priv->disable_chain_noise_cal); |
| @@ -496,6 +547,7 @@ void iwl_dbgfs_unregister(struct iwl_priv *priv) | |||
| 496 | DEBUGFS_REMOVE(priv->dbgfs->dbgfs_data_files.file_log_event); | 547 | DEBUGFS_REMOVE(priv->dbgfs->dbgfs_data_files.file_log_event); |
| 497 | DEBUGFS_REMOVE(priv->dbgfs->dbgfs_data_files.file_stations); | 548 | DEBUGFS_REMOVE(priv->dbgfs->dbgfs_data_files.file_stations); |
| 498 | DEBUGFS_REMOVE(priv->dbgfs->dbgfs_data_files.file_channels); | 549 | DEBUGFS_REMOVE(priv->dbgfs->dbgfs_data_files.file_channels); |
| 550 | DEBUGFS_REMOVE(priv->dbgfs->dbgfs_data_files.file_status); | ||
| 499 | DEBUGFS_REMOVE(priv->dbgfs->dir_data); | 551 | DEBUGFS_REMOVE(priv->dbgfs->dir_data); |
| 500 | DEBUGFS_REMOVE(priv->dbgfs->dbgfs_rf_files.file_disable_sensitivity); | 552 | DEBUGFS_REMOVE(priv->dbgfs->dbgfs_rf_files.file_disable_sensitivity); |
| 501 | DEBUGFS_REMOVE(priv->dbgfs->dbgfs_rf_files.file_disable_chain_noise); | 553 | DEBUGFS_REMOVE(priv->dbgfs->dbgfs_rf_files.file_disable_chain_noise); |
