提交 93b7654e 编写于 作者: S Stanislaw Gruszka 提交者: John W. Linville

iwlegacy: move debugfs_ops to il_priv

Signed-off-by: NStanislaw Gruszka <sgruszka@redhat.com>
Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
上级 3dfea27d
...@@ -503,3 +503,9 @@ il3945_ucode_general_stats_read(struct file *file, char __user *user_buf, ...@@ -503,3 +503,9 @@ il3945_ucode_general_stats_read(struct file *file, char __user *user_buf,
kfree(buf); kfree(buf);
return ret; return ret;
} }
const struct il_debugfs_ops il3945_debugfs_ops = {
.rx_stats_read = il3945_ucode_rx_stats_read,
.tx_stats_read = il3945_ucode_tx_stats_read,
.general_stats_read = il3945_ucode_general_stats_read,
};
...@@ -3619,6 +3619,9 @@ il3945_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent) ...@@ -3619,6 +3619,9 @@ il3945_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
D_INFO("*** LOAD DRIVER ***\n"); D_INFO("*** LOAD DRIVER ***\n");
il->cfg = cfg; il->cfg = cfg;
il->ops = &il3945_ops; il->ops = &il3945_ops;
#ifdef CONFIG_IWLEGACY_DEBUGFS
il->debugfs_ops = &il3945_debugfs_ops;
#endif
il->pci_dev = pdev; il->pci_dev = pdev;
il->inta_mask = CSR_INI_SET_MASK; il->inta_mask = CSR_INI_SET_MASK;
......
...@@ -2651,14 +2651,6 @@ static struct il_lib_ops il3945_lib = { ...@@ -2651,14 +2651,6 @@ static struct il_lib_ops il3945_lib = {
}, },
.send_tx_power = il3945_send_tx_power, .send_tx_power = il3945_send_tx_power,
.is_valid_rtc_data_addr = il3945_hw_valid_rtc_data_addr, .is_valid_rtc_data_addr = il3945_hw_valid_rtc_data_addr,
#ifdef CONFIG_IWLEGACY_DEBUGFS
.debugfs_ops = {
.rx_stats_read = il3945_ucode_rx_stats_read,
.tx_stats_read = il3945_ucode_tx_stats_read,
.general_stats_read = il3945_ucode_general_stats_read,
},
#endif
}; };
static const struct il_legacy_ops il3945_legacy_ops = { static const struct il_legacy_ops il3945_legacy_ops = {
......
...@@ -595,13 +595,7 @@ struct il3945_tfd { ...@@ -595,13 +595,7 @@ struct il3945_tfd {
} __packed; } __packed;
#ifdef CONFIG_IWLEGACY_DEBUGFS #ifdef CONFIG_IWLEGACY_DEBUGFS
ssize_t il3945_ucode_rx_stats_read(struct file *file, char __user *user_buf, extern const struct il_debugfs_ops il3945_debugfs_ops;
size_t count, loff_t *ppos);
ssize_t il3945_ucode_tx_stats_read(struct file *file, char __user *user_buf,
size_t count, loff_t *ppos);
ssize_t il3945_ucode_general_stats_read(struct file *file,
char __user *user_buf, size_t count,
loff_t *ppos);
#endif #endif
#endif #endif
...@@ -744,3 +744,9 @@ il4965_ucode_general_stats_read(struct file *file, char __user *user_buf, ...@@ -744,3 +744,9 @@ il4965_ucode_general_stats_read(struct file *file, char __user *user_buf,
kfree(buf); kfree(buf);
return ret; return ret;
} }
const struct il_debugfs_ops il4965_debugfs_ops = {
.rx_stats_read = il4965_ucode_rx_stats_read,
.tx_stats_read = il4965_ucode_tx_stats_read,
.general_stats_read = il4965_ucode_general_stats_read,
};
...@@ -6483,6 +6483,9 @@ il4965_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent) ...@@ -6483,6 +6483,9 @@ il4965_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
D_INFO("*** LOAD DRIVER ***\n"); D_INFO("*** LOAD DRIVER ***\n");
il->cfg = cfg; il->cfg = cfg;
il->ops = &il4965_ops; il->ops = &il4965_ops;
#ifdef CONFIG_IWLEGACY_DEBUGFS
il->debugfs_ops = &il4965_debugfs_ops;
#endif
il->pci_dev = pdev; il->pci_dev = pdev;
il->inta_mask = CSR_INI_SET_MASK; il->inta_mask = CSR_INI_SET_MASK;
......
...@@ -1913,13 +1913,6 @@ static struct il_lib_ops il4965_lib = { ...@@ -1913,13 +1913,6 @@ static struct il_lib_ops il4965_lib = {
.temp_ops = { .temp_ops = {
.temperature = il4965_temperature_calib, .temperature = il4965_temperature_calib,
}, },
#ifdef CONFIG_IWLEGACY_DEBUGFS
.debugfs_ops = {
.rx_stats_read = il4965_ucode_rx_stats_read,
.tx_stats_read = il4965_ucode_tx_stats_read,
.general_stats_read = il4965_ucode_general_stats_read,
},
#endif
}; };
static const struct il_legacy_ops il4965_legacy_ops = { static const struct il_legacy_ops il4965_legacy_ops = {
......
...@@ -928,13 +928,7 @@ void il4965_calib_free_results(struct il_priv *il); ...@@ -928,13 +928,7 @@ void il4965_calib_free_results(struct il_priv *il);
/* Debug */ /* Debug */
#ifdef CONFIG_IWLEGACY_DEBUGFS #ifdef CONFIG_IWLEGACY_DEBUGFS
ssize_t il4965_ucode_rx_stats_read(struct file *file, char __user *user_buf, extern const struct il_debugfs_ops il4965_debugfs_ops;
size_t count, loff_t *ppos);
ssize_t il4965_ucode_tx_stats_read(struct file *file, char __user *user_buf,
size_t count, loff_t *ppos);
ssize_t il4965_ucode_general_stats_read(struct file *file,
char __user *user_buf, size_t count,
loff_t *ppos);
#endif #endif
/****************************/ /****************************/
......
...@@ -1155,13 +1155,15 @@ struct il_power_mgr { ...@@ -1155,13 +1155,15 @@ struct il_power_mgr {
}; };
struct il_priv { struct il_priv {
/* ieee device used by generic ieee processing code */
struct ieee80211_hw *hw; struct ieee80211_hw *hw;
struct ieee80211_channel *ieee_channels; struct ieee80211_channel *ieee_channels;
struct ieee80211_rate *ieee_rates; struct ieee80211_rate *ieee_rates;
struct il_cfg *cfg; struct il_cfg *cfg;
const struct il_ops *ops; const struct il_ops *ops;
#ifdef CONFIG_IWLEGACY_DEBUGFS
const struct il_debugfs_ops *debugfs_ops;
#endif
/* temporary frame storage list */ /* temporary frame storage list */
struct list_head free_frames; struct list_head free_frames;
...@@ -1624,10 +1626,6 @@ struct il_lib_ops { ...@@ -1624,10 +1626,6 @@ struct il_lib_ops {
/* temperature */ /* temperature */
struct il_temp_ops temp_ops; struct il_temp_ops temp_ops;
#ifdef CONFIG_IWLEGACY_DEBUGFS
struct il_debugfs_ops debugfs_ops;
#endif
}; };
struct il_led_ops { struct il_led_ops {
......
...@@ -901,7 +901,8 @@ il_dbgfs_ucode_rx_stats_read(struct file *file, char __user *user_buf, ...@@ -901,7 +901,8 @@ il_dbgfs_ucode_rx_stats_read(struct file *file, char __user *user_buf,
size_t count, loff_t *ppos) size_t count, loff_t *ppos)
{ {
struct il_priv *il = file->private_data; struct il_priv *il = file->private_data;
return il->ops->lib->debugfs_ops.rx_stats_read(file, user_buf, count, ppos);
return il->debugfs_ops->rx_stats_read(file, user_buf, count, ppos);
} }
static ssize_t static ssize_t
...@@ -909,7 +910,8 @@ il_dbgfs_ucode_tx_stats_read(struct file *file, char __user *user_buf, ...@@ -909,7 +910,8 @@ il_dbgfs_ucode_tx_stats_read(struct file *file, char __user *user_buf,
size_t count, loff_t *ppos) size_t count, loff_t *ppos)
{ {
struct il_priv *il = file->private_data; struct il_priv *il = file->private_data;
return il->ops->lib->debugfs_ops.tx_stats_read(file, user_buf, count, ppos);
return il->debugfs_ops->tx_stats_read(file, user_buf, count, ppos);
} }
static ssize_t static ssize_t
...@@ -917,7 +919,8 @@ il_dbgfs_ucode_general_stats_read(struct file *file, char __user *user_buf, ...@@ -917,7 +919,8 @@ il_dbgfs_ucode_general_stats_read(struct file *file, char __user *user_buf,
size_t count, loff_t *ppos) size_t count, loff_t *ppos)
{ {
struct il_priv *il = file->private_data; struct il_priv *il = file->private_data;
return il->ops->lib->debugfs_ops.general_stats_read(file, user_buf, count, ppos);
return il->debugfs_ops->general_stats_read(file, user_buf, count, ppos);
} }
static ssize_t static ssize_t
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册