mirror of
https://github.com/LibreELEC/LibreELEC.tv
synced 2025-09-24 19:46:01 +07:00
286 lines
8.7 KiB
Diff
286 lines
8.7 KiB
Diff
From 0bb2e327dd12e44fbd67ff169217fa1f7f0c609b Mon Sep 17 00:00:00 2001
|
|
From: kolasa <kkolasa@winsoft.pl>
|
|
Date: Sun, 12 May 2013 21:21:46 +0200
|
|
Subject: [PATCH] switching to proc_create ( /proc for read/write is not yet
|
|
usable )
|
|
|
|
---
|
|
.../os_dep/linux/os_intfs.c | 105 ++++++++++++++++++++-
|
|
1 file changed, 100 insertions(+), 5 deletions(-)
|
|
|
|
diff --git a/os_dep/linux/os_intfs.c b/os_dep/linux/os_intfs.c
|
|
index 4d057a6..17f46f6 100644
|
|
--- a/os_dep/linux/os_intfs.c
|
|
+++ b/os_dep/linux/os_intfs.c
|
|
@@ -275,14 +275,22 @@ void rtw_proc_init_one(struct net_device *dev)
|
|
#if(LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24))
|
|
rtw_proc=create_proc_entry(rtw_proc_name, S_IFDIR, proc_net);
|
|
#else
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
rtw_proc=create_proc_entry(rtw_proc_name, S_IFDIR, init_net.proc_net);
|
|
+#else
|
|
+ rtw_proc=proc_mkdir(rtw_proc_name, init_net.proc_net);
|
|
+#endif
|
|
#endif
|
|
if (rtw_proc == NULL) {
|
|
DBG_8192C(KERN_ERR "Unable to create rtw_proc directory\n");
|
|
return;
|
|
}
|
|
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
entry = create_proc_read_entry("ver_info", S_IFREG | S_IRUGO, rtw_proc, proc_get_drv_version, dev);
|
|
+#else
|
|
+ entry = proc_create_data("ver_info", S_IFREG | S_IRUGO, rtw_proc, proc_get_drv_version, dev);
|
|
+#endif
|
|
if (!entry) {
|
|
DBG_871X("Unable to create_proc_read_entry!\n");
|
|
return;
|
|
@@ -293,10 +301,13 @@ void rtw_proc_init_one(struct net_device *dev)
|
|
|
|
if(padapter->dir_dev == NULL)
|
|
{
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
padapter->dir_dev = create_proc_entry(dev->name,
|
|
S_IFDIR | S_IRUGO | S_IXUGO,
|
|
rtw_proc);
|
|
-
|
|
+#else
|
|
+ padapter->dir_dev = proc_mkdir(dev->name,rtw_proc);
|
|
+#endif
|
|
dir_dev = padapter->dir_dev;
|
|
|
|
if(dir_dev==NULL)
|
|
@@ -324,84 +335,136 @@ void rtw_proc_init_one(struct net_device *dev)
|
|
|
|
rtw_proc_cnt++;
|
|
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
entry = create_proc_read_entry("write_reg", S_IFREG | S_IRUGO,
|
|
dir_dev, proc_get_write_reg, dev);
|
|
+#else
|
|
+ entry = proc_create_data("write_reg", S_IFREG | S_IRUGO,
|
|
+ dir_dev, proc_get_write_reg, dev);
|
|
+#endif
|
|
if (!entry) {
|
|
DBG_871X("Unable to create_proc_read_entry!\n");
|
|
return;
|
|
}
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
entry->write_proc = proc_set_write_reg;
|
|
|
|
entry = create_proc_read_entry("read_reg", S_IFREG | S_IRUGO,
|
|
dir_dev, proc_get_read_reg, dev);
|
|
+#else
|
|
+ entry = proc_create_data("read_reg", S_IFREG | S_IRUGO,
|
|
+ dir_dev, proc_get_read_reg, dev);
|
|
+#endif
|
|
if (!entry) {
|
|
DBG_871X("Unable to create_proc_read_entry!\n");
|
|
return;
|
|
}
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
entry->write_proc = proc_set_read_reg;
|
|
|
|
-
|
|
entry = create_proc_read_entry("fwstate", S_IFREG | S_IRUGO,
|
|
dir_dev, proc_get_fwstate, dev);
|
|
+#else
|
|
+ entry = proc_create_data("fwstate", S_IFREG | S_IRUGO,
|
|
+ dir_dev, proc_get_fwstate, dev);
|
|
+#endif
|
|
if (!entry) {
|
|
DBG_871X("Unable to create_proc_read_entry!\n");
|
|
return;
|
|
}
|
|
|
|
-
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
entry = create_proc_read_entry("sec_info", S_IFREG | S_IRUGO,
|
|
dir_dev, proc_get_sec_info, dev);
|
|
+#else
|
|
+ entry = proc_create_data("sec_info", S_IFREG | S_IRUGO,
|
|
+ dir_dev, proc_get_sec_info, dev);
|
|
+#endif
|
|
if (!entry) {
|
|
DBG_871X("Unable to create_proc_read_entry!\n");
|
|
return;
|
|
}
|
|
|
|
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
entry = create_proc_read_entry("mlmext_state", S_IFREG | S_IRUGO,
|
|
dir_dev, proc_get_mlmext_state, dev);
|
|
+#else
|
|
+ entry = proc_create_data("mlmext_state", S_IFREG | S_IRUGO,
|
|
+ dir_dev, proc_get_mlmext_state, dev);
|
|
+#endif
|
|
if (!entry) {
|
|
DBG_871X("Unable to create_proc_read_entry!\n");
|
|
return;
|
|
}
|
|
|
|
-
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
entry = create_proc_read_entry("qos_option", S_IFREG | S_IRUGO,
|
|
dir_dev, proc_get_qos_option, dev);
|
|
+#else
|
|
+ entry = proc_create_data("qos_option", S_IFREG | S_IRUGO,
|
|
+ dir_dev, proc_get_qos_option, dev);
|
|
+#endif
|
|
if (!entry) {
|
|
DBG_871X("Unable to create_proc_read_entry!\n");
|
|
return;
|
|
}
|
|
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
entry = create_proc_read_entry("ht_option", S_IFREG | S_IRUGO,
|
|
dir_dev, proc_get_ht_option, dev);
|
|
+#else
|
|
+ entry = proc_create_data("ht_option", S_IFREG | S_IRUGO,
|
|
+ dir_dev, proc_get_ht_option, dev);
|
|
+#endif
|
|
if (!entry) {
|
|
DBG_871X("Unable to create_proc_read_entry!\n");
|
|
return;
|
|
}
|
|
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
entry = create_proc_read_entry("rf_info", S_IFREG | S_IRUGO,
|
|
dir_dev, proc_get_rf_info, dev);
|
|
+#else
|
|
+ entry = proc_create_data("rf_info", S_IFREG | S_IRUGO,
|
|
+ dir_dev, proc_get_rf_info, dev);
|
|
+#endif
|
|
if (!entry) {
|
|
DBG_871X("Unable to create_proc_read_entry!\n");
|
|
return;
|
|
}
|
|
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
entry = create_proc_read_entry("ap_info", S_IFREG | S_IRUGO,
|
|
dir_dev, proc_get_ap_info, dev);
|
|
+#else
|
|
+ entry = proc_create_data("ap_info", S_IFREG | S_IRUGO,
|
|
+ dir_dev, proc_get_ap_info, dev);
|
|
+#endif
|
|
if (!entry) {
|
|
DBG_871X("Unable to create_proc_read_entry!\n");
|
|
return;
|
|
}
|
|
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
entry = create_proc_read_entry("adapter_state", S_IFREG | S_IRUGO,
|
|
dir_dev, proc_get_adapter_state, dev);
|
|
+#else
|
|
+ entry = proc_create_data("adapter_state", S_IFREG | S_IRUGO,
|
|
+ dir_dev, proc_get_adapter_state, dev);
|
|
+#endif
|
|
if (!entry) {
|
|
DBG_871X("Unable to create_proc_read_entry!\n");
|
|
return;
|
|
}
|
|
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
entry = create_proc_read_entry("trx_info", S_IFREG | S_IRUGO,
|
|
dir_dev, proc_get_trx_info, dev);
|
|
+#else
|
|
+ entry = proc_create_data("trx_info", S_IFREG | S_IRUGO,
|
|
+ dir_dev, proc_get_trx_info, dev);
|
|
+#endif
|
|
if (!entry) {
|
|
DBG_871X("Unable to create_proc_read_entry!\n");
|
|
return;
|
|
@@ -409,8 +472,13 @@ void rtw_proc_init_one(struct net_device *dev)
|
|
|
|
#ifdef CONFIG_AP_MODE
|
|
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
entry = create_proc_read_entry("all_sta_info", S_IFREG | S_IRUGO,
|
|
dir_dev, proc_get_all_sta_info, dev);
|
|
+#else
|
|
+ entry = proc_create_data("all_sta_info", S_IFREG | S_IRUGO,
|
|
+ dir_dev, proc_get_all_sta_info, dev);
|
|
+#endif
|
|
if (!entry) {
|
|
DBG_871X("Unable to create_proc_read_entry!\n");
|
|
return;
|
|
@@ -418,8 +486,13 @@ void rtw_proc_init_one(struct net_device *dev)
|
|
#endif
|
|
|
|
#ifdef DBG_MEMORY_LEAK
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
entry = create_proc_read_entry("_malloc_cnt", S_IFREG | S_IRUGO,
|
|
dir_dev, proc_get_malloc_cnt, dev);
|
|
+#else
|
|
+ entry = proc_create_data("_malloc_cnt", S_IFREG | S_IRUGO,
|
|
+ dir_dev, proc_get_malloc_cnt, dev);
|
|
+#endif
|
|
if (!entry) {
|
|
DBG_871X("Unable to create_proc_read_entry!\n");
|
|
return;
|
|
@@ -427,38 +500,60 @@ void rtw_proc_init_one(struct net_device *dev)
|
|
#endif
|
|
|
|
#ifdef CONFIG_FIND_BEST_CHANNEL
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
entry = create_proc_read_entry("best_channel", S_IFREG | S_IRUGO,
|
|
dir_dev, proc_get_best_channel, dev);
|
|
+#else
|
|
+ entry = proc_create_data("best_channel", S_IFREG | S_IRUGO,
|
|
+ dir_dev, proc_get_best_channel, dev);
|
|
+#endif
|
|
if (!entry) {
|
|
DBG_871X("Unable to create_proc_read_entry!\n");
|
|
return;
|
|
}
|
|
#endif
|
|
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
entry = create_proc_read_entry("rx_signal", S_IFREG | S_IRUGO,
|
|
dir_dev, proc_get_rx_signal, dev);
|
|
+#else
|
|
+ entry = proc_create_data("rx_signal", S_IFREG | S_IRUGO,
|
|
+ dir_dev, proc_get_rx_signal, dev);
|
|
+#endif
|
|
if (!entry) {
|
|
DBG_871X("Unable to create_proc_read_entry!\n");
|
|
return;
|
|
}
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
entry->write_proc = proc_set_rx_signal;
|
|
|
|
entry = create_proc_read_entry("ampdu_enable", S_IFREG | S_IRUGO,
|
|
dir_dev, proc_get_ampdu_enable, dev);
|
|
+#else
|
|
+ entry = proc_create_data("ampdu_enable", S_IFREG | S_IRUGO,
|
|
+ dir_dev, proc_get_ampdu_enable, dev);
|
|
+#endif
|
|
if (!entry) {
|
|
DBG_871X("Unable to create_proc_read_entry!\n");
|
|
return;
|
|
}
|
|
+
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
entry->write_proc = proc_set_ampdu_enable;
|
|
|
|
entry = create_proc_read_entry("rssi_disp", S_IFREG | S_IRUGO,
|
|
dir_dev, proc_get_rssi_disp, dev);
|
|
+#else
|
|
+ entry = proc_create_data("rssi_disp", S_IFREG | S_IRUGO,
|
|
+ dir_dev, proc_get_rssi_disp, dev);
|
|
+#endif
|
|
if (!entry) {
|
|
DBG_871X("Unable to create_proc_read_entry!\n");
|
|
return;
|
|
}
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
|
|
entry->write_proc = proc_set_rssi_disp;
|
|
-
|
|
+#endif
|
|
}
|
|
|
|
void rtw_proc_remove_one(struct net_device *dev)
|
|
--
|
|
1.8.1.6
|
|
|