linux/drivers/media/usb/gspca
Mauro Carvalho Chehab 559addc25b [media] fixp-arith: replace sin/cos table by a better precision one
The cos table used at fixp-arith.h has only 8 bits of precision.
That causes problems if it is reused on other drivers.

As some media drivers require a higher precision sin/cos
implementation, replace the current implementation by one that
will provide 32 bits precision.

The values generated by the new implementation matches the
32 bit precision of glibc's sin for an angle measured in
integer degrees.

It also provides support for fractional angles via linear
interpolation. On experimental calculus, when used a table
with a 0.001 degree angle, the maximum error for sin is
0.000038, which is likely good enough for practical purposes.

There are some logic there that seems to be specific to the
usage inside ff-memless.c. Move those logic to there, as they're
not needed elsewhere.

Cc: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Signed-off-by: Prashant Laddha <prladdha@cisco.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2015-03-02 14:50:06 -03:00
..
gl860 [media] gspca_gl860: Clean up idxdata structs 2014-04-16 18:13:56 -03:00
m5602 [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
stv06xx [media] gspca_stv06xx: enable button found on some Quickcam Express variant 2015-01-29 18:27:25 -02:00
autogain_functions.c [media] Fix 64-bit division fall-out from 64-bit control ranges 2014-07-17 12:44:38 -03:00
benq.c [media] gspca: Remove gspca-specific debug magic 2013-03-05 15:13:48 -03:00
conex.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
cpia1.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
dtcs033.c [media] media:gspca:dtcs033 Clean sparse check warnings on endianess 2014-04-23 10:07:52 -03:00
etoms.c [media] gspca: remove obsolete Kconfig macros 2013-03-29 08:19:26 -03:00
finepix.c [media] gspca: Update / fix various comments wrt workqueue usb_lock usage 2012-09-13 17:52:58 -03:00
gspca.c [media] gspca: Fix underflow in vidioc_s_parm() 2015-01-29 18:28:16 -02:00
gspca.h [media] trivial: drivers/media/usb/gspca/gspca.h: indent with TABs, not spaces 2014-09-08 10:00:57 -03:00
jeilinj.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
jl2005bcd.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
jpeg.h [media] gpsca: remove the risk of a division by zero 2014-04-08 11:01:12 -03:00
Kconfig [media] gspca_touptek: Add support for ToupTek UCMOS series USB cameras 2015-01-29 18:13:13 -02:00
kinect.c [media] kinect: fix sparse warnings 2014-09-03 09:34:14 -03:00
konica.c [media] gspca: Remove gspca-specific debug magic 2013-03-05 15:13:48 -03:00
Makefile [media] gspca_touptek: Add support for ToupTek UCMOS series USB cameras 2015-01-29 18:13:13 -02:00
mars.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
mr97310a.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
nw80x.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
ov519.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
ov534_9.c [media] gscpa_ov534_9: Add support for ov3610 sensor 2013-10-15 12:49:51 -03:00
ov534.c [media] fixp-arith: replace sin/cos table by a better precision one 2015-03-02 14:50:06 -03:00
pac207.c [media] media_tree: Fix spelling errors 2013-12-09 14:50:50 -02:00
pac7302.c Merge commit '67dd8f35c2d8ed80f26c9654b474cffc11c6674d' into patchwork 2014-07-22 02:03:59 -03:00
pac7311.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
pac_common.h [media] gspca: Remove gspca-specific debug magic 2013-03-05 15:13:48 -03:00
se401.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
se401.h
sn9c20x.c [media] sn9c20x: fix checkpatch warning: sizeof cmatrix should be sizeof(cmatrix) 2014-09-21 20:59:57 -03:00
sn9c2028.c [media] gspca: Remove gspca-specific debug magic 2013-03-05 15:13:48 -03:00
sn9c2028.h
sonixb.c [media] Fix 64-bit division fall-out from 64-bit control ranges 2014-07-17 12:44:38 -03:00
sonixj.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
spca500.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
spca501.c [media] gspca: Remove gspca-specific debug magic 2013-03-05 15:13:48 -03:00
spca505.c [media] gspca: Remove gspca-specific debug magic 2013-03-05 15:13:48 -03:00
spca506.c Drivers: media: remove __dev* attributes. 2013-01-03 15:57:02 -08:00
spca508.c [media] gspca: Remove gspca-specific debug magic 2013-03-05 15:13:48 -03:00
spca561.c [media] gspca: Remove gspca-specific debug magic 2013-03-05 15:13:48 -03:00
spca1528.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
sq905.c [media] gspca: Remove gspca-specific debug magic 2013-03-05 15:13:48 -03:00
sq905c.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
sq930x.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
stk014.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
stk1135.c [media] gspca-stk1135: Add delay after configuring clock 2013-11-29 12:03:16 -02:00
stk1135.h [media] introduce gspca-stk1135: Syntek STK1135 driver 2013-08-21 05:21:55 -03:00
stv0680.c [media] media_tree: Fix spelling errors 2013-12-09 14:50:50 -02:00
sunplus.c [media] gspca_sunplus: Add new usb-id for 06d6:0041 2013-11-29 12:12:52 -02:00
t613.c [media] usb/gspca/t613.c: use IS_ENABLED() macro 2013-02-05 14:54:37 -02:00
topro.c [media] gpsca: remove the risk of a division by zero 2015-02-10 21:38:40 -02:00
touptek.c [media] gspca/touptek: Fix a few CodingStyle issues 2015-01-29 18:25:02 -02:00
tv8532.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
vc032x.c [media] gspca_vc032x: Fix wrong bytesperline 2015-01-29 18:28:46 -02:00
vicam.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
w996Xcf.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
xirlink_cit.c [media] gspca: print small buffers via %*ph 2013-09-26 07:22:25 -03:00
zc3xx-reg.h
zc3xx.c [media] media_tree: Fix spelling errors 2013-12-09 14:50:50 -02:00