summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--package/ar7-atm/patches/170-add-hotplug-status.patch128
1 files changed, 0 insertions, 128 deletions
diff --git a/package/ar7-atm/patches/170-add-hotplug-status.patch b/package/ar7-atm/patches/170-add-hotplug-status.patch
deleted file mode 100644
index 121a1e4c5..000000000
--- a/package/ar7-atm/patches/170-add-hotplug-status.patch
+++ /dev/null
@@ -1,128 +0,0 @@
-diff -urN sangam_atm-D7.03.01.00.orig/tn7dsl.c sangam_atm-D7.03.01.00/tn7dsl.c
---- sangam_atm-D7.03.01.00.orig/tn7dsl.c 2008-01-05 03:11:03.000000000 +0100
-+++ sangam_atm-D7.03.01.00/tn7dsl.c 2008-01-06 18:13:24.000000000 +0000
-@@ -109,6 +109,11 @@
- #include <linux/vmalloc.h>
- #include <linux/file.h>
- #include <linux/firmware.h>
-+#include <linux/skbuff.h>
-+#include <linux/netlink.h>
-+#include <net/sock.h>
-+#include <linux/kobject.h>
-+#include <asm/uaccess.h>
-
- #include <asm/io.h>
- #include <asm/ar7/ar7.h>
-@@ -296,6 +301,8 @@
- /* externs */
- extern struct atm_dev *mydev;
- extern unsigned int oamFarLBCount[4];
-+extern struct sock *uevent_sock;
-+extern u64 uevent_next_seqnum(void);
-
- /* module wide declars */
- static PITIDSLHW_T pIhw;
-@@ -333,6 +340,75 @@
- return 0;
- }
-
-+static inline void add_msg(struct sk_buff *skb, char *msg)
-+{
-+ char *scratch;
-+ scratch = skb_put(skb, strlen(msg) + 1);
-+ sprintf(scratch, msg);
-+}
-+
-+static void hotplug_dsl_status(void)
-+{
-+ struct sk_buff *skb;
-+ size_t len;
-+ char *scratch, *dsl_status;
-+ char buf[128];
-+ u64 seq;
-+
-+ if (!uevent_sock) {
-+ printk("avsar: unable to create netlink socket!\n");
-+ return;
-+ }
-+
-+ switch (pIhw->AppData.bState)
-+ {
-+ case RSTATE_TEST:
-+ dsl_status="TEST";
-+ break;
-+ case RSTATE_IDLE:
-+ dsl_status="IDLE";
-+ break;
-+ case RSTATE_INIT:
-+ dsl_status="INIT";
-+ break;
-+ case RSTATE_HS:
-+ dsl_status="HANDSHAKE";
-+ break;
-+ case RSTATE_RTDL:
-+ dsl_status="RETRAIN";
-+ break;
-+ case RSTATE_SHOWTIME:
-+ dsl_status="SHOWTIME";
-+ break;
-+ default:
-+ dsl_status="UNKNOWN";
-+ }
-+
-+ /* allocate message with the maximum possible size */
-+ len = strlen(dsl_status) +2;
-+ skb = alloc_skb(len + 2048, GFP_KERNEL);
-+ if (!skb)
-+ return;
-+
-+ /* add header */
-+ scratch = skb_put(skb, len);
-+ sprintf(scratch, "%s@",dsl_status);
-+
-+ /* copy keys to our continuous event payload buffer */
-+ add_msg(skb, "HOME=/");
-+ add_msg(skb, "PATH=/sbin:/bin:/usr/sbin:/usr/bin");
-+ add_msg(skb, "SUBSYSTEM=atm");
-+ add_msg(skb, "DEVICENAME=avsar0");
-+ snprintf(buf, 128, "ACTION=%s", dsl_status);
-+ add_msg(skb, buf);
-+ seq = uevent_next_seqnum();
-+ snprintf(buf, 128, "SEQNUM=%llu", (unsigned long long)seq);
-+ add_msg(skb, buf);
-+
-+ NETLINK_CB(skb).dst_group = 1;
-+ netlink_broadcast(uevent_sock, skb, 0, 1, GFP_KERNEL);
-+}
-+
-
- int os_atoi(const char *pStr)
- {
-@@ -2558,7 +2634,7 @@
-
- inline int tn7dsl_handle_interrupt(void)
- {
-- int intsrc;
-+ int intsrc,curState;
- unsigned char cMsgRa[6];
- short margin;
- extern unsigned int def_sar_inter_pace; //Sorry
-@@ -2573,7 +2649,7 @@
-
- if (nohost_flag) return 0;
-
--
-+ curState=pIhw->AppData.bState;
- dslhal_api_handleTrainingInterrupt(pIhw, intsrc);
-
- if(pIhw->lConnected == TC_SYNC)
-@@ -2704,8 +2780,8 @@
- }
-
- #endif
--
- }
-+ if(pIhw->AppData.bState != curState) hotplug_dsl_status();
-
- //UR8_MERGE_START CQ10442 Manjula K
- if (pIhw->AppData.SRA)