Index: sangam_atm-D7.05.01.00/tn7dsl.c
===================================================================
---- sangam_atm-D7.05.01.00.orig/tn7dsl.c 2010-03-07 18:19:09.000000000 +0100
-+++ sangam_atm-D7.05.01.00/tn7dsl.c 2010-03-07 18:19:12.000000000 +0100
-@@ -3615,8 +3615,11 @@
+--- sangam_atm-D7.05.01.00.orig/tn7dsl.c 2010-11-09 18:32:33.478706990 +0100
++++ sangam_atm-D7.05.01.00/tn7dsl.c 2010-11-09 18:32:33.488706997 +0100
+@@ -215,7 +215,11 @@
+ static struct led_funcs ledreg[2];
+ #endif
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33)
+ #define DEV_DSLMOD CTL_UNNUMBERED
++#else
++#define DEV_DSLMOD 0
++#endif
+ #define MAX_STR_SIZE 256
+ #define DSL_MOD_SIZE 256
+
+@@ -3615,9 +3619,16 @@
*/
if(write)
{
+#else
+ ret = proc_dostring(ctl, write, buffer, lenp, 0);
+#endif
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33)
switch (ctl->ctl_name)
++#else
++ switch ((long)ctl->extra2)
++#endif
{
case DEV_DSLMOD:
-@@ -3701,7 +3704,11 @@
+ ptr = strpbrk(info, " \t");
+@@ -3701,14 +3712,29 @@
else
{
len += sprintf(info+len, mod_req);
}
return ret;
}
+
+
+ ctl_table dslmod_table[] = {
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33)
+ {DEV_DSLMOD, "dslmod", info, DSL_MOD_SIZE, 0644, NULL, NULL, &dslmod_sysctl, &sysctl_string}
++#else
++ {
++ .procname = "dslmod",
++ .data = info,
++ .maxlen = DSL_MOD_SIZE,
++ .mode = 0644,
++ .proc_handler = &dslmod_sysctl,
++ .extra2 = (void *)DEV_DSLMOD,
++ }
++#endif
+ ,
+ {0}
+ };
+@@ -3716,7 +3742,16 @@
+ /* Make sure that /proc/sys/dev is there */
+ ctl_table dslmod_root_table[] = {
+ #ifdef CONFIG_PROC_FS
++ #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33)
+ {CTL_DEV, "dev", NULL, 0, 0555, dslmod_table}
++ #else
++ {
++ .procname = "dev",
++ .maxlen = 0,
++ .mode = 0555,
++ .child = dslmod_table,
++ }
++ #endif
+ ,
+ #endif /* CONFIG_PROC_FS */
+ {0}