1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- --- a/tn7dsl.c
- +++ b/tn7dsl.c
- @@ -197,7 +197,7 @@ led_reg_t ledreg[2];
- static struct led_funcs ledreg[2];
- #endif
-
- -#define DEV_DSLMOD CTL_UNNUMBERED
- +#define DEV_DSLMOD 0
- #define MAX_STR_SIZE 256
- #define DSL_MOD_SIZE 256
-
- @@ -333,8 +333,8 @@ static void tn7dsl_chng_modulation(void*
- static unsigned int tn7dsl_set_modulation(void* data, int flag);
- static void tn7dsl_ctrl_fineGain(int value);
- static void tn7dsl_set_fineGainValue(int value);
- -static int dslmod_sysctl (ctl_table * ctl, int write, struct file *filp,
- - void *buffer, size_t * lenp);
- +static int dslmod_sysctl (ctl_table * ctl, int write, void *buffer,
- + size_t * lenp, loff_t *ppos);
- static void tn7dsl_register_dslss_led(void);
- void tn7dsl_dslmod_sysctl_register(void);
- void tn7dsl_dslmod_sysctl_unregister(void);
- @@ -3398,8 +3398,8 @@ unsigned int tn7dsl_get_memory(unsigned
-
-
-
- -static int dslmod_sysctl(ctl_table *ctl, int write, struct file * filp,
- - void *buffer, size_t *lenp)
- +static int dslmod_sysctl(ctl_table *ctl, int write, void *buffer,
- + size_t *lenp, loff_t *ppos)
- {
- char *ptr;
- int ret, len = 0;
- @@ -3411,7 +3411,7 @@ static int dslmod_sysctl(ctl_table *ctl,
- char mod_req[16] = { '\t' };
- char fst_byt;
-
- - if (!*lenp || (filp->f_pos && !write))
- + if (!*lenp || (*ppos && !write))
- {
- *lenp = 0;
- return 0;
- @@ -3421,9 +3421,9 @@ static int dslmod_sysctl(ctl_table *ctl,
- */
- if(write)
- {
- - ret = proc_dostring(ctl, write, filp, buffer, lenp, 0);
- + ret = proc_dostring(ctl, write, buffer, lenp, ppos);
-
- - switch (ctl->ctl_name)
- + switch ((long)ctl->extra2)
- {
- case DEV_DSLMOD:
- ptr = strpbrk(info, " \t");
- @@ -3507,14 +3507,21 @@ static int dslmod_sysctl(ctl_table *ctl,
- else
- {
- len += sprintf(info+len, mod_req);
- - ret = proc_dostring(ctl, write, filp, buffer, lenp, 0);
- + ret = proc_dostring(ctl, write, buffer, lenp, ppos);
- }
- return ret;
- }
-
-
- ctl_table dslmod_table[] = {
- - {DEV_DSLMOD, "dslmod", info, DSL_MOD_SIZE, 0644, NULL, NULL, &dslmod_sysctl, &sysctl_string}
- + {
- + .procname = "dslmod",
- + .data = info,
- + .maxlen = DSL_MOD_SIZE,
- + .mode = 0644,
- + .proc_handler = &dslmod_sysctl,
- + .extra2 = (void *)DEV_DSLMOD,
- + }
- ,
- {0}
- };
- @@ -3522,7 +3529,12 @@ ctl_table dslmod_table[] = {
- /* Make sure that /proc/sys/dev is there */
- ctl_table dslmod_root_table[] = {
- #ifdef CONFIG_PROC_FS
- - {CTL_DEV, "dev", NULL, 0, 0555, dslmod_table}
- + {
- + .procname = "dev",
- + .maxlen = 0,
- + .mode = 0555,
- + .child = dslmod_table,
- + }
- ,
- #endif /* CONFIG_PROC_FS */
- {0}
|