Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 176824 - media-video/r5u870-0.11.1 new ebuild
Summary: media-video/r5u870-0.11.1 new ebuild
Status: CONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High enhancement (vote)
Assignee: Default Assignee for New Packages
URL: http://wiki.mediati.org/R5u870
Whiteboard: sunrise suggested
Keywords: EBUILD
Depends on:
Blocks:
 
Reported: 2007-05-02 15:42 UTC by Simon Cooper
Modified: 2016-05-05 17:18 UTC (History)
11 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
media-video/r5u870-0.10.0 ebuild (r5u870-0.10.0.ebuild,776 bytes, text/plain)
2007-05-02 15:43 UTC, Simon Cooper
Details
Updated r5u870 ebuild (r5u870-0.10.0.ebuild,742 bytes, text/plain)
2007-06-08 22:47 UTC, Simon Cooper
Details
New r5u870-0.10.0 ebuild (r5u870-0.10.0.ebuild,744 bytes, text/plain)
2007-12-12 17:22 UTC, Flavio
Details
New r5u870-0.10.0 ebuild (r5u870-0.10.0.ebuild,744 bytes, text/plain)
2007-12-12 17:22 UTC, Flavio
Details
Ebuild which fetches from subversion repo, adds support for VGP-VCC7 (r5u870-9999.ebuild,661 bytes, text/plain)
2008-01-13 01:56 UTC, Adrian Perez
Details
Ebuild which fetches from subversion repo, adds support for VGP-VCC7 (r5u870-9999.ebuild,651 bytes, text/plain)
2008-01-17 03:50 UTC, Adrian Perez
Details
Updated ebuild for 0.10.2 (r5u870-0.10.2.ebuild,620 bytes, text/plain)
2008-01-17 03:52 UTC, Adrian Perez
Details
Ebuild for new 0.11.0 release (r5u870-0.11.0.ebuild,1.15 KB, text/plain)
2008-01-24 13:19 UTC, Adrian Perez
Details
Patch for config in new (post 2.6.24) kernels, use with the 0.11.0 and 9999 ebuilds (vivi-dmasg-config.patch,389 bytes, patch)
2008-01-24 13:20 UTC, Adrian Perez
Details | Diff
Updated svn-based ebuild (r5u870-9999.ebuild,1.18 KB, text/plain)
2008-01-24 13:22 UTC, Adrian Perez
Details
r5u870-0.11.1.ebuild (r5u870-0.11.1.ebuild,1.15 KB, text/plain)
2008-07-03 21:13 UTC, Adrian Perez
Details
Ebuild that fetches r5u87x from mercurial repository (r5u87x-9999.ebuild,890 bytes, text/plain)
2009-07-10 13:48 UTC, Holger Ackermann
Details
Ebuild for 2.6.30 kernel (r5u870-2.6.30.ebuild,1.31 KB, text/plain)
2009-07-11 16:05 UTC, Christos Stamatopoulos
Details
Updated Ebuild for 2.6.30 kernel (r5u870-2.6.30.ebuild,1.33 KB, text/plain)
2009-07-17 09:46 UTC, Christos Stamatopoulos
Details
Updated Ebuild for 2.6.30 kernel (r5u870-2.6.30.ebuild,1.34 KB, text/plain)
2009-07-17 10:16 UTC, Christos Stamatopoulos
Details
install-media-video_r5u870-2.6.30:0::local.out (screen-exchange,20.00 KB, text/plain)
2009-07-17 13:19 UTC, samLT
Details
Updated Ebuild for 2.6.30 kernel (r5u870-2.6.30.ebuild,1.33 KB, text/plain)
2009-07-17 15:02 UTC, Christos Stamatopoulos
Details
r5u870-2.6.30.ebuild (r5u870-2.6.30.ebuild,1.32 KB, text/plain)
2009-07-17 19:57 UTC, samLT
Details
fdi policy for HAL to recognise r5u870 as webcam (30-r5u870.fdi,658 bytes, text/plain)
2009-09-17 13:28 UTC, Christos Stamatopoulos
Details
fdi policy for HAL to recognise r5u870 as webcam (10-r5u870-webcam.fdi,747 bytes, text/plain)
2010-05-05 17:02 UTC, Alejandro Ojeda
Details
r5u870 ebuild for kernels >= 2.6.30 (r5u870-2.6.3x.ebuild,1.38 KB, text/plain)
2010-07-07 06:23 UTC, Christos Stamatopoulos
Details
patch for r5u870 to compile with kernel >= 2.6.34 (r5u870-2.6.34_fix.patch,266 bytes, patch)
2010-07-07 06:24 UTC, Christos Stamatopoulos
Details | Diff
r5u870 ebuild for kernels >= 2.6.30 - added the vivi patch ewarn back (r5u870-2.6.3x.ebuild,1.37 KB, text/plain)
2010-07-27 15:05 UTC, Christos Stamatopoulos
Details
updated r5u870 ebuild for kernels >= 2.6.30 (r5u870-2.6.3x.ebuild,1.34 KB, text/plain)
2010-09-22 13:19 UTC, Christos Stamatopoulos
Details
updated r5u870 ebuild for kernels >= 2.6.30 (r5u870-2.6.3x.ebuild,1.67 KB, text/plain)
2010-09-22 13:43 UTC, Christos Stamatopoulos
Details
updated r5u870 ebuild for kernels >= 2.6.30 (r5u870-2.6.3x.ebuild,1.73 KB, text/plain)
2010-10-27 12:47 UTC, Christos Stamatopoulos
Details
updated r5u870 ebuild for kernels >= 2.6.30 (r5u870-2.6.3x.ebuild,1.62 KB, text/plain)
2010-11-05 10:40 UTC, Christos Stamatopoulos
Details
updated r5u870 ebuild for kernels >= 2.6.30 (r5u870-2.6.3x.ebuild,1.64 KB, text/plain)
2010-11-05 14:07 UTC, Christos Stamatopoulos
Details
ebuild environment file (die.env,220.48 KB, text/plain)
2011-01-05 12:12 UTC, Flavio
Details
complete build log (media-video:r5u870-2.6.3x:20110105-120415.log,2.15 KB, text/plain)
2011-01-05 12:12 UTC, Flavio
Details
updated r5u870 ebuild to support recent 2.6.37 kernel changes (r5u870-2.6.3x.ebuild,1.71 KB, text/plain)
2011-01-15 23:53 UTC, Christos Stamatopoulos
Details
patch for r5u870 to compile with kernel >= 2.6.37 (r5u870-2.6.37_fix.patch,1.18 KB, text/plain)
2011-01-15 23:55 UTC, Christos Stamatopoulos
Details
dmesg output (dmesg.log,3.99 KB, text/plain)
2011-04-27 09:12 UTC, Ilia Pozhilov
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Simon Cooper 2007-05-02 15:42:30 UTC
Attached is a new ebuild for r5u870; a driver for various Ricoh webcams, commonly found on HP laptops.

I've only tested it under amd64, and have marked it as such. Since this is a reasonably common webcam, maybe set it as ~x86 as well?

Note, 'make install' for the package puts the module into /lib/modules/.../extra by default, I changed this to /usb for consistency (since thats what the qc-usb ebuild does...)
Comment 1 Simon Cooper 2007-05-02 15:43:22 UTC
Created attachment 117963 [details]
media-video/r5u870-0.10.0 ebuild
Comment 2 Simon Cooper 2007-06-08 22:47:34 UTC
Created attachment 121527 [details]
Updated r5u870 ebuild

Removed a few redundant things
Comment 3 Andrey 2007-12-03 14:07:52 UTC
with this ebuild r5u870-0.10.0.tgz don't downloading from http://lsb.blogdns.net/
Comment 4 Flavio 2007-12-12 17:22:14 UTC
Created attachment 138335 [details]
New r5u870-0.10.0 ebuild

Hi there!
Try this new r5u870-0.10.0 ebuild. I've updated the source URL for the tgz file.
It worked for me.

Bye.
Comment 5 Flavio 2007-12-12 17:22:17 UTC
Created attachment 138336 [details]
New r5u870-0.10.0 ebuild

Hi there!
Try this new r5u870-0.10.0 ebuild. I've updated the source URL for the tgz file.
It worked for me.

Bye.
Comment 6 Adrian Perez 2008-01-13 01:54:41 UTC
Unfortunately this did not work for my Vaio TZ11MN, but I have found a patched version of the driver at http://wiki.mediati.org/R5u870 which includes support for the webcam model (VGP-VCC7) shipped in the TZ11 series. Sources can be downloaded using subversion. 

I am attaching a r5u879-9999.ebuild which fetches sources using subversion.eclass, it works great for me.
Comment 7 Adrian Perez 2008-01-13 01:56:45 UTC
Created attachment 140841 [details]
Ebuild which fetches from subversion repo, adds support for VGP-VCC7
Comment 8 Adrian Perez 2008-01-17 03:50:44 UTC
Created attachment 141094 [details]
Ebuild which fetches from subversion repo, adds support for VGP-VCC7

Removes the CONFIG_VIDEO_BUF check to make the ebuild work with zen-sources. The check is not really needed because the component is selected automatically when CONFIG_VIDEO_VIVI is enabled.
Comment 9 Adrian Perez 2008-01-17 03:52:54 UTC
Created attachment 141096 [details]
Updated ebuild for 0.10.2

Builds from the version of the driver available from http://wiki.mediati.org/R5u870 using the 0.10.2 tarball instead of fetching sources with Subversion. Maybe someone finds this one cleaner ;-)
Comment 10 Adrian Perez 2008-01-24 13:19:21 UTC
Created attachment 141716 [details]
Ebuild for new 0.11.0 release

I have updated my ebuild to version 0.11.0 of the driver. Enjoy!
Comment 11 Adrian Perez 2008-01-24 13:20:43 UTC
Created attachment 141719 [details, diff]
Patch for config in new (post 2.6.24) kernels, use with the 0.11.0 and 9999 ebuilds
Comment 12 Adrian Perez 2008-01-24 13:22:08 UTC
Created attachment 141721 [details]
Updated svn-based ebuild
Comment 13 Gene Imes 2008-01-30 23:20:51 UTC
Why does this happen:

make[1]: Entering directory `/usr/src/linux-2.6.24-rc1'
Makefile:500: /usr/src/linux-2.6.24-rc1/arch/x86/Makefile: No such file or directory
make[1]: *** No rule to make target `/usr/src/linux-2.6.24-rc1/arch/x86/Makefile'.  Stop.
make[1]: Leaving directory `/usr/src/linux-2.6.24-rc1'
make: *** [all] Error 2

Thanks,

Gene


(In reply to comment #12)
> Created an attachment (id=141721) [edit]
> Updated svn-based ebuild
> 

(In reply to comment #9)
> Created an attachment (id=141096) [edit]
> Updated ebuild for 0.10.2
> 
> Builds from the version of the driver available from
> http://wiki.mediati.org/R5u870 using the 0.10.2 tarball instead of fetching
> sources with Subversion. Maybe someone finds this one cleaner ;-)
> 

Comment 14 Adrian Perez 2008-01-30 23:51:04 UTC
(In reply to comment #13)
> Why does this happen:
> 
> make[1]: Entering directory `/usr/src/linux-2.6.24-rc1'
> Makefile:500: /usr/src/linux-2.6.24-rc1/arch/x86/Makefile: No such file or
> directory
> make[1]: *** No rule to make target
> `/usr/src/linux-2.6.24-rc1/arch/x86/Makefile'.  Stop.
> make[1]: Leaving directory `/usr/src/linux-2.6.24-rc1'
> make: *** [all] Error 2

