diff -urN a/wis-go7007-linux-0.9.8/kernel/go7007-driver.c b/wis-go7007-linux-0.9.8/kernel/go7007-driver.c --- a/wis-go7007-linux-0.9.8/kernel/go7007-driver.c 2006-12-17 12:55:44.000000000 -0400 +++ b/wis-go7007-linux-0.9.8/kernel/go7007-driver.c 2006-12-17 12:56:09.000000000 -0400 @@ -18,7 +18,9 @@ #include #include #include +#if LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,17) #include +#endif #include #include #include diff -urN a/wis-go7007-linux-0.9.8/kernel/go7007-fw.c b/wis-go7007-linux-0.9.8/kernel/go7007-fw.c --- a/wis-go7007-linux-0.9.8/kernel/go7007-fw.c 2006-12-17 12:55:44.000000000 -0400 +++ b/wis-go7007-linux-0.9.8/kernel/go7007-fw.c 2006-12-17 12:56:09.000000000 -0400 @@ -26,7 +26,10 @@ #include #include +#include +#if LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,17) #include +#endif #include #include #include diff -urN a/wis-go7007-linux-0.9.8/kernel/go7007-i2c.c b/wis-go7007-linux-0.9.8/kernel/go7007-i2c.c --- a/wis-go7007-linux-0.9.8/kernel/go7007-i2c.c 2006-12-17 12:55:44.000000000 -0400 +++ b/wis-go7007-linux-0.9.8/kernel/go7007-i2c.c 2006-12-17 12:56:09.000000000 -0400 @@ -15,9 +15,11 @@ * Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. */ +#include +#if LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,17) #include +#endif #include -#include #include #include #include diff -urN a/wis-go7007-linux-0.9.8/kernel/go7007-usb.c b/wis-go7007-linux-0.9.8/kernel/go7007-usb.c --- a/wis-go7007-linux-0.9.8/kernel/go7007-usb.c 2006-12-17 12:55:44.000000000 -0400 +++ b/wis-go7007-linux-0.9.8/kernel/go7007-usb.c 2006-12-17 12:56:09.000000000 -0400 @@ -27,7 +27,7 @@ #include #include #include -#include +#include #include "go7007-priv.h" #include "wis-i2c.h" @@ -225,17 +225,17 @@ .inputs = { { .video_input = 1, - .audio_input = AUDIO_EXTERN, + .audio_input = TVAUDIO_INPUT_EXTERN, .name = "Composite", }, { .video_input = 8, - .audio_input = AUDIO_EXTERN, + .audio_input = TVAUDIO_INPUT_EXTERN, .name = "S-Video", }, { .video_input = 3, - .audio_input = AUDIO_TUNER, + .audio_input = TVAUDIO_INPUT_TUNER, .name = "Tuner", }, }, diff -urN a/wis-go7007-linux-0.9.8/kernel/go7007-v4l2.c b/wis-go7007-linux-0.9.8/kernel/go7007-v4l2.c --- a/wis-go7007-linux-0.9.8/kernel/go7007-v4l2.c 2006-12-17 12:55:44.000000000 -0400 +++ b/wis-go7007-linux-0.9.8/kernel/go7007-v4l2.c 2006-12-17 12:56:09.000000000 -0400 @@ -17,8 +17,10 @@ #include #include -#include #include +#if LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,17) +#include +#endif #include #include #include @@ -939,7 +941,7 @@ if (go->i2c_adapter_online) { i2c_clients_command(&go->i2c_adapter, DECODER_SET_INPUT, &go->board_info->inputs[*input].video_input); - i2c_clients_command(&go->i2c_adapter, AUDC_SET_INPUT, + i2c_clients_command(&go->i2c_adapter, VIDIOC_S_AUDIO, &go->board_info->inputs[*input].audio_input); } return 0; diff -urN a/wis-go7007-linux-0.9.8/kernel/snd-go7007.c b/wis-go7007-linux-0.9.8/kernel/snd-go7007.c --- a/wis-go7007-linux-0.9.8/kernel/snd-go7007.c 2006-12-17 12:55:44.000000000 -0400 +++ b/wis-go7007-linux-0.9.8/kernel/snd-go7007.c 2006-12-17 12:56:28.000000000 -0400 @@ -20,7 +20,9 @@ #include #include #include +#if LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,17) #include +#endif #include #include #include @@ -305,7 +307,7 @@ struct go7007_snd *gosnd = go->snd_context; snd_card_disconnect(gosnd->card); - snd_card_free_in_thread(gosnd->card); + snd_card_free_when_closed(gosnd->card); return 0; } EXPORT_SYMBOL(go7007_snd_remove); diff -urN a/wis-go7007-linux-0.9.8/kernel/wis-saa7113.c b/wis-go7007-linux-0.9.8/kernel/wis-saa7113.c --- a/wis-go7007-linux-0.9.8/kernel/wis-saa7113.c 2006-12-17 12:55:44.000000000 -0400 +++ b/wis-go7007-linux-0.9.8/kernel/wis-saa7113.c 2006-12-17 12:56:09.000000000 -0400 @@ -21,6 +21,7 @@ #include #include #include +#include #include "wis-i2c.h" diff -urN a/wis-go7007-linux-0.9.8/kernel/wis-saa7115.c b/wis-go7007-linux-0.9.8/kernel/wis-saa7115.c --- a/wis-go7007-linux-0.9.8/kernel/wis-saa7115.c 2006-12-17 12:55:44.000000000 -0400 +++ b/wis-go7007-linux-0.9.8/kernel/wis-saa7115.c 2006-12-17 12:56:09.000000000 -0400 @@ -21,6 +21,7 @@ #include #include #include +#include #include "wis-i2c.h" diff -urN a/wis-go7007-linux-0.9.8/kernel/wis-tw2804.c b/wis-go7007-linux-0.9.8/kernel/wis-tw2804.c --- a/wis-go7007-linux-0.9.8/kernel/wis-tw2804.c 2006-12-17 12:55:44.000000000 -0400 +++ b/wis-go7007-linux-0.9.8/kernel/wis-tw2804.c 2006-12-17 12:56:09.000000000 -0400 @@ -21,6 +21,7 @@ #include #include #include +#include #include "wis-i2c.h" diff -urN a/wis-go7007-linux-0.9.8/kernel/wis-tw9903.c b/wis-go7007-linux-0.9.8/kernel/wis-tw9903.c --- a/wis-go7007-linux-0.9.8/kernel/wis-tw9903.c 2006-12-17 12:55:44.000000000 -0400 +++ b/wis-go7007-linux-0.9.8/kernel/wis-tw9903.c 2006-12-17 12:56:09.000000000 -0400 @@ -21,6 +21,7 @@ #include #include #include +#include #include "wis-i2c.h" diff -urN a/wis-go7007-linux-0.9.8/kernel/wis-uda1342.c b/wis-go7007-linux-0.9.8/kernel/wis-uda1342.c --- a/wis-go7007-linux-0.9.8/kernel/wis-uda1342.c 2006-12-17 12:55:44.000000000 -0400 +++ b/wis-go7007-linux-0.9.8/kernel/wis-uda1342.c 2006-12-17 12:56:09.000000000 -0400 @@ -20,7 +20,7 @@ #include #include #include -#include +#include #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) #include #endif @@ -38,15 +38,15 @@ unsigned int cmd, void *arg) { switch (cmd) { - case AUDC_SET_INPUT: + case VIDIOC_S_AUDIO: { int *inp = arg; switch (*inp) { - case AUDIO_TUNER: + case TVAUDIO_INPUT_TUNER: write_reg(client, 0x00, 0x1441); /* select input 2 */ break; - case AUDIO_EXTERN: + case TVAUDIO_INPUT_EXTERN: write_reg(client, 0x00, 0x1241); /* select input 1 */ break; default: