I think this is because the module doesn't compile with 2.6.31, I get this:
michael@michi-sl300:~/linux-kram/lenovo-sl-laptop$ LC_ALL=C make
make -C /lib/modules/2.6.31-2-generic/build M=/home/michael/linux-kram/lenovo-sl-laptop modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.31-2-generic'
CC [M] /home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.o
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c: In function 'bluetooth_get_radiosw':
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:227: error: 'RFKILL_STATE_HARD_BLOCKED' undeclared (first use in this function)
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:227: error: (Each undeclared identifier is reported only once
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:227: error: for each function it appears in.)
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:233: error: 'RFKILL_STATE_UNBLOCKED' undeclared (first use in this function)
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:233: error: 'RFKILL_STATE_SOFT_BLOCKED' undeclared (first use in this function)
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c: In function 'bluetooth_update_rfk':
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:246: error: implicit declaration of function 'rfkill_force_state'
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c: In function 'bluetooth_enable_show':
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:291: error: 'RFKILL_STATE_UNBLOCKED' undeclared (first use in this function)
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c: At top level:
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:322: warning: 'enum rfkill_state' declared inside parameter list
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:322: warning: its scope is only this definition or declaration, which is probably not what you want
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c: In function 'bluetooth_rfk_get':
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:329: error: dereferencing pointer to incomplete type
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c: At top level:
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:333: warning: 'enum rfkill_state' declared inside parameter list
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:333: error: parameter 2 ('state') has incomplete type
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c: In function 'bluetooth_rfk_set':
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:335: error: 'RFKILL_STATE_UNBLOCKED' undeclared (first use in this function)
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c: At top level:
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:342: warning: 'enum rfkill_state' declared inside parameter list
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:343: warning: 'enum rfkill_state' declared inside parameter list
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c: In function 'lensl_new_rfkill':
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:346: error: storage size of 'initial_state' isn't known
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:348: error: implicit declaration of function 'rfkill_allocate'
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:348: warning: assignment makes pointer from integer without a cast
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:355: error: dereferencing pointer to incomplete type
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:356: error: dereferencing pointer to incomplete type
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:357: error: dereferencing pointer to incomplete type
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:360: error: dereferencing pointer to incomplete type
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:367: error: implicit declaration of function 'rfkill_free'
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:346: warning: unused variable 'initial_state'
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c: In function 'bluetooth_init':
/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.c:410: warning: passing argument 6 of 'lensl_new_rfkill' from incompatible pointer type
make[2]: *** [/home/michael/linux-kram/lenovo-sl-laptop/lenovo-sl-laptop.o] Error 1
make[1]: *** [_module_/home/michael/linux-kram/lenovo-sl-laptop] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.31-2-generic'
make: *** [all] Error 2
I think this is because the module doesn't compile with 2.6.31, I get this:
michael@ michi-sl300: ~/linux- kram/lenovo- sl-laptop$ LC_ALL=C make 2.6.31- 2-generic/ build M=/home/ michael/ linux-kram/ lenovo- sl-laptop modules linux-headers- 2.6.31- 2-generic' linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. o linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c: In function 'bluetooth_ get_radiosw' : linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:227: error: 'RFKILL_ STATE_HARD_ BLOCKED' undeclared (first use in this function) linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:227: error: (Each undeclared identifier is reported only once linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:227: error: for each function it appears in.) linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:233: error: 'RFKILL_ STATE_UNBLOCKED ' undeclared (first use in this function) linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:233: error: 'RFKILL_ STATE_SOFT_ BLOCKED' undeclared (first use in this function) linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c: In function 'bluetooth_ update_ rfk': linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:246: error: implicit declaration of function 'rfkill_ force_state' linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c: In function 'bluetooth_ enable_ show': linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:291: error: 'RFKILL_ STATE_UNBLOCKED ' undeclared (first use in this function) linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c: At top level: linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:322: warning: 'enum rfkill_state' declared inside parameter list linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:322: warning: its scope is only this definition or declaration, which is probably not what you want linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c: In function 'bluetooth_ rfk_get' : linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:329: error: dereferencing pointer to incomplete type linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c: At top level: linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:333: warning: 'enum rfkill_state' declared inside parameter list linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:333: error: parameter 2 ('state') has incomplete type linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c: In function 'bluetooth_ rfk_set' : linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:335: error: 'RFKILL_ STATE_UNBLOCKED ' undeclared (first use in this function) linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c: At top level: linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:342: warning: 'enum rfkill_state' declared inside parameter list linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:343: warning: 'enum rfkill_state' declared inside parameter list linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c: In function 'lensl_new_rfkill': linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:346: error: storage size of 'initial_state' isn't known linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:348: error: implicit declaration of function 'rfkill_allocate' linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:348: warning: assignment makes pointer from integer without a cast linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:355: error: dereferencing pointer to incomplete type linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:356: error: dereferencing pointer to incomplete type linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:357: error: dereferencing pointer to incomplete type linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:360: error: dereferencing pointer to incomplete type linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:367: error: implicit declaration of function 'rfkill_free' linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:346: warning: unused variable 'initial_state' linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c: In function 'bluetooth_init': linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. c:410: warning: passing argument 6 of 'lensl_new_rfkill' from incompatible pointer type michael/ linux-kram/ lenovo- sl-laptop/ lenovo- sl-laptop. o] Error 1 /home/michael/ linux-kram/ lenovo- sl-laptop] Error 2 linux-headers- 2.6.31- 2-generic'
make -C /lib/modules/
make[1]: Entering directory `/usr/src/
CC [M] /home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
/home/michael/
make[2]: *** [/home/
make[1]: *** [_module_
make[1]: Leaving directory `/usr/src/
make: *** [all] Error 2
Does anyone know how to fix this?