summaryrefslogtreecommitdiffstats
path: root/package/kernel/lantiq/ltq-vdsl/patches/100-compat.patch
blob: a8ce61fa36c69c18e36536f3e0713f348beb147c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -117,7 +117,7 @@ POST_UNINSTALL = :
 
 # the headerfile of linux kernels 2.6.x contain to much arithmetic
 # with void pointers (which is allowed for gcc!)
-@KERNEL_2_6_FALSE@am__append_6 = -Wpointer-arith
+@KERNEL_2_6_FALSE@am__append_6 =
 subdir = src
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/configure.in
--- a/src/common/drv_dsl_cpe_os_linux.c
+++ b/src/common/drv_dsl_cpe_os_linux.c
@@ -11,6 +11,7 @@
 
 #define DSL_INTERN
 
+#include <linux/device.h>
 #include "drv_dsl_cpe_api.h"
 #include "drv_dsl_cpe_api_ioctl.h"
 
@@ -249,14 +250,7 @@ static DSL_long_t DSL_DRV_Ioctls(DSL_DRV
    }
 
 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36))
-   if (pFile->f_dentry != DSL_NULL)
-   {
-      pINode = pFile->f_dentry->d_inode;
-   }
-   else
-   {
-      pINode = DSL_NULL;
-   }
+   pINode = file_inode(pFile);
 #endif
 
    if (pINode == DSL_NULL)
@@ -1203,6 +1197,9 @@ static void DSL_DRV_NlSendMsg(DSL_char_t
 }
 #endif
 
+static struct class *dsl_class;
+static dev_t dsl_devt;
+
 /* Entry point of driver */
 int __init DSL_ModuleInit(void)
 {
@@ -1241,6 +1238,10 @@ int __init DSL_ModuleInit(void)
 
    DSL_DRV_DevNodeInit();
 
+   dsl_class = class_create(THIS_MODULE, "dsl_cpe_api0");
+   dsl_devt = MKDEV(DRV_DSL_CPE_API_DEV_MAJOR, 0);
+   device_create(dsl_class, NULL, dsl_devt, NULL, "dsl_cpe_api0");
+
    return 0;
 }
 
@@ -1248,6 +1249,11 @@ void __exit DSL_ModuleCleanup(void)
 {
    printk("Module will be unloaded"DSL_DRV_CRLF);
 
+   device_destroy(dsl_class, dsl_devt);
+   dsl_devt = NULL;
+   class_destroy(dsl_class);
+   dsl_class = NULL;
+
    unregister_chrdev(nMajorNum, DRV_DSL_CPE_API_DEV_NAME);
    
    DSL_DRV_Cleanup();
--- a/src/device/drv_dsl_cpe_device_vrx.c
+++ b/src/device/drv_dsl_cpe_device_vrx.c
@@ -5337,6 +5337,7 @@ DSL_Error_t DSL_DRV_DEV_HybridTypeGet(
 #undef DSL_DBG_BLOCK
 #define DSL_DBG_BLOCK DSL_DBG_NOTIFICATIONS
 
+#if 0
 DSL_Error_t DSL_DRV_DEV_MeiTcLayerSignaling
 (
    DSL_Context_t *pContext,
@@ -5384,6 +5385,15 @@ DSL_Error_t DSL_DRV_DEV_MeiTcLayerSignal
 
    return nErrCode;
 }
+#else
+DSL_Error_t DSL_DRV_DEV_MeiTcLayerSignaling
+(
+   DSL_Context_t *pContext,
+   DSL_TcLayerSelection_t nTcLayer)
+{
+   return DSL_SUCCESS;
+}
+#endif
 
 DSL_Error_t DSL_DRV_DEV_MeiShowtimeSignaling
 (