r5u870

Ricoh R5U870 Linux Driver
git clone https://logand.com/git/r5u870.git/
Log | Files | Refs | README | LICENSE

commit d86c2d34113650f95cee3017d63bea2b0109c8da
parent 634557bf4dab7bf39eabc901184f3b8572bfb3d7
Author: alex <alex@022568fa-442e-4ef8-a3e8-54dcafdb011a>
Date:   Wed, 16 Jan 2008 21:53:14 +0000

* Added support for 183b UVC camera.
* Empty out R5U870_VERSION_EXTRA value.


git-svn-id: http://svn.mediati.org/svn/r5u870/trunk@34 022568fa-442e-4ef8-a3e8-54dcafdb011a

Diffstat:
MChangeLog | 6++++++
MMakefile | 2+-
Mr5u870.c | 25++++++++++++++++++++++++-
Ar5u870_183b.fw | 0
4 files changed, 31 insertions(+), 2 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -1,3 +1,9 @@ +2008-01-17 Alexander Hixon <hixon.alexander@mediati.org> + * r5u870.c, r5u870_183b.fw, Makefile: Added support for 183b UVC + camera. Still not sure about all the WDM controls it supports. + * r5u870.c: Remove R5U870_VERSION_EXTRA value, since we're at 0.11.0 - + original device driver never used this version. + 2008-01-16 Alexander Hixon <hixon.alexander@mediati.org> * ChangeLog: Reformat changelog style, and added missing entries. * KBuild, usbcam/usbcam_priv.h, usbcam/usbcam.h, usbcam/usbcam_fops.c, diff --git a/Makefile b/Makefile @@ -26,7 +26,7 @@ FWDIR ?= /lib/firmware # Old module name to detect and complain about when installing OLD_MODULE_NM = ry5u870.ko -FWFILES = r5u870_1830.fw r5u870_1832.fw r5u870_1833.fw r5u870_1834.fw r5u870_1835.fw r5u870_1836.fw r5u870_1870_1.fw r5u870_1870.fw r5u870_1810.fw r5u870_183a.fw +FWFILES = r5u870_1830.fw r5u870_1832.fw r5u870_1833.fw r5u870_1834.fw r5u870_1835.fw r5u870_1836.fw r5u870_1870_1.fw r5u870_1870.fw r5u870_1810.fw r5u870_183a.fw r5u870_183b.fw ifneq ($(KERNELRELEASE),) include $(src)/Kbuild diff --git a/r5u870.c b/r5u870.c @@ -70,7 +70,7 @@ #define r5u_dbg(RV, SUBSYS, FMT...) usbcam_dbg((RV)->vh_parent, SUBSYS, FMT) #define R5U870_VERSION KERNEL_VERSION(0,11,0) -#define R5U870_VERSION_EXTRA "halex" +#define R5U870_VERSION_EXTRA "" struct r5u870_resolution { @@ -867,6 +867,7 @@ enum { static const char *r5u870_powerline_names[] = { "Off", "50Hz", "60Hz" }; +/* TODO: Use our own internal control IDs, instead of crap unmerged ones. */ static struct r5u870_ctrl r5u870_wdm_ctrls[] = { [R5U870_WDM_CTRL_BRIGHTNESS] = { @@ -2653,6 +2654,19 @@ static const int r5u870_1810_183a_ctrls[] = { R5U870_WDM_CTRL_NIGHTMODE, R5U870_WDM_CTRL_LAST, }; +static const int r5u870_1810_183b_ctrls[] = { + /* TODO: Maybe there are more of these? I don't actually have a webcam + to test against the different WDM controls. */ + R5U870_WDM_CTRL_WB_RED, + R5U870_WDM_CTRL_WB_GREEN, + R5U870_WDM_CTRL_WB_BLUE, + R5U870_WDM_CTRL_WB_AUTO, + R5U870_WDM_CTRL_VFLIP, + R5U870_WDM_CTRL_HFLIP, + R5U870_WDM_CTRL_PRIVACY, + R5U870_WDM_CTRL_NIGHTMODE, + R5U870_WDM_CTRL_LAST, +}; /* @@ -2716,6 +2730,7 @@ enum { R5U870_DI_VGP_VCC5, R5U870_DI_VGP_VCC4, R5U870_DI_VGP_VCC7, + R5U870_DI_VGP_VCC8, R5U870_DI_HP_WEBCAM1K, R5U870_DI_HP_PAVWC_WDM, R5U870_DI_HP_PAVWC_UVC, @@ -2777,6 +2792,13 @@ static const struct r5u870_model r5u870_models[] = { .rm_wdm_ctrlids = r5u870_1810_183a_ctrls, .rm_uvc = 1, }, + [R5U870_DI_VGP_VCC8] = { + .rm_name = "Sony VGP-VCC8", + .rm_ucode_file = "r5u870_183b.fw", + .rm_ucode_version = 0x0111, + .rm_wdm_ctrlids = r5u870_1810_183b_ctrls, + .rm_uvc = 1, + }, [R5U870_DI_HP_WEBCAM1K] = { .rm_name = "HP Webcam 1000", .rm_ucode_file = "r5u870_1870_1.fw", @@ -2875,6 +2897,7 @@ static const struct usb_device_id id_table[] = { { R5U870_DEVICE_UVC(0x05CA, 0x1835, R5U870_DI_VGP_VCC5) }, { R5U870_DEVICE_UVC(0x05CA, 0x1836, R5U870_DI_VGP_VCC4) }, { R5U870_DEVICE_UVC(0x05CA, 0x183a, R5U870_DI_VGP_VCC7) }, + { R5U870_DEVICE_UVC(0x05CA, 0x183b, R5U870_DI_VGP_VCC8) }, { }, }; diff --git a/r5u870_183b.fw b/r5u870_183b.fw Binary files differ.