2.6.35 and current v4l-dvb - error: implicit declaration of function 'usb_buffer_free'
Hi
I can't compile current v4l-dvb with new 2.6.35 kernel
arvdr:/usr/src/v4l-dvb# make make -C /usr/src/v4l-dvb/v4l make[1]: Entering directory `/usr/src/v4l-dvb/v4l' creating symbolic links... make -C firmware prep make[2]: Entering directory `/usr/src/v4l-dvb/v4l/firmware' make[2]: Leaving directory `/usr/src/v4l-dvb/v4l/firmware' make -C firmware make[2]: Entering directory `/usr/src/v4l-dvb/v4l/firmware' make[2]: Nothing to be done for `default'. make[2]: Leaving directory `/usr/src/v4l-dvb/v4l/firmware' Kernel build directory is /lib/modules/2.6.35-tux/build make -C /lib/modules/2.6.35-tux/build SUBDIRS=/usr/src/v4l-dvb/v4l modules make[2]: Entering directory `/usr/src/linux-2.6.35' CC [M] /usr/src/v4l-dvb/v4l/au0828-video.o /usr/src/v4l-dvb/v4l/au0828-video.c: In function 'au0828_uninit_isoc': /usr/src/v4l-dvb/v4l/au0828-video.c:185: error: implicit declaration of function 'usb_buffer_free' /usr/src/v4l-dvb/v4l/au0828-video.c: In function 'au0828_init_isoc': /usr/src/v4l-dvb/v4l/au0828-video.c:255: error: implicit declaration of function 'usb_buffer_alloc' /usr/src/v4l-dvb/v4l/au0828-video.c:256: warning: assignment makes pointer from integer without a cast make[3]: *** [/usr/src/v4l-dvb/v4l/au0828-video.o] Ошибка 1 make[2]: *** [_module_/usr/src/v4l-dvb/v4l] Error 2 make[2]: Leaving directory `/usr/src/linux-2.6.35' make[1]: *** [default] Ошибка 2 make[1]: Leaving directory `/usr/src/v4l-dvb/v4l' make: *** [all] Ошибка 2
Hello,
2010/8/11 Goga777 <[email protected]>:
Quoted 22 lines
Hi
I can't compile current v4l-dvb with new 2.6.35 kernel
arvdr:/usr/src/v4l-dvb# make make -C /usr/src/v4l-dvb/v4l make[1]: Entering directory `/usr/src/v4l-dvb/v4l' creating symbolic links... make -C firmware prep make[2]: Entering directory `/usr/src/v4l-dvb/v4l/firmware' make[2]: Leaving directory `/usr/src/v4l-dvb/v4l/firmware' make -C firmware make[2]: Entering directory `/usr/src/v4l-dvb/v4l/firmware' make[2]: Nothing to be done for `default'. make[2]: Leaving directory `/usr/src/v4l-dvb/v4l/firmware' Kernel build directory is /lib/modules/2.6.35-tux/build make -C /lib/modules/2.6.35-tux/build SUBDIRS=/usr/src/v4l-dvb/v4l modules make[2]: Entering directory `/usr/src/linux-2.6.35' CC [M] /usr/src/v4l-dvb/v4l/au0828-video.o /usr/src/v4l-dvb/v4l/au0828-video.c: In function 'au0828_uninit_isoc': /usr/src/v4l-dvb/v4l/au0828-video.c:185: error: implicit declaration of function 'usb_buffer_free' /usr/src/v4l-dvb/v4l/au0828-video.c: In function 'au0828_init_isoc':
Quoted 9 lines
/usr/src/v4l-dvb/v4l/au0828-video.c:255: error: implicit declaration of function 'usb_buffer_alloc' /usr/src/v4l-dvb/v4l/au0828-video.c:256: warning: assignment makes pointer from integer without a cast make[3]: *** [/usr/src/v4l-dvb/v4l/au0828-video.o] Ошибка 1 make[2]: *** [_module_/usr/src/v4l-dvb/v4l] Error 2 make[2]: Leaving directory `/usr/src/linux-2.6.35' make[1]: *** [default] Ошибка 2 make[1]: Leaving directory `/usr/src/v4l-dvb/v4l' make: *** [all] Ошибка 2
Both functions were renamed in upstream, backport created and commited, please try again.
Cheers
Douglas
Quoted 2 lines
Both functions were renamed in upstream, backport created and commited, please try again.
yes, I don't have more such errors, but still have other one which I reported early
CC [M] /usr/src/v4l-dvb/v4l/dvb_net.o/usr/src/v4l-dvb/v4l/dvb_net.c:1190: warning: 'struct dev_mc_list' declared inside parameter list /usr/src/v4l-dvb/v4l/dvb_net.c:1190: warning: its scope is only this definition or declaration, which is
probably not what you want /usr/src/v4l-dvb/v4l/dvb_net.c: In function 'dvb_set_mc_filter':/usr/src/v4l-dvb/v4l/dvb_net.c:1197: error: dereferencing pointer to incomplete type /usr/src/v4l-dvb/v4l/dvb_net.c:1197: error: dereferencing pointer to incomplete type /usr/src/v4l-dvb/v4l/dvb_net.c: In function 'wq_set_multicast_list':/usr/src/v4l-dvb/v4l/dvb_net.c:1247: error: 'struct net_device' has no member named 'mc_list' /usr/src/v4l-dvb/v4l/dvb_net.c:1249: error: dereferencing pointer to incomplete type /usr/src/v4l-dvb/v4l/dvb_net.c:1249: warning: left-hand operand of comma expression has no effect /usr/src/v4l-dvb/v4l/dvb_net.c:1249: warning: value computed is not used /usr/src/v4l-dvb/v4l/dvb_net.c:1250: warning: passing argument 2 of 'dvb_set_mc_filter' from incompatible
pointer type /usr/src/v4l-dvb/v4l/dvb_net.c:1190: note: expected 'struct dev_mc_list *' but argument is of type 'struct dev_mc_list *' make[3]: *** [/usr/src/v4l-dvb/v4l/dvb_net.o] Ошибка 1
make[2]: *** [_module_/usr/src/v4l-dvb/v4l] Error 2
make[2]: Leaving directory `/usr/src/linux-2.6.35'
make[1]: *** [default] Ошибка 2
make[1]: Leaving directory `/usr/src/v4l-dvb/v4l'
make: *** [all] Ошибка 2
Quoted 2 lines
Quoted 2 lines
Both functions were renamed in upstream, backport created and commited, please try again.
yes, I don't have more such errors, but still have other one which I reported early
Quoted 19 lines
CC [M]
/usr/src/v4l-dvb/v4l/dvb_net.o/usr/src/v4l-dvb/v4l/dvb_net.c:1190: warning: 'structdev_mc_list' declared inside parameter list/usr/src/v4l-dvb/v4l/dvb_net.c:1190: warning: its scope is only this definition or declaration, which is
probably not what you want/usr/src/v4l-dvb/v4l/dvb_net.c: In function 'dvb_set_mc_filter':/usr/src/v4l-dvb/v4l/dvb_net.c:1197: error: dereferencing pointer to incomplete type/usr/src/v4l-dvb/v4l/dvb_net.c:1197: error: dereferencing pointer to incomplete type/usr/src/v4l-dvb/v4l/dvb_net.c: In function 'wq_set_multicast_list':/usr/src/v4l-dvb/v4l/dvb_net.c:1247: error: 'structnet_device' has no member named 'mc_list'/usr/src/v4l-dvb/v4l/dvb_net.c:1249: error: dereferencing pointer to incomplete type/usr/src/v4l-dvb/v4l/dvb_net.c:1249: warning: left-hand operand of comma expression has no effect/usr/src/v4l-dvb/v4l/dvb_net.c:1249: warning: value computed is not used/usr/src/v4l-dvb/v4l/dvb_net.c:1250: warning: passing argument 2 of 'dvb_set_mc_filter' from incompatible
pointer type/usr/src/v4l-dvb/v4l/dvb_net.c:1190: note: expected 'structdev_mc_list*' but argument is of type 'structdev_mc_list*' make[3]: *** [/usr/src/v4l-dvb/v4l/dvb_net.o] Ошибка 1
make[2]: *** [_module_/usr/src/v4l-dvb/v4l] Error 2
make[2]: Leaving directory `/usr/src/linux-2.6.35'
make[1]: *** [default] Ошибка 2
make[1]: Leaving directory `/usr/src/v4l-dvb/v4l'
make: *** [all] Ошибка 2
В сообщении от 13 августа 2010 05:19:49 автор Douglas Schilling Landgraf написал:
Quoted 39 lines
Hello,
2010/8/11 Goga777 <[email protected]>:
Quoted 24 lines
Hi
I can't compile current v4l-dvb with new 2.6.35 kernel
arvdr:/usr/src/v4l-dvb# make make -C /usr/src/v4l-dvb/v4l make[1]: Entering directory `/usr/src/v4l-dvb/v4l' creating symbolic links... make -C firmware prep make[2]: Entering directory `/usr/src/v4l-dvb/v4l/firmware' make[2]: Leaving directory `/usr/src/v4l-dvb/v4l/firmware' make -C firmware make[2]: Entering directory `/usr/src/v4l-dvb/v4l/firmware' make[2]: Nothing to be done for `default'. make[2]: Leaving directory `/usr/src/v4l-dvb/v4l/firmware' Kernel build directory is /lib/modules/2.6.35-tux/build make -C /lib/modules/2.6.35-tux/build SUBDIRS=/usr/src/v4l-dvb/v4l modules make[2]: Entering directory `/usr/src/linux-2.6.35' CC [M] /usr/src/v4l-dvb/v4l/au0828-video.o /usr/src/v4l-dvb/v4l/au0828-video.c: In function 'au0828_uninit_isoc': /usr/src/v4l-dvb/v4l/au0828-video.c:185: error: implicit declaration of function 'usb_buffer_free' /usr/src/v4l-dvb/v4l/au0828-video.c: In function 'au0828_init_isoc': /usr/src/v4l-dvb/v4l/au0828-video.c:255: error: implicit declaration of function 'usb_buffer_alloc'Quoted 8 lines
/usr/src/v4l-dvb/v4l/au0828-video.c:256: warning: assignment makes pointer from integer without a cast make[3]: *** [/usr/src/v4l-dvb/v4l/au0828-video.o] Ошибка 1 make[2]: *** [_module_/usr/src/v4l-dvb/v4l] Error 2 make[2]: Leaving directory `/usr/src/linux-2.6.35' make[1]: *** [default] Ошибка 2 make[1]: Leaving directory `/usr/src/v4l-dvb/v4l' make: *** [all] Ошибка 2Both functions were renamed in upstream, backport created and commited, please try again.
Quoted 6 lines
Cheers
Douglas
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Is it better other way round, to rename all appearances of functions and define a macro? Like this:
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,35)
#define usb_alloc_coherent(a, b, c, d) usb_buffer_alloc(a, b, c, d) #define usb_free_coherent(a, b, c, d) usb_buffer_free(a, b, c, d) #endif
In the end it will be more similar in code to the last kernel :)
Signature · 2 lines
Igor M. Liplianin Microsoft Windows Free Zone - Linux used for all Computing Tasks
Hello,
2010/8/13 Igor M. Liplianin <[email protected]>:
Quoted 49 lines
В сообщении от 13 августа 2010 05:19:49 автор Douglas Schilling Landgraf написал:
Quoted 39 lines
Hello,
2010/8/11 Goga777 <[email protected]>:
Quoted 24 lines
Hi
I can't compile current v4l-dvb with new 2.6.35 kernel
arvdr:/usr/src/v4l-dvb# make make -C /usr/src/v4l-dvb/v4l make[1]: Entering directory `/usr/src/v4l-dvb/v4l' creating symbolic links... make -C firmware prep make[2]: Entering directory `/usr/src/v4l-dvb/v4l/firmware' make[2]: Leaving directory `/usr/src/v4l-dvb/v4l/firmware' make -C firmware make[2]: Entering directory `/usr/src/v4l-dvb/v4l/firmware' make[2]: Nothing to be done for `default'. make[2]: Leaving directory `/usr/src/v4l-dvb/v4l/firmware' Kernel build directory is /lib/modules/2.6.35-tux/build make -C /lib/modules/2.6.35-tux/build SUBDIRS=/usr/src/v4l-dvb/v4l modules make[2]: Entering directory `/usr/src/linux-2.6.35' CC [M] /usr/src/v4l-dvb/v4l/au0828-video.o /usr/src/v4l-dvb/v4l/au0828-video.c: In function 'au0828_uninit_isoc': /usr/src/v4l-dvb/v4l/au0828-video.c:185: error: implicit declaration of function 'usb_buffer_free' /usr/src/v4l-dvb/v4l/au0828-video.c: In function 'au0828_init_isoc': /usr/src/v4l-dvb/v4l/au0828-video.c:255: error: implicit declaration of function 'usb_buffer_alloc'Quoted 8 lines
/usr/src/v4l-dvb/v4l/au0828-video.c:256: warning: assignment makes pointer from integer without a cast make[3]: *** [/usr/src/v4l-dvb/v4l/au0828-video.o] Ошибка 1 make[2]: *** [_module_/usr/src/v4l-dvb/v4l] Error 2 make[2]: Leaving directory `/usr/src/linux-2.6.35' make[1]: *** [default] Ошибка 2 make[1]: Leaving directory `/usr/src/v4l-dvb/v4l' make: *** [all] Ошибка 2Both functions were renamed in upstream, backport created and commited, please try again.
Quoted 6 lines
Cheers
Douglas
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.htmlIs it better other way round, to rename all appearances of functions and define a macro? Like this:
Quoted 6 lines
#if
LINUX_VERSION_CODE<KERNEL_VERSION(2,6,35)
#defineusb_alloc_coherent(a, b, c, d)usb_buffer_alloc(a, b, c, d)#defineusb_free_coherent(a, b, c, d)usb_buffer_free(a, b, c, d)#endifIn the end it will be more similar in code to the last kernel :)
Yes, agreed but all drivers must be renamed with the new function name first. Otherwise, it will keep breaking. Thanks for looking it.
Cheers
Douglas
Em 13-08-2010 09:53, Douglas Schilling Landgraf escreveu:
Quoted 57 lines
Hello,
2010/8/13 Igor M. Liplianin <[email protected]>:
Quoted 54 lines
В сообщении от 13 августа 2010 05:19:49 автор Douglas Schilling Landgraf написал:
Quoted 39 lines
Hello,
2010/8/11 Goga777 <[email protected]>:
Quoted 24 lines
Hi
I can't compile current v4l-dvb with new 2.6.35 kernel
arvdr:/usr/src/v4l-dvb# make make -C /usr/src/v4l-dvb/v4l make[1]: Entering directory `/usr/src/v4l-dvb/v4l' creating symbolic links... make -C firmware prep make[2]: Entering directory `/usr/src/v4l-dvb/v4l/firmware' make[2]: Leaving directory `/usr/src/v4l-dvb/v4l/firmware' make -C firmware make[2]: Entering directory `/usr/src/v4l-dvb/v4l/firmware' make[2]: Nothing to be done for `default'. make[2]: Leaving directory `/usr/src/v4l-dvb/v4l/firmware' Kernel build directory is /lib/modules/2.6.35-tux/build make -C /lib/modules/2.6.35-tux/build SUBDIRS=/usr/src/v4l-dvb/v4l modules make[2]: Entering directory `/usr/src/linux-2.6.35' CC [M] /usr/src/v4l-dvb/v4l/au0828-video.o /usr/src/v4l-dvb/v4l/au0828-video.c: In function 'au0828_uninit_isoc': /usr/src/v4l-dvb/v4l/au0828-video.c:185: error: implicit declaration of function 'usb_buffer_free' /usr/src/v4l-dvb/v4l/au0828-video.c: In function 'au0828_init_isoc': /usr/src/v4l-dvb/v4l/au0828-video.c:255: error: implicit declaration of function 'usb_buffer_alloc'Quoted 8 lines
/usr/src/v4l-dvb/v4l/au0828-video.c:256: warning: assignment makes pointer from integer without a cast make[3]: *** [/usr/src/v4l-dvb/v4l/au0828-video.o] Ошибка 1 make[2]: *** [_module_/usr/src/v4l-dvb/v4l] Error 2 make[2]: Leaving directory `/usr/src/linux-2.6.35' make[1]: *** [default] Ошибка 2 make[1]: Leaving directory `/usr/src/v4l-dvb/v4l' make: *** [all] Ошибка 2Both functions were renamed in upstream, backport created and commited, please try again.
Quoted 6 lines
Cheers
Douglas
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.htmlIs it better other way round, to rename all appearances of functions and define a macro? Like this:
#if
LINUX_VERSION_CODE<KERNEL_VERSION(2,6,35)
#defineusb_alloc_coherent(a, b, c, d)usb_buffer_alloc(a, b, c, d)#defineusb_free_coherent(a, b, c, d)usb_buffer_free(a, b, c, d)#endif
Quoted 4 lines
Quoted 1 line
In the end it will be more similar in code to the last kernel :)
Yes, agreed but all drivers must be renamed with the new function name first. Otherwise, it will keep breaking. Thanks for looking it.
That's the reason why I used to first backport all upstream patches, and then work on a fix. An upstream patchset already did such change.
Quoted 7 lines
Cheers
Douglas
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html