I would bet that your kernel source tree is not configured. You will need to do at least "make modules_prepare" in the kernel source tree.
 
Comment 15 Gene Imes 2008-02-02 17:40:40 UTC
(In reply to comment #14)
> (In reply to comment #13)
> > Why does this happen:
> > 
> > make[1]: Entering directory `/usr/src/linux-2.6.24-rc1'
> > Makefile:500: /usr/src/linux-2.6.24-rc1/arch/x86/Makefile: No such file or
> > directory
> > make[1]: *** No rule to make target
> > `/usr/src/linux-2.6.24-rc1/arch/x86/Makefile'.  Stop.
> > make[1]: Leaving directory `/usr/src/linux-2.6.24-rc1'
> > make: *** [all] Error 2
> 
> I would bet that your kernel source tree is not configured. You will need to do
> at least "make modules_prepare" in the kernel source tree.
> 
> 

Did that. No change. Any other ideas?

Thanks,

Gene

Comment 16 Adrian Perez 2008-02-10 02:29:13 UTC
(In reply to comment #15)
> (In reply to comment #14)
> > (In reply to comment #13)
> > > Why does this happen:
> > > 
> > > make[1]: Entering directory `/usr/src/linux-2.6.24-rc1'
> > > Makefile:500: /usr/src/linux-2.6.24-rc1/arch/x86/Makefile: No such file or
> > > directory
> > > make[1]: *** No rule to make target
> > > `/usr/src/linux-2.6.24-rc1/arch/x86/Makefile'.  Stop.
> > > make[1]: Leaving directory `/usr/src/linux-2.6.24-rc1'
> > > make: *** [all] Error 2
> > 
> > I would bet that your kernel source tree is not configured. You will need to do
> > at least "make modules_prepare" in the kernel source tree.
> > 
> 
> Did that. No change. Any other ideas?

As far as I can tell, the missing file is installed as a part of the kernel sources:
 
  # qfile /usr/src/linux-2.6.24-gentoo/arch/x86/Makefile
  sys-kernel/gentoo-sources (/usr/src/linux-2.6.24-gentoo/arch/x86/Makefile)

I would re-emerge sys-kernel/gentoo-sources in order to get the file installed again. I hope that would help ;-)
Comment 17 Adrian Perez 2008-07-03 21:13:53 UTC
Created attachment 159454 [details]
r5u870-0.11.1.ebuild

Ebuild for 0.11.1 release
Comment 18 Flavio 2008-07-04 08:06:54 UTC
Hello, 
I use the r5u870-9999.ebuild since its publication and it works perfectly (in my opinion).
What do you suggest me? 

Flavio
Comment 19 Adrian Perez 2008-07-04 09:46:38 UTC
(In reply to comment #18)
> Hello, 
> I use the r5u870-9999.ebuild since its publication and it works perfectly (in
> my opinion).
> What do you suggest me? 

It is okay to use it if you want to stay always up-to-date (and living on the edge, hehe). It is also working nice for me, and I will fix the -9999 ebuild if something changes upstream, but I cannot guarantee that it will always work.

As a reminder, please remember not to reinstall repository-based packages too much frequently in order to avoid stressing upstream servers (e.g. once a week usually is okay).
Comment 20 Flavio 2008-07-04 10:20:39 UTC
(In reply to comment #19)
> (In reply to comment #18)
> > Hello, 
> > I use the r5u870-9999.ebuild since its publication and it works perfectly (in
> > my opinion).
> > What do you suggest me? 
> 
> It is okay to use it if you want to stay always up-to-date (and living on the
> edge, hehe). It is also working nice for me, and I will fix the -9999 ebuild if
> something changes upstream, but I cannot guarantee that it will always work.
> 
> As a reminder, please remember not to reinstall repository-based packages too
> much frequently in order to avoid stressing upstream servers (e.g. once a week
> usually is okay).
> 

Ok, thank you. 
So, I'll tell you that I never updated my driver. I left my 9999 driver at the first version I emerged. 

Anyway, thank you.

Flavio
Comment 21 Christos Stamatopoulos 2008-09-17 06:38:06 UTC
Is there any overlay for this ebuild ?
Comment 22 Flavio 2008-09-17 06:56:35 UTC
(In reply to comment #21)
> Is there any overlay for this ebuild ?
> 

I don't know. Have you got some problem installing the r5u870 package?
Comment 23 Christos Stamatopoulos 2008-09-18 03:44:05 UTC
No no everything is ok i was just wandering if there was any overlay.Thank you
Comment 24 Flavio 2008-09-18 07:29:25 UTC
(In reply to comment #23)
> No no everything is ok i was just wandering if there was any overlay.Thank you
> 

I don't know if this ebuild is contained into an overlay, because I always used my local overlay.

Regards

Flavio
Comment 25 Adrian Perez 2008-09-18 08:27:00 UTC
(In reply to comment #24)

> I don't know if this ebuild is contained into an overlay, because I always used my local overlay.

I maintain an overlay which contains updated ebuilds for this package, take a look at http://connectical.org/overlay

Hope you find it useful :=
Comment 26 Christos Stamatopoulos 2008-09-18 14:28:47 UTC
I used to use the connectical-contrib overlay but now i just cant get to sync at all... I saw that the urls were changed and i tried the new ones but it fails all the time.
I also use my local overlays at the moment

Ps. Thank you for the effort you put to maintain the ebuilds in the overlay.There should be a way to be able to contact you but i could not find to any in order inform you about problems ...
Comment 27 Christos Stamatopoulos 2008-09-18 14:41:00 UTC
As i just compiled the r5u870 i remembered that with the 2.6.25 kernel the 0.11.1 fails while the svn-based compiles without a problem. I dont remember if i had a problem with the 2.6.24.

Sorry for the double post
Comment 28 Flavio 2008-09-30 15:42:47 UTC
My webcam works very well with the r5u870-9999.ebuild driver. My webcam is: a
05ca:1830 Ricoh Co., Ltd .

I am trying to use r5u870 for a similar webcam, but it doesn't work. The webcam is recognized by lsusb as:
05ca:183a Ricoh Co., Ltd

Does anyone have his webcam working? It should be like the last one I mentioned.

Thank you.
Comment 29 Flavio 2008-10-03 07:48:34 UTC
(In reply to comment #28)
> My webcam works very well with the r5u870-9999.ebuild driver. My webcam is: a
> 05ca:1830 Ricoh Co., Ltd .
> 
> I am trying to use r5u870 for a similar webcam, but it doesn't work. The webcam
> is recognized by lsusb as:
> 05ca:183a Ricoh Co., Ltd
> 
> Does anyone have his webcam working? It should be like the last one I
> mentioned.

It works now, with the last svn ebuild.

By the way. I am trying to do such a module-rebuild rebuild but emerging r5u870-9999 I'm not able to download the sources. This is what I get:

* The specific snippet of code:
 *                       ${ESVN_SWITCH_CMD} ${options} ${repo_uri} || die "${ESV                         N}: can't update ${wc_path} from ${repo_uri}";
 *  The die message:
 *   subversion: can't update /usr/portage/distfiles/svn-src/r5u870/trunk from h                         ttp://svn.mediati.org/svn/r5u870/trunk

How can I do now?

Thanks,

Flavio
> 
> Thank you.
> 

Comment 30 Flavio 2008-10-03 08:16:04 UTC
(In reply to comment #29)
> By the way. I am trying to do such a module-rebuild rebuild but emerging
> r5u870-9999 I'm not able to download the sources. This is what I get:
> 
> * The specific snippet of code:
>  *                       ${ESVN_SWITCH_CMD} ${options} ${repo_uri} || die
> "${ESV                         N}: can't update ${wc_path} from ${repo_uri}";
>  *  The die message:
>  *   subversion: can't update /usr/portage/distfiles/svn-src/r5u870/trunk from
> h                         ttp://svn.mediati.org/svn/r5u870/trunk
> 
> How can I do now?
> 
> Thanks,
> 
> Flavio
It seems to work now. Maybe it was a temporary problem with the overlay.

Comment 31 Flavio 2008-10-19 17:18:54 UTC
Same problem with the 2.6.27 kernel:

 * ERROR: media-video/r5u870-9999 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_unpack
 *             environment, line 3205:  Called subversion_src_unpack
 *             environment, line 3454:  Called subversion_fetch
 *             environment, line 3421:  Called die
 * The specific snippet of code:
 *                       ${ESVN_UPDATE_CMD} ${options} || die "${ESVN}: can't up       date ${wc_path} from ${repo_uri}.";
 *  The die message:
 *   subversion: can't update /usr/portage/distfiles/svn-src/r5u870/trunk from h       ttp://svn.mediati.org/svn/r5u870/trunk.
 *
 * If you need support, post the topmost build error, and the call stack if rele       vant.
 * A complete build log is located at '/var/log/portage/media-video:r5u870-9999:       20081019-171645.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-video/r5u87       0-9999/temp/environment'.


Somebody could emerge r5u870 also on the latest kernel version?

Flavio
Comment 32 Flavio 2008-10-19 17:22:52 UTC
I know it's currently broken on 2.6.26 and higher kernel versions... 

I hope they will fix it as soon as possible. :(
Comment 33 Zahra Khani 2009-02-20 13:02:32 UTC
I have this problem with 2.6.28 kernel

 *                                                                      
 * ERROR: media-video/r5u870-0.11.1 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_compile
 *             environment, line 3194:  Called linux-mod_src_compile
 *             environment, line 2457:  Called die
 * The specific snippet of code:
 *               eval "emake HOSTCC="$(tc-getBUILD_CC)"                                              CROSS_COMPILE=${CHOST}-                                          LDFLAGS="$(get_abi_LDFLAGS)"         ${BUILD_FIXES}                                           ${BUILD_PARAMS}                              ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}";
 *  The die message:
 *   Unable to emake HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS=   all
 *
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/tmp/portage/media-video/r5u870-0.11.1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-video/r5u870-0.11.1/temp/environment'.
 * This ebuild is from an overlay: '/usr/local/portage/'
 *

belendax
Comment 34 Flavio 2009-02-20 13:28:10 UTC
(In reply to comment #33)
> I have this problem with 2.6.28 kernel
> 
>  *                                                                      
>  * ERROR: media-video/r5u870-0.11.1 failed.
>  * Call stack:
>  *               ebuild.sh, line   49:  Called src_compile
>  *             environment, line 3194:  Called linux-mod_src_compile
>  *             environment, line 2457:  Called die
>  * The specific snippet of code:
>  *               eval "emake HOSTCC="$(tc-getBUILD_CC)"                        
>                      CROSS_COMPILE=${CHOST}-                                   
>       LDFLAGS="$(get_abi_LDFLAGS)"         ${BUILD_FIXES}                      
>                     ${BUILD_PARAMS}                             
> ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)"
> CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES}
> ${BUILD_PARAMS} ${BUILD_TARGETS}";
>  *  The die message:
>  *   Unable to emake HOSTCC=i686-pc-linux-gnu-gcc
> CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS=   all
>  *
>  * If you need support, post the topmost build error, and the call stack if
> relevant.
>  * A complete build log is located at
> '/var/tmp/portage/media-video/r5u870-0.11.1/temp/build.log'.
>  * The ebuild environment file is located at
> '/var/tmp/portage/media-video/r5u870-0.11.1/temp/environment'.
>  * This ebuild is from an overlay: '/usr/local/portage/'
>  *
> 
> belendax
> 
r5u870 is currently broken on kernels >=2.6.26 !!!
The driver development has be abandoned.
Comment 35 Adrian Perez 2009-02-20 17:28:31 UTC
(In reply to comment #34)
> r5u870 is currently broken on kernels >=2.6.26 !!!
> The driver development has be abandoned.
 
You are right. With kernels >=2.6.26 you can use the "uvcvideo" module instead, but the firmware still needs to be loaded to the webcam's volatile memory. You can use a tool called r5u870x (also by Alex Hixon) for that. I have an ebuild which installs a snapshot taken from the mercurial repository here: https://mine.connectical.com/repositories/entry/contrib/media-video/r5u87x/r5u87x-0_p20081121.ebuild

Just in case someone wants to keep up with this, you can find the code here: http://bitbucket.org/ahixon/r5u87x/overview/ -- I do not have as much free spare time as I used to have :-(
Comment 36 Flavio 2009-02-20 17:32:26 UTC
(In reply to comment #35)
Yes! That's right actually! :-)
I tried to use uvcvideo driver, uploading the firmware each time, but it doesn't work to me.
I don't know why. I should try to with a newer kernel.
Comment 37 Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2009-04-07 18:38:46 UTC
(this is an automated message based on filtering criteria that matched this bug)
'EBUILD' is in the KEYWORDS which should mean that there is a ebuild attached 
to this bug.
This bug is assigned to maintainer-wanted which means that it is not in the 
main tree.
Heuristics show that no Gentoo developer has commented on your ebuild.

Hello, The Gentoo Team would like to firstly thank you for your ebuild 
submission. We also apologize for not being able to accommodate you in a timely
manner. There are simply too many new packages.

Allow me to use this opportunity to introduce you to Gentoo Sunrise. The 
sunrise overlay[1] is a overlay for Gentoo which we allow trusted users to 
commit to and all users can have ebuilds reviewed by Gentoo devs for entry 
into the overlay. So, the sunrise team is suggesting that you look into this 
and submit your ebuild to the overlay where even *you* can commit to. =)

Because this is a mass message, we are also asking you to be patient with us. 
We anticipate a large number of requests in a short time. 

Thanks,
On behalf of the Gentoo Sunrise Team,
Jeremy.

[1]: http://www.gentoo.org/proj/en/sunrise/
[2]: http://overlays.gentoo.org/proj/sunrise/wiki/SunriseFaq
Comment 38 Holger Ackermann 2009-07-10 13:48:59 UTC
Created attachment 197463 [details]
Ebuild that fetches r5u87x from mercurial repository

After successfully installing r5u87x with the ebuild from Adrian Perez (thanks!), I felt that there should be an ebuild that fetches the sources from the project repository, here it is. As I'm not very familiar with hacking ebuilds, you are invited to review and improve this one.

To get the webcam working you have to do the following after installing the package (and after every reboot):
# cd /usr/lib/r5u87x
# ./loader
# modprobe -r uvcvideo
# modprobe uvcvideo
Comment 39 Flavio 2009-07-10 13:54:40 UTC
Did anyone try to get the following webcam working?

05ca:1830 Ricoh Co., Ltd .
Comment 40 Christos Stamatopoulos 2009-07-11 16:05:11 UTC
Created attachment 197570 [details]
Ebuild for 2.6.30 kernel

http://www.palmix.org/r5u870-en.html

Over here they have an updated driver for the 2.6.30 kernel. 
I created an ebuild with what has already been uploaded here that supports x86 and amd64. I already tested the drivers and they were working fine in skype. Feel free to check and correct the ebuild.

Cheers,
Christos
Comment 41 Flavio 2009-07-12 08:17:54 UTC
Great work, but I'm unable to get it compiled.

This is the error which is reported:
>>> Unpacking source...
>>> Unpacking r5u870_k2.6.30_i386.tar.bz2 to /var/tmp/portage/media-video/r5u870-2.6.30/work
/var/tmp/portage/media-video/r5u870-2.6.30/temp/environment: line 3282: cd: /var/tmp/portage/media-video/r5u870-2.6.30/work/r5u870-2.6.30: No such file or directory
>>> Source unpacked in /var/tmp/portage/media-video/r5u870-2.6.30/work
>>> Compiling source in /var/tmp/portage/media-video/r5u870-2.6.30/work ...
/var/tmp/portage/media-video/r5u870-2.6.30/temp/environment: line 2520: cd: /var/tmp/portage/media-video/r5u870-2.6.30/work/r5u870-2.6.30: No such file or directory
/var/tmp/portage/media-video/r5u870-2.6.30/temp/environment: line 2533: cd: /var/tmp/portage/media-video/r5u870-2.6.30/work/r5u870-2.6.30: No such file or directory
ln: creating symbolic link `Module.symvers': File exists
 * Preparing r5u870 module
make -j3 HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS= all
make: *** No rule to make target `all'.  Stop.
 *
 * ERROR: media-video/r5u870-2.6.30 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_compile
 *             environment, line 3277:  Called linux-mod_src_compile
 *             environment, line 2539:  Called die
 * The specific snippet of code:
 *               eval "emake HOSTCC=\"$(tc-getBUILD_CC)\"                                         CROSS_COMPILE=${CHOST}-                                          LDFLAGS=\"$(get_abi_LDFLAGS)\"    ${BUILD_FIXES}                                           ${BUILD_PARAMS}                           ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}";
 *  The die message:
 *   Unable to emake HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS=   all
 *
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/log/portage/media-video:r5u870-2.6.30:20090712-081710.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-video/r5u870-2.6.30/temp/environment'.
 * This ebuild is from an overlay named 'local-repo': '/usr/local/portage/'
 *
Comment 42 Christos Stamatopoulos 2009-07-17 04:54:26 UTC
It has to do with the unpacking of the tar.bz2 which is not done properly for the realease they have for 2.6.30 kernel. I see 2 ways of sorting it out one is to provide a package file so you can get it compiled but i am sure that if I ask the guy he will be more than happy to help and provide a proper package so we dont have to do with option 1.
Comment 43 Flavio 2009-07-17 08:32:27 UTC
(In reply to comment #42)
> It has to do with the unpacking of the tar.bz2 which is not done properly for
> the realease they have for 2.6.30 kernel. I see 2 ways of sorting it out one is
> to provide a package file so you can get it compiled but i am sure that if I
> ask the guy he will be more than happy to help and provide a proper package so
> we dont have to do with option 1.
> 
So you mean we have only to wait for a new package?
Comment 44 Christos Stamatopoulos 2009-07-17 09:46:53 UTC
Created attachment 198270 [details]
Updated Ebuild for 2.6.30 kernel

I mean that i got to sort it out. It was my fault cause i repackaged the thing when i installed it here and then i totally forgot that i've done that. 

It should be working properly now. Let me know if you have any problems.
Comment 45 Flavio 2009-07-17 10:07:36 UTC
Thanks a lot!

This is what I get now:
 * Checking for suitable kernel configuration options...                                                          [ ok ]
>>> Unpacking source...
>>> Unpacking r5u870_k2.6.30_i386.tar.bz2 to /var/tmp/portage/media-video/r5u870-2.6.30/work
/var/tmp/portage/media-video/r5u870-2.6.30/temp/environment: line 3270: cd: /var/tmp/portage/media-video/r5u870-2.6.30/work/r5u870-2.6.30: No such file or directory
>>> Source unpacked in /var/tmp/portage/media-video/r5u870-2.6.30/work
>>> Compiling source in /var/tmp/portage/media-video/r5u870-2.6.30/work ...
/var/tmp/portage/media-video/r5u870-2.6.30/temp/environment: line 2508: cd: /var/tmp/portage/media-video/r5u870-2.6.30/work/r5u870-2.6.30: No such file or directory
/var/tmp/portage/media-video/r5u870-2.6.30/temp/environment: line 2521: cd: /var/tmp/portage/media-video/r5u870-2.6.30/work/r5u870-2.6.30: No such file or directory
ln: creating symbolic link `Module.symvers': File exists
 * Preparing r5u870 module
make -j3 HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS= all
make: *** No rule to make target `all'.  Stop.
 *
 * ERROR: media-video/r5u870-2.6.30 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_compile
 *             environment, line 3265:  Called linux-mod_src_compile
 *             environment, line 2527:  Called die
 * The specific snippet of code:
 *               eval "emake HOSTCC=\"$(tc-getBUILD_CC)\"                                               CROSS_COMPILE=${CHOST}-                                                 LDFLAGS=\"$(get_abi_LDFLAGS)\"                                 ${BUILD_FIXES}                                           ${BUILD_PARAMS}                                                ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}";
 *  The die message:
 *   Unable to emake HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS=   all


Comment 46 Flavio 2009-07-17 10:08:44 UTC
I'm sorry!!!

Ignore my last message.. I forgot to update the ebuild.
Sorry for my inattention.

(In reply to comment #45)
> Thanks a lot!
> 
> This is what I get now:
>  * Checking for suitable kernel configuration options...                       
>                                   [ ok ]
> >>> Unpacking source...
> >>> Unpacking r5u870_k2.6.30_i386.tar.bz2 to /var/tmp/portage/media-video/r5u870-2.6.30/work
> /var/tmp/portage/media-video/r5u870-2.6.30/temp/environment: line 3270: cd:
> /var/tmp/portage/media-video/r5u870-2.6.30/work/r5u870-2.6.30: No such file or
> directory
> >>> Source unpacked in /var/tmp/portage/media-video/r5u870-2.6.30/work
> >>> Compiling source in /var/tmp/portage/media-video/r5u870-2.6.30/work ...
> /var/tmp/portage/media-video/r5u870-2.6.30/temp/environment: line 2508: cd:
> /var/tmp/portage/media-video/r5u870-2.6.30/work/r5u870-2.6.30: No such file or
> directory
> /var/tmp/portage/media-video/r5u870-2.6.30/temp/environment: line 2521: cd:
> /var/tmp/portage/media-video/r5u870-2.6.30/work/r5u870-2.6.30: No such file or
> directory
> ln: creating symbolic link `Module.symvers': File exists
>  * Preparing r5u870 module
> make -j3 HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS=
> all
> make: *** No rule to make target `all'.  Stop.
>  *
>  * ERROR: media-video/r5u870-2.6.30 failed.
>  * Call stack:
>  *               ebuild.sh, line   49:  Called src_compile
>  *             environment, line 3265:  Called linux-mod_src_compile
>  *             environment, line 2527:  Called die
>  * The specific snippet of code:
>  *               eval "emake HOSTCC=\"$(tc-getBUILD_CC)\"                      
>                         CROSS_COMPILE=${CHOST}-                                
>                 LDFLAGS=\"$(get_abi_LDFLAGS)\"                                
> ${BUILD_FIXES}                                           ${BUILD_PARAMS}       
>                                         ${BUILD_TARGETS} " || die "Unable to
> emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}-
> LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}";
>  *  The die message:
>  *   Unable to emake HOSTCC=i686-pc-linux-gnu-gcc
> CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS=   all
> 

Comment 47 Flavio 2009-07-17 10:12:59 UTC
Yes!!!

It perfectly works now!
I could compile this package without any problem.


Thanks a lot, 

Flavio
Comment 48 Christos Stamatopoulos 2009-07-17 10:16:55 UTC
Created attachment 198277 [details]
Updated Ebuild for 2.6.30 kernel

Awesome,
Just a small update so the readme file is also installed properly.
Comment 49 Flavio 2009-07-17 10:19:06 UTC
Now I would like to use this driver.

If I do modprobe r5u870 I get the following:
FATAL: Error inserting r5u870 (/lib/modules/2.6.30-gentoo-r1/media/video/r5u870.ko): Unknown symbol in module, or unknown parameter (see dmesg)

dmesg:
usbcam: Unknown symbol videobuf_dma_free
usbcam: Unknown symbol videobuf_queue_sg_init
usbcam: Unknown symbol videobuf_dma_unmap
usbcam: Unknown symbol videobuf_to_dma
r5u870: Unknown symbol usbcam_ctrl_add
r5u870: Unknown symbol usbcam_curframe_get
r5u870: Unknown symbol usbcam_claim_interface
r5u870: Unknown symbol usbcam_curframe_testpattern
r5u870: Unknown symbol usbcam_urbstream_stop
r5u870: Unknown symbol usbcam_urbstream_start
r5u870: Unknown symbol usbcam_ctrl_add_tmpl
r5u870: Unknown symbol usbcam_urbstream_cleanup
r5u870: Unknown symbol usbcam_register_mod
r5u870: Unknown symbol usbcam_curframe_abortall
r5u870: Unknown symbol usbcam_curframe_complete_detail
r5u870: Unknown symbol usbcam_unregister
r5u870: Unknown symbol usbcam_urbstream_init
r5u870: Unknown symbol usbcam_choose_altsetting
r5u870: Unknown symbol usbcam_ctrl_alloc
r5u870: Unknown symbol usbcam_urbstream_config_iso


Do I need some other module built in in the kernel configuration?
Comment 50 samLT 2009-07-17 13:19:39 UTC
Created attachment 198297 [details]
install-media-video_r5u870-2.6.30:0::local.out

I can't install the r5u870-2.6.30.ebuild

any idea what I'm missing?
Comment 51 Flavio 2009-07-17 13:23:14 UTC
(In reply to comment #50)
> Created an attachment (id=198297) [edit]
> install-media-video_r5u870-2.6.30:0::local.out
> 
> I can't install the r5u870-2.6.30.ebuild
> 
> any idea what I'm missing?
> 
What are the steps you did?
Comment 52 Christos Stamatopoulos 2009-07-17 15:02:27 UTC
Created attachment 198316 [details]
Updated Ebuild for 2.6.30 kernel

Flavio you have missing symbols you have not configured your kernel properly.
You have to either apply this patch vivi-dmasg-config.patch(see attachements of the bug) to the kernel or edit the .config of your kernel and put VIDEOBUF_DMA_SG, VIDEOBUF_GEN and VIDEOBUF_VMALLOC

I will re-enable the ewarn messages for the rest of the users that will meet this problem and also updated the ebuild again. The ebuild now has information about applying the patch as it should to have before.
Comment 53 Christos Stamatopoulos 2009-07-17 15:20:19 UTC
(In reply to comment #50)
> Created an attachment (id=198297) [edit]
> install-media-video_r5u870-2.6.30:0::local.out
> 
> I can't install the r5u870-2.6.30.ebuild
> 
> any idea what I'm missing?
> 

I think that you dont have V4L enabled in your kernel configuration. Do what i said for Flavio and let us know
Comment 54 Flavio 2009-07-17 15:33:51 UTC
Wooow!

God Bless you!
Thank you so much. 
My webcam works again finally!
It's incredible.

Greetings.
Comment 55 samLT 2009-07-17 18:07:09 UTC
Wow, this is the first time I got my webcam(05ca:183a Ricoh Co., Ltd Visual Communication Camera VGP-VCC7 [R5U870] ) working, thank you very much :)

Instead of rebooting, I was doing a ususpend2disk, which was actually why my new kernel wasn't used or something like that...

Here is a one-liner you may find usefull here:
for opt in VIDEO_V4L1 VIDEO_V4L2 VIDEO_V4L1_COMPAT FW_LOADER VIDEO_VIVI V4L_USB_DRIVERS VIDEOBUF_DMA_SG VIDEOBUF_GEN VIDEOBUF_VMALLOC ; do
   zgrep $opt /proc/config.gz || echo "$opt not found"
done


Thanks again!
Comment 56 samLT 2009-07-17 19:56:53 UTC
I tried without the deprecated V4L1:
 <*> Video For Linux                                 
 [ ]   Enable Video For Linux API 1 (DEPRECATED)     
 [*]   Enable Video For Linux API 1 compatible Layer

(unloaded uvcvideo, r5u870 and usbcam modules, uninstalled r5u870, rebuilt and rebooted on the new kernel and the reinstalled r5u870(*) )
And it's working perfectly!

* -> I had to edit the ebuild a bit:
--- r5u870-2.6.30.ebuild.old    2009-07-17 21:50:43.585947785 +0200
+++ r5u870-2.6.30.ebuild        2009-07-17 21:51:29.304948296 +0200
@@ -16,7 +16,7 @@ IUSE=""
 S="${WORKDIR}/${PN}"
 
 MODULE_NAMES="r5u870(media/video:) usbcam/usbcam(media/video:)"
-CONFIG_CHECK="VIDEO_V4L1 VIDEO_V4L2 VIDEO_V4L1_COMPAT FW_LOADER
+CONFIG_CHECK="VIDEO_V4L2 VIDEO_V4L1_COMPAT FW_LOADER
        VIDEO_VIVI V4L_USB_DRIVERS"
 MODULESD_R5U870_DOCS="readme"
 BUILD_TARGETS="all"
@@ -40,7 +40,7 @@ pkg_setup () {
 #      ewarn "the supplied patch and rebuild your kernel, as follows:"
 #      ewarn
 #      ewarn "   # cd /usr/src/linux"
-#      ewarn "   # cat /usr/share/doc/${P}/vivi-dmasg-config.patch \| patch -p1"
+#      ewarn "   # < /usr/share/doc/${P}/vivi-dmasg-config.patch \| patch -p1"
 #      ewarn
 #      ewarn "Alternatively, you can edit the .config file and make sure that"
 #      ewarn "VIDEOBUF_DMA_SG, VIDEOBUF_GEN and VIDEOBUF_VMALLOC are set"


will post, an updated ebuild in a second.

| for opt in VIDEO_V4L1 VIDEO_V4L2 VIDEO_V4L1_COMPAT FW_LOADER VIDEO_VIVI V4L_USB_DRIVERS VIDEOBUF_DMA_SG VIDEOBUF_GEN VIDEOBUF_VMALLOC CONFIG_VIDEO_ALLOW_V4L1 ; do
|    zgrep "$opt=" /proc/config.gz || echo "$opt not found"
| done 
| VIDEO_V4L1 not found
| CONFIG_VIDEO_V4L2=y
| CONFIG_VIDEO_V4L1_COMPAT=y
| CONFIG_FW_LOADER=y
| CONFIG_VIDEO_VIVI=y
| CONFIG_V4L_USB_DRIVERS=y
| CONFIG_VIDEOBUF_DMA_SG=y
| CONFIG_VIDEOBUF_GEN=y
| CONFIG_VIDEOBUF_VMALLOC=y
| CONFIG_VIDEO_ALLOW_V4L1 not found


Comment 57 samLT 2009-07-17 19:57:45 UTC
Created attachment 198357 [details]
r5u870-2.6.30.ebuild
Comment 58 Alejandro Ojeda 2009-08-05 16:33:42 UTC
I cant find CONFIG_VIDEOBUF_DMA_SG.

CONFIG_VIDEO_V4L2=m
CONFIG_VIDEO_V4L1_COMPAT=y
CONFIG_FW_LOADER=y
CONFIG_VIDEO_VIVI=m
CONFIG_V4L_USB_DRIVERS=y
CONFIG_VIDEOBUF_GEN=m
CONFIG_VIDEOBUF_VMALLOC=m

$ cat /usr/src/linux/.config | grep CONFIG_VIDEOBUF_DMA_SG

# lsmod | grep video
videobuf_vmalloc        7372  1 vivi
videobuf_core          18188  2 vivi,videobuf_vmalloc
videodev               38720  1 vivi
v4l1_compat            16396  1 videodev
v4l2_compat_ioctl32    11912  1 videodev

# modprobe r5u870
FATAL: Error inserting r5u870 (/lib/modules/2.6.30-gentoo-r4/media/video/r5u870.ko): Unknown symbol in module, or unknown parameter (see dmesg)

vivi-000: V4L2 device registered as /dev/video0
Video Technology Magazine Virtual Video Capture Board ver 0.6.0 successfully loaded.
usbcam: Unknown symbol videobuf_dma_free
usbcam: Unknown symbol videobuf_queue_sg_init
usbcam: Unknown symbol videobuf_dma_unmap
usbcam: Unknown symbol videobuf_to_dma
r5u870: Unknown symbol usbcam_ctrl_add
r5u870: Unknown symbol usbcam_curframe_get
r5u870: Unknown symbol usbcam_claim_interface
r5u870: Unknown symbol usbcam_curframe_testpattern
r5u870: Unknown symbol usbcam_urbstream_stop
r5u870: Unknown symbol usbcam_urbstream_start
r5u870: Unknown symbol usbcam_ctrl_add_tmpl
r5u870: Unknown symbol usbcam_urbstream_cleanup
r5u870: Unknown symbol usbcam_register_mod
r5u870: Unknown symbol usbcam_curframe_abortall
r5u870: Unknown symbol usbcam_curframe_complete_detail
r5u870: Unknown symbol usbcam_unregister
r5u870: Unknown symbol usbcam_urbstream_init
r5u870: Unknown symbol usbcam_choose_altsetting
r5u870: Unknown symbol usbcam_ctrl_alloc
r5u870: Unknown symbol usbcam_urbstream_config_iso

I'm using linux-2.6.30-gentoo-r4, out of r5u870 compilation:
>>> Installing (1 of 1) media-video/r5u870-2.6.30
 * Removing media-video/r5u870-2.6.30 from moduledb.
 * Updating module dependencies for 2.6.30-gentoo-r4 ...
WARNING: //lib/modules/2.6.30-gentoo-r4/media/video/usbcam.ko needs unknown symbol videobuf_dma_free
WARNING: //lib/modules/2.6.30-gentoo-r4/media/video/usbcam.ko needs unknown symbol videobuf_queue_sg_init
WARNING: //lib/modules/2.6.30-gentoo-r4/media/video/usbcam.ko needs unknown symbol videobuf_dma_unmap
WARNING: //lib/modules/2.6.30-gentoo-r4/media/video/usbcam.ko needs unknown symbol videobuf_to_dma                                                     [ ok ]
 * Adding module to moduledb.
>>> Auto-cleaning packages...

What am i doing bad? Thanks.
Comment 59 Alejandro Ojeda 2009-08-07 18:04:46 UTC
Related with Comment  #58

I do:
# cd /usr/src/linux
# make
# make CONFIG_VIDEOBUF_DMA_SG=m
# make install modules_install

and now r5u870 compile without warnings and dmesg is error clear after load vivi and r5u870:
# modprobe vivi
# modprobe r5u870
# dmesg
...
vivi-000: V4L2 device registered as /dev/video0
Video Technology Magazine Virtual Video Capture Board ver 0.6.0 successfully loaded.
usbcam: registering driver r5u870 0.11.3
r5u870-0: Detected Sony VGP-VCC8
r5u870-0: registered as video1
usbcore: registered new interface driver r5u870

but camera do not work with kopete ¿? What continued doing I wrong? Thanks
Comment 60 Christian Fernandez 2009-08-25 05:38:02 UTC
(In reply to comment #59)
> Related with Comment  #58
> 
> I do:
> # cd /usr/src/linux
> # make
> # make CONFIG_VIDEOBUF_DMA_SG=m
> # make install modules_install
> 
> and now r5u870 compile without warnings and dmesg is error clear after load
> vivi and r5u870:
> # modprobe vivi
> # modprobe r5u870
> # dmesg
> ...
> vivi-000: V4L2 device registered as /dev/video0
> Video Technology Magazine Virtual Video Capture Board ver 0.6.0 successfully
> loaded.
> usbcam: registering driver r5u870 0.11.3
> r5u870-0: Detected Sony VGP-VCC8
> r5u870-0: registered as video1
> usbcore: registered new interface driver r5u870
> 
> but camera do not work with kopete ¿? What continued doing I wrong? Thanks
> 

I'm having the same problem but im using genkernel..
I edited /etc/kernels/kernel-config-x86-2.6.30-gentoo-r5 added
CONFIG_VIDEOBUF_DMA_SG=y 
genkernel all
reboted and still get the usbcam symbol problem in my dmesg for videobuf_dma_unmap, videobuf_to_dma, videobuf_queue_sg_init

whats the issue?
Comment 61 Christos Stamatopoulos 2009-09-17 13:26:35 UTC
The problems that some of you guys have with kopete are not actually related to this ebuild so it should not be brought up here. If you check it, your webcam should work with other software as skype, amsn or just mplayer.

Now regarding kopete since lot people have this problem, the way that kopete works is that it asks solid for available webcams and then solid asks the same thing to HAL. If hal does not recognise any webcam ithere will not be any available to kopete.

I am providing an fdi policy for HAL that will allow proper recognition it so it can be used in kopete.Please dont turn this ebuild bug into a support thread. Remember that you should change the name of your webcam to yours by checking the lshal output (the name should be changed in the part after the string=" of the above line of the fdi file <match key="info.udi" string="/org/freedesktop/Hal/devices/usb_device_5ca_1834_noserial">).Make sure to choose the correct name of the r5u870 video cause there are two similar with one being for imaging.
Place it over at /etc/hal/fdi/information/ and then restart HAL.

This should get it going and i hope you find it helpful


Comment 62 Christos Stamatopoulos 2009-09-17 13:28:54 UTC
Created attachment 204422 [details]
fdi policy for HAL to recognise r5u870 as webcam

I forgot to mention that you will probably need the compatible video for linux layer and i am saying probably cause i have not tested what is going on with the deprecated
Comment 63 Flavio 2010-03-27 11:17:05 UTC
Hello, 

So far, I always used the r5u870-2.6.30.ebuild to compile r5u870 driver for my webcam, but during a recent kernel compilation I noticed that this driver requires the CONFIG_VIDEO_V4L1 (CONFIG_VIDEO_ALLOW_V4L1) module, which is now deprecated. We should use CONFIG_VIDEO_V4L1_COMPAT instead. I don't know if some new module supporting my webcam has been introduced in the kernel, meanwhile, but I would like to use CONFIG_VIDEO_V4L1_COMPAT instead of the deprecated one and I would like to be able to compile r5u870 driver.

Any suggestion?

Flavio
Comment 64 Alejandro Ojeda 2010-05-05 17:02:44 UTC
Created attachment 230487 [details]
fdi policy for HAL to recognise r5u870 as webcam

Last fdi attached is not working for me. I am using this from http://students.ceid.upatras.gr/~asimakis/10-r5u870-webcam.fdi

I have put it on /usr/share/hal/fdi/information/20thirdparty/10-r5u870-webcam.fdi

Load vivi module is not necesary, on this fdi the device is /dev/video0 (changing the device on last fdi do not work)

Only one problem blink the image on Kopete I did not try with other apps (I am using kernel linux-2.6.32-gentoo-r7)
Comment 65 Christos Stamatopoulos 2010-05-27 11:05:06 UTC
(In reply to comment #64)
> Created an attachment (id=230487) [details]
> fdi policy for HAL to recognise r5u870 as webcam
> 
> Last fdi attached is not working for me. I am using this from
> http://students.ceid.upatras.gr/~asimakis/10-r5u870-webcam.fdi
> 
> I have put it on
> /usr/share/hal/fdi/information/20thirdparty/10-r5u870-webcam.fdi
> 
> Load vivi module is not necesary, on this fdi the device is /dev/video0
> (changing the device on last fdi do not work)
> 
> Only one problem blink the image on Kopete I did not try with other apps (I am
> using kernel linux-2.6.32-gentoo-r7)
> 

It should have worked properly if you made the corrections for the name of the device and pointed to the proper video device ( /dev/video? )

On a sidenote this version has problems 2.6.34
Comment 66 Richard H. 2010-06-29 01:56:04 UTC
Which ebuild to use with 2.6.32?
Comment 67 Flavio 2010-06-29 08:19:21 UTC
(In reply to comment #66)
> Which ebuild to use with 2.6.32?
> 
I use r5u870-2.6.30.ebuild even on 2.6.33-gentoo-r2 kernel.

By the way, it would be great if we could use the VIDEO_V4L1_COMPAT module, because the VIDEO_ALLOW_V4L1 is deprecated.
Comment 68 Richard H. 2010-06-30 22:55:59 UTC
It crashes horribly with tuxonice-sources-2.6.32-r7 (amd64 stable)

Means, the module crashes with a null pointer dereference, the application which opened the cam immediately gets a zombie (tried kopete, mplayer) and the whole system enters an unstable state unable to shut down cleanly, nor freeze (suspend, hibernate) at all...

I can provide dumps/traces if needed.
Comment 69 Christos Stamatopoulos 2010-07-01 08:05:37 UTC
I've never tried it with tuxonice so i dont know what is going on there but i may have a look when i have more time. I have to say though that i dont have any problems with the gentoo kernel and its quite weird for this to happen as tuxonice should not have any significant differences apart from the hibernating stuff.

On a different note, i was able to compile it fine with the >=2.6.34 so i will provide an updated ebuild and patches for that sometime soon.

You have to remember though that this project has been dropped and no one is maintaining it at the moment.
Comment 70 Flavio 2010-07-01 08:14:19 UTC
I'm only wandering why the drivers are not yet included in the linux kernel.
Comment 71 Richard H. 2010-07-01 19:32:25 UTC
I tried it with the stable gentoo-sources (2.6.33-r2) and it segfaults just the same way. I have aquired a dump and can give it to anyone who wants to help alongside my .config - it's a Sony Vaio VGN-SZ61WN_X, if it helps.

I just don't want to clutter this bug report too much, so feel free to contact me if you would like to help me. The driver worked very well on 2.6.30 (tuxonice) so far.
Comment 72 Christos Stamatopoulos 2010-07-07 06:23:32 UTC
Created attachment 237841 [details]
r5u870 ebuild for kernels >= 2.6.30

As promised i am providing the ebuild and the patch so you can compile it under 2.6.34.

Made some minor changes to the ebuild so it should detect what kernel version you have and apply patches if necessary. I also changed the naming which was confusing since it implied that it was only for 2.6.30 which was not true.

Let me know if everything is ok.

Cheers,
Christos
Comment 73 Christos Stamatopoulos 2010-07-07 06:24:40 UTC
Created attachment 237843 [details, diff]
patch for r5u870 to compile with kernel >= 2.6.34
Comment 74 Flavio 2010-07-07 08:04:34 UTC
Thank you so much Christos, 

I've just tried on gentoo-sources-2.6.33-r2.
Fortunately, the VIDEO_V4L1 (Video For Linux API 1 (DEPRECATED)) module is not longer necessary.

Furthermore, the vivi-dmasg-config.patch is still necessary, actually during emerge r5u870, it complains about missing symbols. I had to patch the kernel also this time.

I don't know what happens on 2.6.34 kernels.

Thank you, 

Flavio
Comment 75 Christos Stamatopoulos 2010-07-07 09:39:06 UTC
(In reply to comment #74)
> Thank you so much Christos, 
> 
> I've just tried on gentoo-sources-2.6.33-r2.
> Fortunately, the VIDEO_V4L1 (Video For Linux API 1 (DEPRECATED)) module is not
> longer necessary.
> 
> Furthermore, the vivi-dmasg-config.patch is still necessary, actually during
> emerge r5u870, it complains about missing symbols. I had to patch the kernel
> also this time.
> 
> I don't know what happens on 2.6.34 kernels.
> 
> Thank you, 
> 
> Flavio
> 

THe VIDEO_V4L1 was sorted quite some time ago in an ebuild that were provided. Maybe you were using another one ? I was wondering when you asked for that since i already was using it without any problem ! 

As for the patching i think it was not really required for me. If i remember properly the only thing that it does is that it enables the vivi(virtual video driver) which i had enable in my kernel config. Maybe i should add that as a check as well in the ebuild.

Good thing that it works!
Comment 76 Flavio 2010-07-07 09:46:40 UTC
(In reply to comment #75)
> 
> THe VIDEO_V4L1 was sorted quite some time ago in an ebuild that were provided.
> Maybe you were using another one ? I was wondering when you asked for that
> since i already was using it without any problem ! 
Oh, yes maybe I didn't notice that. Anyway, now it's important that all works! :)

> 
> As for the patching i think it was not really required for me.
What kernel version do you use?
I don't know, but it maight be that on 2.6.34, there wouldn't be the warnings about missing symbols. Isn't it?

> If i remember
> properly the only thing that it does is that it enables the vivi(virtual video
> driver) which i had enable in my kernel config. Maybe i should add that as a
> check as well in the ebuild.
Of course VIVI is built in on my kernel. 

> 
> Good thing that it works!
> 
Thank you!
Comment 77 Christos Stamatopoulos 2010-07-07 09:52:05 UTC
(In reply to comment #76)
> (In reply to comment #75)
> > 
> > THe VIDEO_V4L1 was sorted quite some time ago in an ebuild that were provided.
> > Maybe you were using another one ? I was wondering when you asked for that
> > since i already was using it without any problem ! 
> Oh, yes maybe I didn't notice that. Anyway, now it's important that all works!
> :)
> 
> > 
> > As for the patching i think it was not really required for me.
> What kernel version do you use?
> I don't know, but it maight be that on 2.6.34, there wouldn't be the warnings
> about missing symbols. Isn't it?
> 
> > If i remember
> > properly the only thing that it does is that it enables the vivi(virtual video
> > driver) which i had enable in my kernel config. Maybe i should add that as a
> > check as well in the ebuild.
> Of course VIVI is built in on my kernel. 
> 
> > 
> > Good thing that it works!
> > 
> Thank you!
> 

I am using 2.6.34-r1 now but i also went through all flavors of 30,31,32,33 as  well. As you said the important thing is that it works. I may just put back the elog message about the vivi patch so it informs the users.

Thanks for the feedback ! 
Comment 78 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2010-07-10 18:05:39 UTC
The current Sunrise ebuild is outdated and points to an old webpage and non-fetchable distfile. Is anyone here interested in bringing an updated ebuild into Sunrise? If so, please take a look at [1]. Otherwise, I will mask the current Sunrise ebuild for removal in 30 days.

[1] http://overlays.gentoo.org/proj/sunrise
Comment 79 Christos Stamatopoulos 2010-07-10 23:00:30 UTC
(In reply to comment #78)
> The current Sunrise ebuild is outdated and points to an old webpage and
> non-fetchable distfile. Is anyone here interested in bringing an updated ebuild
> into Sunrise? If so, please take a look at [1]. Otherwise, I will mask the
> current Sunrise ebuild for removal in 30 days.
> 
> [1] http://overlays.gentoo.org/proj/sunrise
> 

Bringing the ebuild over to sunrise is probably a good idea to provide this package to more people. I dont think that anyone else is actually maintaining the ebuild so I will have a look at the link you provided and act accordingly.

Only problem is that the package is not supported by upstream anymore, so i am not sure if their webpage will be up in the near future. Additionally, a small patch had to be written to support the .34 kernel, so if in the future i am unable to do so the package will be outdated again...

Thank you for the information.
Comment 80 Alejandro Ojeda 2010-07-11 11:46:43 UTC
(In reply to comment #65)
> It should have worked properly if you made the corrections for the name of the
> device and pointed to the proper video device ( /dev/video? )
> 
> On a sidenote this version has problems 2.6.34
> 

If I change info.udi and video4linux.device, the webcam is working "ok". Sorry for my later response, but best later than never.

Only problem is that the image is blinking (with and without vivi module loaded), I think problem is the light sensor (the frontal light of sensor is blinking at same time that the image).
Comment 81 Flavio 2010-07-27 14:29:39 UTC
I successifully compiled the r5u870 driver under 2.6.34-r1 gentoo kernel but I always get a lot of warnings:

WARNING: //lib/modules/2.6.34-gentoo-r1/media/video/usbcam.ko needs unknown symbol videobuf_dma_free
WARNING: //lib/modules/2.6.34-gentoo-r1/media/video/usbcam.ko needs unknown symbol videobuf_queue_sg_init
WARNING: //lib/modules/2.6.34-gentoo-r1/media/video/usbcam.ko needs unknown symbol videobuf_dma_unmap
WARNING: //lib/modules/2.6.34-gentoo-r1/media/video/usbcam.ko needs unknown symbol videobuf_to_dma 

I don't know how to fix it. Maybe the vivi-dmasg-config.patch or similar is still needed.

Thank you, 

Flavio
Comment 82 Christos Stamatopoulos 2010-07-27 15:05:35 UTC
Created attachment 240331 [details]
r5u870 ebuild for kernels >= 2.6.30 - added the vivi patch ewarn back

There you go an updated ebuild to notify the users about the missing symbols and the vivi-dmasg-config.patch
Comment 83 Flavio 2010-07-27 15:08:21 UTC
(In reply to comment #82)
> Created an attachment (id=240331) [details]
> r5u870 ebuild for kernels >= 2.6.30 - added the vivi patch ewarn back
> 
> There you go an updated ebuild to notify the users about the missing symbols
> and the vivi-dmasg-config.patch 
> 
Well, I solved patching the kernel with the vivi-dmasg-config.patch actually.
Thank you.
Comment 84 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2010-08-05 20:48:46 UTC
The package has been removed from the Sunrise overlay.
Comment 85 Christos Stamatopoulos 2010-09-22 13:19:27 UTC
Created attachment 248353 [details]
updated r5u870 ebuild for kernels >= 2.6.30

This ebuild now supports the newer kernels. I have tested it even with the 2.6.36.
Some patching/changes had to be performed since there have been some function renaming/changes in the v4l upstream which had to be taken care of.

Additionally i changed the ewarn cause personally i had some problems to enable the VIVI. I personally think that the ebuild should not check on VIVI but instead on the actual dependencies.

Actually, everything started when i could not find VIVI in the kernel config and then found all the rest of the stuff that i mentioned while trying to sort the compile problems. I was told that probably its because of some dependency, a font dependency, so i did not bother looking for it.

Let me know your thoughts as well your success/failures in compilations.

I should also mention that i am willing to try and bring this in to the kernel tree so all the community can benefit from it. You can have a look on the problem that I had with VIVI and the rest of the discussions over here
https://bugzilla.kernel.org/show_bug.cgi?id=18472

Cheers,
Christos
Comment 86 Christos Stamatopoulos 2010-09-22 13:43:10 UTC
Created attachment 248357 [details]
updated r5u870 ebuild for kernels >= 2.6.30

Forgot to add the check for the config as well as changed the ewarn message.

I think that the VIDEOBUF_VMALLOC is not really needed and thus i removed it as well from the message.

Again let me know if everythig works fine for you
Comment 87 Christos Stamatopoulos 2010-10-27 12:47:46 UTC
Created attachment 252207 [details]
updated r5u870 ebuild for kernels >= 2.6.30

More changes to v4l from upstream and this I had to change some pointers in the source code. Updated ebuild for anyone who wishes to try it
Comment 88 Christos Stamatopoulos 2010-10-27 12:49:00 UTC
Forgot to mention that the changes are in 2.6.36. With the new ebuild it should compile fine under 2.6.36
Comment 89 Flavio 2010-10-27 12:50:12 UTC
(In reply to comment #87)
Thank you very much Christos.
Comment 90 Flavio 2010-11-03 21:34:30 UTC
Hello, 

I tried the latest ebuild but I can't emerge r5u870.
I tried to perform: make -j3 CONFIG_VIDEOBUF_DMA_SG=m CONFIG_VIDEOBUF_GEN=m
but I get: 
drivers/built-in.o: In function `videobuf_queue_vmalloc_init':
(.text+0x1b1791): undefined reference to `videobuf_queue_core_init'
drivers/built-in.o: In function `videobuf_vm_close':
videobuf-vmalloc.c:(.text+0x1b1a84): undefined reference to `videobuf_queue_cancel'
drivers/built-in.o: In function `vidioc_streamoff':
vivi.c:(.text+0x1b6602): undefined reference to `videobuf_streamoff'
drivers/built-in.o: In function `vidioc_streamon':
vivi.c:(.text+0x1b6632): undefined reference to `videobuf_streamon'
drivers/built-in.o: In function `vidiocgmbuf':
vivi.c:(.text+0x1b6654): undefined reference to `videobuf_cgmbuf'
drivers/built-in.o: In function `vidioc_dqbuf':
vivi.c:(.text+0x1b6678): undefined reference to `videobuf_dqbuf'
drivers/built-in.o: In function `vidioc_qbuf':
vivi.c:(.text+0x1b668c): undefined reference to `videobuf_qbuf'
drivers/built-in.o: In function `vidioc_querybuf':
vivi.c:(.text+0x1b66ac): undefined reference to `videobuf_querybuf'
drivers/built-in.o: In function `vidioc_reqbufs':
vivi.c:(.text+0x1b66cc): undefined reference to `videobuf_reqbufs'
drivers/built-in.o: In function `vidioc_s_fmt_vid_cap':
vivi.c:(.text+0x1b682d): undefined reference to `videobuf_queue_is_busy'
drivers/built-in.o: In function `vivi_close':
vivi.c:(.text+0x1b69ef): undefined reference to `videobuf_stop'
vivi.c:(.text+0x1b69f7): undefined reference to `videobuf_mmap_free'
drivers/built-in.o: In function `buffer_prepare':
vivi.c:(.text+0x1b6c6e): undefined reference to `videobuf_iolock'
drivers/built-in.o: In function `vivi_mmap':
vivi.c:(.text+0x1b6f63): undefined reference to `videobuf_mmap_mapper'
drivers/built-in.o: In function `vivi_poll':
vivi.c:(.text+0x1b701b): undefined reference to `videobuf_poll_stream'
drivers/built-in.o: In function `vivi_read':
vivi.c:(.text+0x1b7073): undefined reference to `videobuf_read_stream'
make: *** [.tmp_vmlinux1] Error 1

So I had to perform again the following command to solve the problem:
cat /usr/local/portage/media-video/r5u870/files/vivi-dmasg-config.patch | patch -p1

and then compile the kernel with make. 
Finally r5u870 got emerged

Thanks, 

Flavio
Comment 91 Flavio 2010-11-03 21:44:12 UTC
By the way: even though I was able to emerge r5u870, now I can't load the module.
The kernel is gentoo-sources-2.6.34-r12.

modprobe r5u870 gives me:
FATAL: Error inserting r5u870 (/lib/modules/2.6.34-gentoo-r12/media/video/r5u870.ko): Unknown symbol in module, or unknown parameter (see dmesg)

And that's what dmesg says:
usbcam: Unknown symbol videobuf_dma_free
usbcam: Unknown symbol videobuf_queue_sg_init
usbcam: Unknown symbol videobuf_dma_unmap
usbcam: Unknown symbol videobuf_to_dma
r5u870: Unknown symbol usbcam_ctrl_add
r5u870: Unknown symbol usbcam_curframe_get
r5u870: Unknown symbol usbcam_claim_interface
r5u870: Unknown symbol usbcam_curframe_testpattern
r5u870: Unknown symbol usbcam_urbstream_stop
r5u870: Unknown symbol usbcam_urbstream_start
r5u870: Unknown symbol usbcam_ctrl_add_tmpl
r5u870: Unknown symbol usbcam_urbstream_cleanup
r5u870: Unknown symbol usbcam_register_mod
r5u870: Unknown symbol usbcam_curframe_abortall
r5u870: Unknown symbol usbcam_curframe_complete_detail
r5u870: Unknown symbol usbcam_unregister
r5u870: Unknown symbol usbcam_urbstream_init
r5u870: Unknown symbol usbcam_choose_altsetting
r5u870: Unknown symbol usbcam_ctrl_alloc
r5u870: Unknown symbol usbcam_urbstream_config_iso

Best regards, 

Flavio
Comment 92 Richard H. 2010-11-04 15:11:27 UTC
I finally got this to work. Guess what, no patches, no problems, no oopses, no segfaults. everything works fine! It seems to be the more proper way to do - it's using the original firmware.

Take a look: http://bitbucket.org/ahixon/r5u87x/

Maybe someone wanna do an ebuild? ;)
Comment 93 Flavio 2010-11-04 15:13:46 UTC
(In reply to comment #92)
> I finally got this to work. Guess what, no patches, no problems, no oopses, no
> segfaults. everything works fine! It seems to be the more proper way to do -
> it's using the original firmware.
> 
> Take a look: http://bitbucket.org/ahixon/r5u87x/
> 
> Maybe someone wanna do an ebuild? ;)
Really?? I hope so!!!  

Comment 94 Christos Stamatopoulos 2010-11-04 21:08:40 UTC
Hello,
I'll put bug the patch information in the e-warn thanks for mentioning that ! I just removed since i have not heard anyone needing it.


As for the r5u87x it is really good and its probably better to use that one but there is a big problem there. the WDM models of this drivers are not supported by that and neither some other models. In that case using the above driver is the only option and this is why i have been taking care of it.
Comment 95 Christos Stamatopoulos 2010-11-04 21:09:14 UTC
I'll put back is what i meant and not I'll put bug hehe
Comment 96 Flavio 2010-11-04 21:34:08 UTC
Thank you, but in any case I can't modprobe the module as mentioned in comment #93
Comment 97 Christos Stamatopoulos 2010-11-05 10:40:04 UTC
Created attachment 253267 [details]
updated r5u870 ebuild for kernels >= 2.6.30

Warning for the patch is back as requested.
Comment 98 Christos Stamatopoulos 2010-11-05 10:41:03 UTC
(In reply to comment #96)
> Thank you, but in any case I can't modprobe the module as mentioned in comment
> #93
> 

For me it does not work either cause my camera is a WDM which is not supported by the UVC
Comment 99 Flavio 2010-11-05 13:11:11 UTC
I tried to compile with the latest ebuild you submitted but emerge fails:
  LD [M]  /var/tmp/portage/media-video/r5u870-2.6.3x/work/r5u870/r5u870.ko
  LD [M]  /var/tmp/portage/media-video/r5u870-2.6.3x/work/r5u870/usbcam/usbcam.ko
make[1]: Leaving directory `/usr/src/linux-2.6.34-gentoo-r12'
>>> Source compiled.
>>> Test phase [not enabled]: media-video/r5u870-2.6.3x

>>> Install r5u870-2.6.3x into /var/tmp/portage/media-video/r5u870-2.6.3x/image/ category media-video
 * Installing r5u870 module
install: cannot stat `r5u870.': No such file or directory
!!! doins: r5u870. does not exist
doins failed

I really don't know what it happens.
Comment 100 Christos Stamatopoulos 2010-11-05 14:07:50 UTC
Created attachment 253281 [details]
updated r5u870 ebuild for kernels >= 2.6.30

Well that was my fault since I forgot to put 
"linux-mod_pkg_setup"
after i changed the ewarn. Sorry for that, it should work fine now !
Comment 101 Flavio 2010-11-05 14:12:22 UTC
(In reply to comment #100)
> after i changed the ewarn. Sorry for that, it should work fine now ! 
No problem! It actually works now, but I still have the problem reported in comment #91.
I can't modprobe the module. Maybe I'm doing something wrong now, but what? ^_^ 

Comment 102 Flavio 2010-11-05 14:32:33 UTC
(In reply to comment #101)
> I can't modprobe the module. Maybe I'm doing something wrong now, but what? ^_^ 
I'm sorry, I can answer by myself: I forgot to recompile and reboot with the new kernel after applying the patch. -_-

Too much work! :)

Thanks a lot.

Flavio

Comment 103 Flavio 2011-01-04 18:57:15 UTC
Hello, 

here again with another compilation problem.
Unfortunately, after patching and upgrading to gentoo-sources-2.6.36-r5, and after rebooting, I can't emerge r5u870.

================================================================================
* Messages for package media-video/r5u870-2.6.3x:

 * If you get warnings about missing symbols, you may need to apply
 * the supplied patch and rebuild your kernel, as follows:
 * 
 *    # cd /usr/src/linux
 *    # cat /usr/share/doc/r5u870-2.6.3x/vivi-dmasg-config.patch \| patch -p1
 * 
 * Alternatively, you can edit the .config file and make sure that
 * VIDEOBUF_DMA_SG, VIDEOBUF_GEN and VIDEOBUF_VMALLOC are set
 *   CONFIG_VIDEOBUF_DMA_SG:     is not set when it should be.
 *   CONFIG_VIDEOBUF_GEN:        is not set when it should be.
 * Please check to make sure these options are set correctly.
 * Failure to do so may cause unexpected problems.
 * Once you have satisfied these options, please try merging
 * this package again.
 * ERROR: media-video/r5u870-2.6.3x failed:
 *   Incorrect kernel configuration options
 * 
 * Call stack:
 *              ebuild.sh, line  56:  Called pkg_setup
 *   r5u870-2.6.3x.ebuild, line  54:  Called linux-mod_pkg_setup
 *       linux-mod.eclass, line 585:  Called linux-info_pkg_setup
 *      linux-info.eclass, line 905:  Called check_extra_config
 *      linux-info.eclass, line 799:  Called die
 * The specific snippet of code:
 *              die "Incorrect kernel configuration options"
 * 
 * If you need support, post the output of 'emerge --info =media-video/r5u870-2.6.3x',
 * the complete build log and the output of 'emerge -pqv =media-video/r5u870-2.6.3x'.
 * This ebuild is from an overlay named 'local-repo': '/usr/local/portage/'
 * The complete build log is located at '/var/log/portage/media-video:r5u870-2.6.3x:20110104-184503.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-video/r5u870-2.6.3x/temp/die.env'.
 * S: '/var/tmp/portage/media-video/r5u870-2.6.3x/work/r5u870'
================================================================================

I'm still wandering why, it is not possible to have the drivers into the kernel.
I have this notebook since December of 2006! Four years ago! This webcam should be supported natively!
Comment 104 Christos Stamatopoulos 2011-01-04 23:37:20 UTC
I really have not clue what is going wrong over there cause you did not provide enough information. I had no problem compiling it with 2.6.36-r5 and r6.

If you want you can provide the complete compilation log so i can see what is going on. As for the upstream kernel i had a bug opened and i offered to help but i guess nothing is happening as for some of the devices you can get it working with the userspace tools. Have you tried with r5u87x ? Maybe it works and you wont have to worry about it any more.


Christos



(In reply to comment #103)
> Hello, 
> 
> here again with another compilation problem.
> Unfortunately, after patching and upgrading to gentoo-sources-2.6.36-r5, and
> after rebooting, I can't emerge r5u870.
> 
> ================================================================================
> * Messages for package media-video/r5u870-2.6.3x:
> 
>  * If you get warnings about missing symbols, you may need to apply
>  * the supplied patch and rebuild your kernel, as follows:
>  * 
>  *    # cd /usr/src/linux
>  *    # cat /usr/share/doc/r5u870-2.6.3x/vivi-dmasg-config.patch \| patch -p1
>  * 
>  * Alternatively, you can edit the .config file and make sure that
>  * VIDEOBUF_DMA_SG, VIDEOBUF_GEN and VIDEOBUF_VMALLOC are set
>  *   CONFIG_VIDEOBUF_DMA_SG:     is not set when it should be.
>  *   CONFIG_VIDEOBUF_GEN:        is not set when it should be.
>  * Please check to make sure these options are set correctly.
>  * Failure to do so may cause unexpected problems.
>  * Once you have satisfied these options, please try merging
>  * this package again.
>  * ERROR: media-video/r5u870-2.6.3x failed:
>  *   Incorrect kernel configuration options
>  * 
>  * Call stack:
>  *              ebuild.sh, line  56:  Called pkg_setup
>  *   r5u870-2.6.3x.ebuild, line  54:  Called linux-mod_pkg_setup
>  *       linux-mod.eclass, line 585:  Called linux-info_pkg_setup
>  *      linux-info.eclass, line 905:  Called check_extra_config
>  *      linux-info.eclass, line 799:  Called die
>  * The specific snippet of code:
>  *              die "Incorrect kernel configuration options"
>  * 
>  * If you need support, post the output of 'emerge --info
> =media-video/r5u870-2.6.3x',
>  * the complete build log and the output of 'emerge -pqv
> =media-video/r5u870-2.6.3x'.
>  * This ebuild is from an overlay named 'local-repo': '/usr/local/portage/'
>  * The complete build log is located at
> '/var/log/portage/media-video:r5u870-2.6.3x:20110104-184503.log'.
>  * The ebuild environment file is located at
> '/var/tmp/portage/media-video/r5u870-2.6.3x/temp/die.env'.
>  * S: '/var/tmp/portage/media-video/r5u870-2.6.3x/work/r5u870'
> ================================================================================
> 
> I'm still wandering why, it is not possible to have the drivers into the
> kernel.
> I have this notebook since December of 2006! Four years ago! This webcam should
> be supported natively!
> 

Comment 105 Flavio 2011-01-05 12:11:34 UTC
(In reply to comment #104)
> I really have not clue what is going wrong over there cause you did not provide
> enough information. I had no problem compiling it with 2.6.36-r5 and r6.
I'm sorry, I will attach the complete build log, and the ebuild environment file.

> 
> If you want you can provide the complete compilation log so i can see what is
> going on. 
Note that there is no compilation error. It doesn't start.

> As for the upstream kernel i had a bug opened and i offered to help
> but i guess nothing is happening as for some of the devices you can get it
> working with the userspace tools. Have you tried with r5u87x ? Maybe it works
> and you wont have to worry about it any more.
I was using it in the past, but I had problems and I switched to this one, which worked since so far.

Thanks, 

Flavio
Comment 106 Flavio 2011-01-05 12:12:24 UTC
Created attachment 258908 [details]
ebuild environment file
Comment 107 Flavio 2011-01-05 12:12:53 UTC
Created attachment 258910 [details]
complete build log
Comment 108 Christos Stamatopoulos 2011-01-05 12:43:53 UTC
The error is here :
 *   Checking for suitable kernel configuration options...
 *   CONFIG_VIDEOBUF_DMA_SG:     is not set when it should be.
 *   CONFIG_VIDEOBUF_GEN:        is not set when it should be

So it means that you have not configured your kernel properly. Have you applied the patch ?
Try this
   # cd /usr/src/linux"
   # make CONFIG_VIDEOBUF_DMA_SG=m CONFIG_VIDEOBUF_GEN=m"
   # make modules_install"
and then emerge the r5u870

(In reply to comment #107)
> Created an attachment (id=258910) [details]
> complete build log
> 

Comment 109 Flavio 2011-01-05 12:52:46 UTC
> So it means that you have not configured your kernel properly. Have you applied
> the patch ?
Yes, as already said in comment #103, yes. I patched the kernel, of course!

> Try this
>    # cd /usr/src/linux"
>    # make CONFIG_VIDEOBUF_DMA_SG=m CONFIG_VIDEOBUF_GEN=m"
>    # make modules_install"
> and then emerge the r5u870
I've never had the necessity to do this. I always patch and compile the kernel.
Furthermore, I don't have these two modules in my .config.
Comment 110 Christos Stamatopoulos 2011-01-05 12:58:25 UTC
Even before these :
"VIDEOBUF_DMA_SG, VIDEOBUF_GEN and VIDEOBUF_VMALLOC"
had to be set. You can see this be checking an old ebuild for example 0.11.0.

By doing what i mentioned above they will be included in your .config and get compiled hopefully hehe. Its not a compilation issue but a dependency issue as you see.


(In reply to comment #109)
> > So it means that you have not configured your kernel properly. Have you applied
> > the patch ?
> Yes, as already said in comment #103, yes. I patched the kernel, of course!
> 
> > Try this
> >    # cd /usr/src/linux"
> >    # make CONFIG_VIDEOBUF_DMA_SG=m CONFIG_VIDEOBUF_GEN=m"
> >    # make modules_install"
> > and then emerge the r5u870
> I've never had the necessity to do this. I always patch and compile the kernel.
> Furthermore, I don't have these two modules in my .config.
> 

Comment 111 Ilia Pozhilov 2011-01-05 13:00:15 UTC
(In reply to comment #110)
> > Furthermore, I don't have these two modules in my .config.
You can take a look at this short topic at forums, it is related to this issue.

http://forums.gentoo.org/viewtopic-t-857676.html
Comment 112 Christos Stamatopoulos 2011-01-05 13:01:32 UTC
Even before these :
"VIDEOBUF_DMA_SG, VIDEOBUF_GEN and VIDEOBUF_VMALLOC"
had to be set. You can see this be checking an old ebuild for example 0.11.0.

By doing what i mentioned above they will be included in your .config and get compiled hopefully hehe. Its not a compilation issue but a dependency issue as you see.


(In reply to comment #109)
> > So it means that you have not configured your kernel properly. Have you applied
> > the patch ?
> Yes, as already said in comment #103, yes. I patched the kernel, of course!
> 
> > Try this
> >    # cd /usr/src/linux"
> >    # make CONFIG_VIDEOBUF_DMA_SG=m CONFIG_VIDEOBUF_GEN=m"
> >    # make modules_install"
> > and then emerge the r5u870
> I've never had the necessity to do this. I always patch and compile the kernel.
> Furthermore, I don't have these two modules in my .config.
> 

Comment 113 Christos Stamatopoulos 2011-01-05 13:05:51 UTC
Virtual Video Driver will indeed enable all the above modules to be build but its not good to depend on this driver as its there only to provide an example of how you should implement drivers.

Thus the Virtual Video Driver was removed and the dependencies were set explicitly...


(In reply to comment #111)
> (In reply to comment #110)
> > > Furthermore, I don't have these two modules in my .config.
> You can take a look at this short topic at forums, it is related to this issue.
> 
> http://forums.gentoo.org/viewtopic-t-857676.html
> 

Comment 114 Flavio 2011-01-05 13:41:28 UTC
(In reply to comment #113)
> Virtual Video Driver will indeed enable all the above modules to be build but
> its not good to depend on this driver as its there only to provide an example
> of how you should implement drivers.
> 
> Thus the Virtual Video Driver was removed and the dependencies were set
> explicitly...
So, here's why the problem arisen.
Now that I could explicitly select these modules "VIDEOBUF_DMA_SG, VIDEOBUF_GEN and VIDEOBUF_VMALLOC", finally I can compile r5u870!

Thank you friends, 

Best regards!
Comment 115 Christos Stamatopoulos 2011-01-15 23:53:47 UTC
Created attachment 259980 [details]
updated r5u870 ebuild to support recent 2.6.37 kernel changes

Recent locking related videobuf changes make the r5u870 to not be compiled with 2.6.37. I had a look at it and with some changes in the source code to comply with the changes made in the kernel it is possible to have it working. 

For that to happen a patch was written and an updated ebuild is provided. Let me know if you have any issues.

Christos
Comment 116 Christos Stamatopoulos 2011-01-15 23:55:35 UTC
Created attachment 259982 [details]
patch for r5u870 to compile with kernel >= 2.6.37
Comment 117 MrTAZ 2011-02-13 15:37:40 UTC
Did you test your last patch?
It doesn't may to work.
You missed a change, vmalloc to vaddr.
And videobuf_dma_unmap(vq, dma) change too...
Now, videobuf_dma_unmap(vq->dev, dma)
Can you tell me your experience.

(In reply to comment #116)
> Created an attachment (id=259982) [details]
> patch for r5u870 to compile with kernel >= 2.6.37
> 

Comment 118 Christos Stamatopoulos 2011-02-13 20:47:36 UTC
Are you sure you are applying the patch ? I might have missed some changes as you say but it compiles fine over here... Can you point where i missed the changes ? Also can you provide your compilation log ? 


(In reply to comment #117)
> Did you test your last patch?
> It doesn't may to work.
> You missed a change, vmalloc to vaddr.
> And videobuf_dma_unmap(vq, dma) change too...
> Now, videobuf_dma_unmap(vq->dev, dma)
> Can you tell me your experience.
> 
> (In reply to comment #116)
> > Created an attachment (id=259982) [details] [details]
> > patch for r5u870 to compile with kernel >= 2.6.37
> > 
> 

Comment 119 Christos Stamatopoulos 2011-02-13 20:58:46 UTC
Mhm this is just a hunch but are you using gentoo ? I am asking this cause the changes of vmalloc to vaddr you are talking about are all taken care of inside the ebuild.... Its not the only thing that i apply to compile it for kernel 2.6.37

Have a look at the ebuild. The stuff that I pasted below are applied sequentially.

        kernel_is ge 2 6 34 && epatch "${FILESDIR}/${PN}-2.6.34_fix.patch"
        if kernel_is ge 2 6 35 ; then
                cd "${WORKDIR}/r5u870/usbcam/"
                sed -i 's/usb_buffer_alloc/usb_alloc_coherent/g' usbcam_util.c
                sed -i 's/usb_buffer_free/usb_free_coherent/g' usbcam_util.c
        fi
        kernel_is ge 2 6 36 && sed -i 's/vmalloc/vaddr/g' usbcam_buf.c
        kernel_is ge 2 6 37 && epatch "${FILESDIR}/${PN}-2.6.37_fix.patch"



(In reply to comment #117)
> Did you test your last patch?
> It doesn't may to work.
> You missed a change, vmalloc to vaddr.
> And videobuf_dma_unmap(vq, dma) change too...
> Now, videobuf_dma_unmap(vq->dev, dma)
> Can you tell me your experience.
> 
> (In reply to comment #116)
> > Created an attachment (id=259982) [details] [details]
> > patch for r5u870 to compile with kernel >= 2.6.37
> > 
> 

Comment 120 Ilia Pozhilov 2011-04-27 09:12:32 UTC
Created attachment 271303 [details]
dmesg output
Comment 121 Ilia Pozhilov 2011-04-27 09:20:02 UTC
Hi, folks. This driver stopped working for me in 2.6.37-r4
Any changes that I could remember is migration to a new HDD and turning off the swap partition (although, it worked even after these changes, but only once).

Kernel options changes included USB_SUSPEND for a while, but I tried it both ways, to no avail.

I added some memory to my notebook, 4Gb instead of 3Gb, that I believe, all the manipulations to it before the failure.

The failure is as follows, when I try to issue, for example «mplayer tv://», I get the output attached in the previous comment.

Interesting thing is that depending on the option CONFIG_USB_SUSPEND in the kernel, the behaviour is different:
 - if it's off, I get the attached kernel oops,
 - if it's on, mplayer tv:// outputs that the device is temporarily unavailable without messages in dmesg, even if I supply autosuspend=-1 to usbcore on startup or write this value in the /sys/.../power/autosuspend for webcam particularly.

Any additional info that you need?
Comment 122 Ilia Pozhilov 2011-04-29 07:36:05 UTC
(In reply to comment #121)
There's some info on the internet that the cause of these problems could be in the firmware loading phase. Is there a way to verify that the firmware is loaded correctly? Any ideas at all on the possible causes?
Comment 123 Ilia Pozhilov 2011-04-30 12:32:50 UTC
(In reply to comment #122)
> (In reply to comment #121)
> There's some info on the internet that the cause of these problems could be in
> the firmware loading phase. Is there a way to verify that the firmware is
> loaded correctly? Any ideas at all on the possible causes?

Downgrading to 2.6.36-gentoo-r8 didn't help. This version of kernel was tested very well. Strange.
The behaviour is the same: it depends on the USB_SUSPEND option, which should be a clue, but not for me unfortunately.
Comment 124 Ilia Pozhilov 2011-05-05 20:23:46 UTC
(In reply to comment #123)
> (In reply to comment #122)
> > (In reply to comment #121)
> > There's some info on the internet that the cause of these problems could be in
> > the firmware loading phase. Is there a way to verify that the firmware is
> > loaded correctly? Any ideas at all on the possible causes?
> 
> Downgrading to 2.6.36-gentoo-r8 didn't help. This version of kernel was tested
> very well. Strange.
> The behaviour is the same: it depends on the USB_SUSPEND option, which should
> be a clue, but not for me unfortunately.

Now here the rootkit! When I remove 2Gb of RAM (leaving it with another 2), it works!
It worked for sure with 3, so something tells me that this is about 32 bit things... But just a guess.
Are there anybody familiar with the driver itself? I think I have to look into the sources, or maybe someone has guessed the problem already?
Comment 125 Ilia Pozhilov 2011-05-07 10:36:44 UTC
(In reply to comment #124)
Ok, it looks like this is about iommu and 32bit-only DMA devices, unrelated to the driver itself.
Comment 126 Flavio 2011-05-19 18:37:02 UTC
We have a real problem now.

I've already told in comment #63, about the V4L1 module which has been deprecated.
Now, in the new 2.6.38 kernel and higher versions the VIDEO_V4L1_COMPAT module is no longer present! We have to say good bye to our webcam unless somebody write a new driver for it, or we don't upgrade the kernel anymore.

It did happen what it was preannounced.

What to do now?

Flavio
Comment 127 Flavio 2011-06-25 09:11:12 UTC
Webcam down for the eternity?
Just to know if it is the case to buy a new one.
Comment 128 Christos Stamatopoulos 2011-06-25 09:18:07 UTC
(In reply to comment #127)
> Webcam down for the eternity?
> Just to know if it is the case to buy a new one.

I have been writing patches to keep this going till now but unfortunately i dont have the time to rewrite the driver. As i dont know much about v4l2 it would take me more time to do it anyway...

I dont use my camera that often to be honest, so I've just kept a 2.6.37 kernel that i use when i want to use the webcam. In all other cases I just use the latest... Might be troublesome but it is ok for me.

Maybe someone will write a new version or maybe i will have some free time in the future and decide to do it. i guess no one can promise anything so decide what is best for you.
Comment 129 Flavio 2011-06-25 09:31:42 UTC
(In reply to comment #128) 
> I have been writing patches to keep this going till now but unfortunately i
> dont have the time to rewrite the driver. As i dont know much about v4l2 it
> would take me more time to do it anyway...
I appreciate your work very much. Don't worry if you don't have the time to rewrite the driver. I don't know about v4l2 too, so I can't help.

> 
> I dont use my camera that often to be honest, 
Me too. But sometime it is necessary, especially if I am far from home.

> so I've just kept a 2.6.37 kernel
> that i use when i want to use the webcam. In all other cases I just use the
> latest... Might be troublesome but it is ok for me.
That is the same solution of mine. There are no alternative actually.

> 
> Maybe someone will write a new version or maybe i will have some free time in
> the future and decide to do it. i guess no one can promise anything so decide
> what is best for you.
Never say never but I'm not hopeful anymore. This has not been done in the last five years, so I don't think it will happen now! 

Thank you very much.
Comment 130 Jessica Leigh 2011-07-13 14:12:27 UTC
Hey, I'm running a 2.6.38 kernel, and I emerged this driver back when I was using 2.6.31, and sort of forgot about it because it somehow kept working whenever I compiled a new kernel. I did something screwy and ended up having to unmerge r5u870, so I tried installing the 2.6.3x ebuild with the 2.6.34 and 2.6.37 patches while running my old 2.6.37 kernel, and it also still works with my 2.6.38 kernel.

Again, I don't understand how this is possible, but my advice is compile the driver against 2.6.37, then cross your fingers and keep trying to use it with newer kernels.
Comment 131 Barca 2012-01-29 00:50:22 UTC
Hello,
thank you for this driver :) Is it possible to see ebuild and patch for kernel 3.X?
Comment 132 Flavio 2012-01-29 08:31:04 UTC
(In reply to comment #131)
> Hello,
> thank you for this driver :) Is it possible to see ebuild and patch for kernel
> 3.X?

No please! :D :P Just now that I've bought a new webcam for my laptop!