aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2010-10-27[media] af9015: Fix max I2C message size when used with tda18271staging/for_v2.6.37-rc1Mauro Carvalho Chehab2-2/+2
Changeset 1724c8fa7eb33d68898e060a08a8e6a88348b62f added an option to change the maximum I2C size to 8 bytes. However, it forgot to replace the previous usage at af9015 to use the newly defined macro value (TDA18271_16_BYTE_CHUNK_INIT). A latter changeset (e350d44fed8eb86a7192a579e3687fcd76a4645b) extended the possible values for .small_i2c field and, instead of using a random sequence of numbers, it used a number that makes more sense (e. g. the actual limit, in terms of bytes). However, as af9015 were using .small_i2c = 1, this become undefined, and the restriction of a max size of 16 was gone. While here, fix the reported msg size at tda18271-common.c. Reported-by: Jiri Slaby <jirislaby@gmail.com> Tested-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-25[media] IR: initialize ir_raw_event in few more driversMaxim Levitsky3-1/+3
Few drivers still have assumption that ir_raw_event consists of duration and pulse flag. Fix that. Signed-off-by: Maxim Levitsky <maximlevitsky@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-25[media] Guard a divide in v4l1 compat layerDr. David Alan Gilbert1-3/+10
Hi, I managed to trigger a divide by 0 in the v4l compat code with the mem2mem test module; I suspect perhaps it shouldn't have been returning a 0 pixel wide picture, but either way it seems right to guard this divide by 0 in the compatibility layer. Tested on 2.6.36 (ubuntu build, but the code in this is the same as upstream), but ***not tested with a real video device***. Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org> cc: stable.kernel.org Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] imon: fix nomouse modprobe optionJarod Wilson1-2/+2
Pointed out by Bonne Eggleston on the lirc list. Signed-off-by: Jarod Wilson <jarod@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] imon: remove redundant change_protocol callJarod Wilson1-18/+7
There was a redundant call to imon_ir_change_protocol -- its already getting called from ir_input_register. Also do some minor housekeeping with var names and formatting. Signed-off-by: Jarod Wilson <jarod@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] imon: fix my egregious brown paper bag w/rdev/idev splitJarod Wilson1-10/+9
Somehow, I managed to screw things up when reworking the rdev/idev split patch from David, and started trying to get ir_input_dev from idev instead of rdev, thus resulting in button presses hanging the system. This fixes it. Signed-off-by: Jarod Wilson <jarod@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] cafe_ccic: Configure ov7670 correctlyDaniel Drake1-0/+29
Force smbus communication, disable QCIF mode, and set the correct clock speed on the OLPC XO-1. Signed-off-by: Daniel Drake <dsd@laptop.org> Acked-by: Jonathan Corbet <corbet@lwn.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] ov7670: allow configuration of image size, clock speed, and I/O methodDaniel Drake2-38/+115
These parameters need to be configurable based on the host system. They can now be communicated through the s_config call. The old CONFIG_OLPC_XO_1 selector was not correct; this kind of arrangement wouldn't allow for a universal kernel that would work on both laptops. Certain parts of the probe routine had to be moved later (into s_config), because we can't do any I/O until we know which I/O method has been selected through this mechanism. Signed-off-by: Daniel Drake <dsd@laptop.org> Acked-by: Jonathan Corbet <corbet@lwn.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] af9015: support for DigitalNow TinyTwin v3 [1f4d:9016]Antti Palosaari2-1/+7
It is AF9015+AF9013+2xMXL5007T. Tanks to Bernard Giannetti and DigitalNow for the help! Signed-off-by: Antti Palosaari <crope@iki.fi> Cc: Renura Enterprises Pty Ltd <renura@digitalnow.com.au> Cc: Bernard Giannetti <thebernmeister@hotmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] af9015: map DigitalNow TinyTwin v2 remoteAntti Palosaari1-0/+2
Signed-off-by: Antti Palosaari <crope@iki.fi> Cc: Renura Enterprises Pty Ltd <renura@digitalnow.com.au> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] DigitalNow TinyTwin remote controllerAntti Palosaari3-0/+100
Signed-off-by: Antti Palosaari <crope@iki.fi> Cc: Renura Enterprises Pty Ltd <renura@digitalnow.com.au> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] af9015: RC fixes and improvementsAntti Palosaari1-47/+33
Read all remote controller registers at once to reduce USB remote polling traffic. Use .rc_codes() to disable / enable remote polling instead of .rc_query(). Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23videodev2.h.xml: Update to reflect the latest changes at videodev2.hMauro Carvalho Chehab1-24/+80
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] v4l: document new Bayer and monochrome pixel formatsGuennadi Liakhovetski5-5/+245
Document all four 10-bit Bayer formats, 10-bit monochrome and a missing 8-bit Bayer formats. create mode 100644 Documentation/DocBook/v4l/pixfmt-srggb10.xml create mode 100644 Documentation/DocBook/v4l/pixfmt-srggb8.xml create mode 100644 Documentation/DocBook/v4l/pixfmt-y10.xml [mchehab@redhat.com: remove duplicated symbol for V4L2-PIX-FMT-SGRBG10 and added the corresponding entries at media-entities.tmpl] Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] DocBook/v4l: Add missing formats used on gspca cpia1 and sn9c2028Mauro Carvalho Chehab1-0/+10
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] firedtv: add parameter to fake ca_system_ids in CA_INFOHenrik Kurelid1-4/+27
The Digital Everywhere firmware have the shortcoming that ca_info_enq and ca_info are not supported. This means that we can never retrieve the correct ca_system_id to present in the CI message CA_INFO. Currently the driver uses the application id retrieved using app_info_req and app_info, but this id only match the correct ca_system_id as given in ca_info in some cases. This patch adds a parameter to the driver in order for the user to override what will be returned in the CA_INFO CI message. Up to four ca_system_ids can be specified. This is needed for users with CAMs that have different manufacturer id and ca_system_id and that uses applications that take this into account, like MythTV. Signed-off-by: Henrik Kurelid <henrik@kurelid.se> Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] tm6000: fix a macro coding style issueRuslan Pisarev1-1/+1
This is a patch to the tm6000-core.c file that fixed up a macros error and error initialise statics to 0 found by the checkpatch.pl tools. [mchehab@redhat.com: removed a merge conflict and add spaces between binary operator] Signed-off-by: Ruslan Pisarev <ruslan@rpisarev.org.ua> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23tm6000: Remove some ugly debug codeMauro Carvalho Chehab1-10/+2
Those time debugs were here just while developing the driver. They are not really needed, as kernel may be configured to print jiffies with printk's. Also, it breaks, if more than one device is connected. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] Nova-S-Plus audio line inputlawrence rust6-54/+192
This patch adds audio DMA capture and ALSA mixer elements for the line input jack of the Hauppauge Nova-S-plus DVB-S PCI card. The Nova-S-plus has a WM8775 ADC that is currently not detected. This patch enables this chip and exports volume, balance mute and ALC elements for ALSA mixer controls. [mchehab@redhat.com: Fix CodingStyle issues] Signed-off-by: Lawrence Rust <lawrence@softsystem.co.uk> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] [RFC,1/1] V4L2: Use new CAP bits in existing RDS capable driversMatti Aaltonen4-4/+5
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] Documentation: v4l: Add hw_seek spacing and two TUNER_RDS_CAP flagsMatti Aaltonen2-19/+59
Add a couple of words about the spacing field in the HW seek struct, also a few words about the new RDS tuner capability flags V4L2_TUNER_CAP_RDS_BLOCK-IO and V4L2_TUNER_CAP_RDS_CONTROLS. Signed-off-by: Matti J. Aaltonen <matti.j.aaltonen@nokia.com> Acked-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] [RFC] radio-mr800: locking fixesHans Verkuil1-3/+14
- serialize the suspend and resume functions using the global lock. - do not call usb_autopm_put_interface after a disconnect. - fix a race when disconnecting the device. Reported-by: David Ellingsworth <david@identd.dyndns.org> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Acked-by: David Ellingsworth<david@identd.dyndns.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] drivers/media/IR/imon.c: Use pr_err instead of errJoe Perches1-39/+34
Use the standard error logging mechanisms. Add #define pr_fmt(fmt) KBUILD_MODNAME ":%s" fmt, __func__ Remove __func__ from err calls, add '\n', rename to pr_err Signed-off-by: Joe Perches <joe@perches.com> Acked-by: Jarod Wilson <jarod@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] drivers/media/video/bt8xx: Adjust confusing if indentationJulia Lawall1-3/+2
Indent the branch of an if. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // <smpl> @r disable braces4@ position p1,p2; statement S1,S2; @@ ( if (...) { ... } | if (...) S1@p1 S2@p2 ) @script:python@ p1 << r.p1; p2 << r.p2; @@ if (p1[0].column == p2[0].column): cocci.print_main("branch",p1) cocci.print_secs("after",p2) // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] lmedm04: driver for DM04/QQBOX updated to version 1.60Malcolm Priestley4-103/+243
These include -later kill of usb_buffer to avoid kernel crash on hot unplugging. -DiSEqC functions. -LNB Power switch -Faster channel change. -support for LG tuner on LME2510C. -firmware switching for LG tuner. Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] s5p-fimc: dubious one-bit signed bitfieldsSylwester Nawrocki1-4/+4
> From: Dan Carpenter [mailto:error27@gmail.com] > > These are signed so instead of being 1 and 0 as intended they are -1 and > 0. It doesn't cause a bug in the current code but Sparse warns about > it: > > drivers/media/video/s5p-fimc/fimc-core.h:226:28: > error: dubious one-bit signed bitfield > struct fimc_scaler { > - int scaleup_h:1; > - int scaleup_v:1; > - int copy_mode:1; > - int enabled:1; > + unsigned int scaleup_h:1; > + unsigned int caleup_v:1; > + unsigned int copy_mode:1; > + unsigned int enabled:1; In general I agree, however this patch would change scaleup_v:1 to caleup_v, so it cannot be applied in current form. Here is the corrected patch: Reported-by: Dan Carpenter <error27@gmail.com< Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-23[media] s5p-fimc: add unlock on error pathDan Carpenter1-4/+7
There was an unlock missing if kzalloc() failed. Signed-off-by: Dan Carpenter <error27@gmail.com> Acked-by: Sylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] cx18: Don't use module names to load I2C modulesLaurent Pinchart1-18/+5
With the v4l2_i2c_new_subdev* functions now supporting loading modules based on modaliases, replace the hardcoded module name passed to those functions by NULL. The sub-devices without a listed module name don't result in and I2C sub-device being created, as they either are IR devices or don't have an I2C address listed. It's thus safe to rely on modaliases only. All corresponding I2C modules have been checked, and all of them include a module aliases table with names corresponding to what the cx18 driver uses. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] ivtv: Don't use module names to load I2C modulesLaurent Pinchart1-34/+8
With the v4l2_i2c_new_subdev* functions now supporting loading modules based on modaliases, replace the hardcoded module name passed to those functions by NULL. The sub-devices without a listed module name don't result in and I2C sub-device being created, as they either are IR devices or don't have an I2C address listed. It's thus safe to rely on modaliases only. All corresponding I2C modules have been checked, and all of them include a module aliases table with names corresponding to what the ivtv driver uses. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] vpif_capture: Don't use module names to load I2C modulesLaurent Pinchart1-1/+1
With the v4l2_i2c_new_subdev* functions now supporting loading modules based on modaliases, don't use the module names hardcoded in platform data by passing a NULL module name to those functions. The only platform using the VPIF capture device (DM646x EVM) hardcodes the module names to invalid values (tvp514x-0 and tvp514x-1). As this is already broken, there's no risk of breaking it more. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] vpif_display: Don't use module names to load I2C modulesLaurent Pinchart1-1/+1
With the v4l2_i2c_new_subdev* functions now supporting loading modules based on modaliases, don't use the module names hardcoded in platform data by passing a NULL module name to those functions. All corresponding I2C modules have been checked, and all of them include a module aliases table with names corresponding to what the vpif_display platform data uses. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] vpfe_capture: Don't use module names to load I2C modulesLaurent Pinchart1-1/+1
With the v4l2_i2c_new_subdev* functions now supporting loading modules based on modaliases, don't use the module names hardcoded in platform data by passing a NULL module name to those functions. All corresponding I2C modules have been checked, and all of them include a module aliases table with names corresponding to what the vpfe_capture platform data uses. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] soc_camera: Don't use module names to load I2C modulesLaurent Pinchart12-18/+1
With the v4l2_i2c_new_subdev* functions now supporting loading modules based on modaliases, remove the module names hardcoded in platform data and pass a NULL module name to those functions. All corresponding I2C modules have been checked, and all of them include a module aliases table with names corresponding to what the soc_camera platform data uses. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] radio-si4713: Don't use module names to load I2C modulesLaurent Pinchart1-1/+1
With the v4l2_i2c_new_subdev* functions now supporting loading modules based on modaliases, replace the hardcoded module name passed to those functions by NULL. As no board seems to use this driver, no platform data has been checked. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] sh_vou: Don't use module names to load I2C modulesLaurent Pinchart4-4/+1
With the v4l2_i2c_new_subdev* functions now supporting loading modules based on modaliases, remove the module names hardcoded in platform data and pass a NULL module name to those functions. All corresponding I2C modules have been checked, and all of them include a module aliases table with names corresponding to what the sh_vou platform data uses. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] pvrusb2: Don't use module names to load I2C modulesLaurent Pinchart1-9/+2
With the v4l2_i2c_new_subdev* functions now supporting loading modules based on modaliases, replace the hardcoded module name passed to those functions by NULL. All corresponding I2C modules have been checked, and all of them include a module aliases table with names corresponding to what the pvrusb2 driver uses. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-By: Mike Isely <isely@pobox.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] zoran: Don't use module names to load I2C modulesLaurent Pinchart2-22/+3
With the v4l2_i2c_new_subdev* functions now supporting loading modules based on modaliases, replace the hardcoded module name passed to those functions by NULL. All corresponding I2C modules have been checked, and all of them include a module aliases table with names corresponding to what the zoran driver uses. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] go7007: Don't use module names to load I2C modulesLaurent Pinchart1-40/+3
With the v4l2_i2c_new_subdev* functions now supporting loading modules based on modaliases, replace the hardcoded module name passed to those functions by NULL. All corresponding I2C modules have been checked, and all of them include a module aliases table with names corresponding to what the go7007 driver uses. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] go7007: Fix the TW2804 I2C type nameLaurent Pinchart1-1/+1
The TW2804 I2C sub-device type name was incorrectly set to wis_twTW2804 for the adlink mpg24 board. Rename it to wis_tw2804. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] go7007: Add MODULE_DEVICE_TABLE to the go7007 I2C modulesLaurent Pinchart7-0/+7
The device table is required to load modules based on modaliases. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] v4l: Remove hardcoded module names passed to v4l2_i2c_new_subdev*Laurent Pinchart16-55/+55
With the v4l2_i2c_new_subdev* functions now supporting loading modules based on modaliases, replace the hardcoded module name passed to those functions by NULL. All corresponding I2C modules have been checked, and all of them include a module aliases table with names corresponding to what the drivers modified here use. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] v4l: Load I2C modules based on modaliasLaurent Pinchart1-0/+2
When creating a new sub-device, The V4L I2C subdev API has historically required drivers to pass the name of the module that implements support for the I2C device. I2C modules can be loaded based on modaliases instead of the module name. As the I2C device type name is already available to the v4l2_i2c_new_subdev* functions, make the module name argument optional and create a modalias based on the type name when no module name is provided. All in-tree drivers call those functions with a non-NULL module name argument, this change is thus harmless. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] cx231xx: fix double lock typoDan Carpenter1-1/+1
This was supposed to be an unlock on the error path. Signed-off-by: Dan Carpenter <error27@gmail.com> Acked-by: Devin Heitmueller <dheitmueller@hauppauge.com> Cc: Palash Bandyopadhyay < palash.bandyopadhyay@conexant.com> Cc: Sri Deevi <Srinivasa.Deevi@conexant.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] anysee: switch to RC coreAntti Palosaari1-66/+21
Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] Anysee remote controllerAntti Palosaari3-0/+95
Anysee remote controller keytable. Uses NEC address 0x08. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] cx88: uninitialized variableDan Carpenter1-2/+1
Fixes a gcc warning: drivers/media/video/cx88/cx88-video.c:772: warning: ‘core’ may be used uninitialized in this function Signed-off-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] Support for Elgato Video CaptureAdrian Taylor3-1/+21
This patch allows this device successfully to show video, at least from its composite input. I have no information about the true hardware contents of this device and so this patch is based solely on fiddling with things until it worked. The chip appears to be em2860, and the closest device with equivalent inputs is the Typhoon DVD Maker. Copying the settings for that device appears to do the trick. That's what this patch does. [mchehab@redhat.com: update CARDLIST.em28xx accordingly, via script] Signed-off-by: Adrian Taylor <adrian.taylor@realvnc.com> Reviewed-by: Jarod Wilson <jarod@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] Documentation/video4linux/CARDLIST.[cx88|saa7134]Mauro Carvalho Chehab2-1/+2
Fix a few troubles at the card entries Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] mceusb: hook debug print spew directly into parser routineJarod Wilson1-20/+25
Provides more complete debug spew, parses individual commands and raw IR data one chunk at a time. Signed-off-by: Jarod Wilson <jarod@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2010-10-22[media] mceusb: add symbolic names for commandsJarod Wilson1-76/+117
And replace usage of hex values w/symbolic names wherever possible Signed-off-by: Jarod Wilson <jarod@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

Privacy Policy