diff options
author | David S. Miller <davem@davemloft.net> | 2009-12-02 01:13:38 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-12-02 01:13:38 -0500 |
commit | ff9c38bba37937adb909cceb2a6521f2e92e17c6 (patch) | |
tree | 93bd6152d9fa28348be99ef1c788040cc7b7a94d /drivers/media | |
parent | 65c0cfafce9575319fb6f70080fbe226e5617e3b (diff) | |
parent | b2722b1c3a893ec6021508da15b32282ec79f4da (diff) |
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Conflicts:
net/mac80211/ht.c
Diffstat (limited to 'drivers/media')
-rw-r--r-- | drivers/media/common/ir-functions.c | 2 | ||||
-rw-r--r-- | drivers/media/dvb/dvb-usb/cxusb.c | 10 | ||||
-rw-r--r-- | drivers/media/dvb/siano/Kconfig | 2 | ||||
-rw-r--r-- | drivers/media/radio/radio-gemtek-pci.c | 2 | ||||
-rw-r--r-- | drivers/media/video/davinci/vpif_display.c | 1 | ||||
-rw-r--r-- | drivers/media/video/em28xx/em28xx-cards.c | 2 | ||||
-rw-r--r-- | drivers/media/video/mx1_camera.c | 1 | ||||
-rw-r--r-- | drivers/media/video/mx3_camera.c | 1 | ||||
-rw-r--r-- | drivers/media/video/sh_mobile_ceu_camera.c | 7 | ||||
-rw-r--r-- | drivers/media/video/soc_camera.c | 17 | ||||
-rw-r--r-- | drivers/media/video/videobuf-dma-contig.c | 1 |
11 files changed, 32 insertions, 14 deletions
diff --git a/drivers/media/common/ir-functions.c b/drivers/media/common/ir-functions.c index 655474b29e21..abd4791acb0e 100644 --- a/drivers/media/common/ir-functions.c +++ b/drivers/media/common/ir-functions.c | |||
@@ -64,7 +64,7 @@ void ir_input_init(struct input_dev *dev, struct ir_input_state *ir, | |||
64 | 64 | ||
65 | ir->ir_type = ir_type; | 65 | ir->ir_type = ir_type; |
66 | 66 | ||
67 | memset(ir->ir_codes, sizeof(ir->ir_codes), 0); | 67 | memset(ir->ir_codes, 0, sizeof(ir->ir_codes)); |
68 | 68 | ||
69 | /* | 69 | /* |
70 | * FIXME: This is a temporary workaround to use the new IR tables | 70 | * FIXME: This is a temporary workaround to use the new IR tables |
diff --git a/drivers/media/dvb/dvb-usb/cxusb.c b/drivers/media/dvb/dvb-usb/cxusb.c index f65591fb7cec..2a53dd096eef 100644 --- a/drivers/media/dvb/dvb-usb/cxusb.c +++ b/drivers/media/dvb/dvb-usb/cxusb.c | |||
@@ -663,6 +663,14 @@ static struct zl10353_config cxusb_zl10353_xc3028_config = { | |||
663 | .parallel_ts = 1, | 663 | .parallel_ts = 1, |
664 | }; | 664 | }; |
665 | 665 | ||
666 | static struct zl10353_config cxusb_zl10353_xc3028_config_no_i2c_gate = { | ||
667 | .demod_address = 0x0f, | ||
668 | .if2 = 45600, | ||
669 | .no_tuner = 1, | ||
670 | .parallel_ts = 1, | ||
671 | .disable_i2c_gate_ctrl = 1, | ||
672 | }; | ||
673 | |||
666 | static struct mt352_config cxusb_mt352_xc3028_config = { | 674 | static struct mt352_config cxusb_mt352_xc3028_config = { |
667 | .demod_address = 0x0f, | 675 | .demod_address = 0x0f, |
668 | .if2 = 4560, | 676 | .if2 = 4560, |
@@ -894,7 +902,7 @@ static int cxusb_dualdig4_frontend_attach(struct dvb_usb_adapter *adap) | |||
894 | cxusb_bluebird_gpio_pulse(adap->dev, 0x02, 1); | 902 | cxusb_bluebird_gpio_pulse(adap->dev, 0x02, 1); |
895 | 903 | ||
896 | if ((adap->fe = dvb_attach(zl10353_attach, | 904 | if ((adap->fe = dvb_attach(zl10353_attach, |
897 | &cxusb_zl10353_xc3028_config, | 905 | &cxusb_zl10353_xc3028_config_no_i2c_gate, |
898 | &adap->dev->i2c_adap)) == NULL) | 906 | &adap->dev->i2c_adap)) == NULL) |
899 | return -EIO; | 907 | return -EIO; |
900 | 908 | ||
diff --git a/drivers/media/dvb/siano/Kconfig b/drivers/media/dvb/siano/Kconfig index 8c1aed77ea30..85a222c4eaa0 100644 --- a/drivers/media/dvb/siano/Kconfig +++ b/drivers/media/dvb/siano/Kconfig | |||
@@ -4,7 +4,7 @@ | |||
4 | 4 | ||
5 | config SMS_SIANO_MDTV | 5 | config SMS_SIANO_MDTV |
6 | tristate "Siano SMS1xxx based MDTV receiver" | 6 | tristate "Siano SMS1xxx based MDTV receiver" |
7 | depends on DVB_CORE && INPUT | 7 | depends on DVB_CORE && INPUT && HAS_DMA |
8 | ---help--- | 8 | ---help--- |
9 | Choose Y or M here if you have MDTV receiver with a Siano chipset. | 9 | Choose Y or M here if you have MDTV receiver with a Siano chipset. |
10 | 10 | ||
diff --git a/drivers/media/radio/radio-gemtek-pci.c b/drivers/media/radio/radio-gemtek-pci.c index c3f579de6e71..c6cf11661868 100644 --- a/drivers/media/radio/radio-gemtek-pci.c +++ b/drivers/media/radio/radio-gemtek-pci.c | |||
@@ -181,12 +181,10 @@ static void gemtek_pci_mute(struct gemtek_pci *card) | |||
181 | 181 | ||
182 | static void gemtek_pci_unmute(struct gemtek_pci *card) | 182 | static void gemtek_pci_unmute(struct gemtek_pci *card) |
183 | { | 183 | { |
184 | mutex_lock(&card->lock); | ||
185 | if (card->mute) { | 184 | if (card->mute) { |
186 | gemtek_pci_setfrequency(card, card->current_frequency); | 185 | gemtek_pci_setfrequency(card, card->current_frequency); |
187 | card->mute = false; | 186 | card->mute = false; |
188 | } | 187 | } |
189 | mutex_unlock(&card->lock); | ||
190 | } | 188 | } |
191 | 189 | ||
192 | static int gemtek_pci_getsignal(struct gemtek_pci *card) | 190 | static int gemtek_pci_getsignal(struct gemtek_pci *card) |
diff --git a/drivers/media/video/davinci/vpif_display.c b/drivers/media/video/davinci/vpif_display.c index c015da813dda..d14cfb200ed0 100644 --- a/drivers/media/video/davinci/vpif_display.c +++ b/drivers/media/video/davinci/vpif_display.c | |||
@@ -1426,7 +1426,6 @@ static __init int vpif_probe(struct platform_device *pdev) | |||
1426 | struct vpif_display_config *config; | 1426 | struct vpif_display_config *config; |
1427 | int i, j = 0, k, q, m, err = 0; | 1427 | int i, j = 0, k, q, m, err = 0; |
1428 | struct i2c_adapter *i2c_adap; | 1428 | struct i2c_adapter *i2c_adap; |
1429 | struct vpif_config *config; | ||
1430 | struct common_obj *common; | 1429 | struct common_obj *common; |
1431 | struct channel_obj *ch; | 1430 | struct channel_obj *ch; |
1432 | struct video_device *vfd; | 1431 | struct video_device *vfd; |
diff --git a/drivers/media/video/em28xx/em28xx-cards.c b/drivers/media/video/em28xx/em28xx-cards.c index bdb249bd9d5d..c0fd5c6feeac 100644 --- a/drivers/media/video/em28xx/em28xx-cards.c +++ b/drivers/media/video/em28xx/em28xx-cards.c | |||
@@ -1584,8 +1584,8 @@ struct em28xx_board em28xx_boards[] = { | |||
1584 | [EM2870_BOARD_REDDO_DVB_C_USB_BOX] = { | 1584 | [EM2870_BOARD_REDDO_DVB_C_USB_BOX] = { |
1585 | .name = "Reddo DVB-C USB TV Box", | 1585 | .name = "Reddo DVB-C USB TV Box", |
1586 | .tuner_type = TUNER_ABSENT, | 1586 | .tuner_type = TUNER_ABSENT, |
1587 | .tuner_gpio = reddo_dvb_c_usb_box, | ||
1587 | .has_dvb = 1, | 1588 | .has_dvb = 1, |
1588 | .dvb_gpio = reddo_dvb_c_usb_box, | ||
1589 | }, | 1589 | }, |
1590 | }; | 1590 | }; |
1591 | const unsigned int em28xx_bcount = ARRAY_SIZE(em28xx_boards); | 1591 | const unsigned int em28xx_bcount = ARRAY_SIZE(em28xx_boards); |
diff --git a/drivers/media/video/mx1_camera.c b/drivers/media/video/mx1_camera.c index 5f37952c75cf..72802291e812 100644 --- a/drivers/media/video/mx1_camera.c +++ b/drivers/media/video/mx1_camera.c | |||
@@ -28,6 +28,7 @@ | |||
28 | #include <linux/moduleparam.h> | 28 | #include <linux/moduleparam.h> |
29 | #include <linux/mutex.h> | 29 | #include <linux/mutex.h> |
30 | #include <linux/platform_device.h> | 30 | #include <linux/platform_device.h> |
31 | #include <linux/sched.h> | ||
31 | #include <linux/time.h> | 32 | #include <linux/time.h> |
32 | #include <linux/version.h> | 33 | #include <linux/version.h> |
33 | #include <linux/videodev2.h> | 34 | #include <linux/videodev2.h> |
diff --git a/drivers/media/video/mx3_camera.c b/drivers/media/video/mx3_camera.c index dff2e5e2d8c6..7db82bdf6f31 100644 --- a/drivers/media/video/mx3_camera.c +++ b/drivers/media/video/mx3_camera.c | |||
@@ -17,6 +17,7 @@ | |||
17 | #include <linux/clk.h> | 17 | #include <linux/clk.h> |
18 | #include <linux/vmalloc.h> | 18 | #include <linux/vmalloc.h> |
19 | #include <linux/interrupt.h> | 19 | #include <linux/interrupt.h> |
20 | #include <linux/sched.h> | ||
20 | 21 | ||
21 | #include <media/v4l2-common.h> | 22 | #include <media/v4l2-common.h> |
22 | #include <media/v4l2-dev.h> | 23 | #include <media/v4l2-dev.h> |
diff --git a/drivers/media/video/sh_mobile_ceu_camera.c b/drivers/media/video/sh_mobile_ceu_camera.c index 2f78b4f263f5..9c8b7c7b89ee 100644 --- a/drivers/media/video/sh_mobile_ceu_camera.c +++ b/drivers/media/video/sh_mobile_ceu_camera.c | |||
@@ -31,6 +31,7 @@ | |||
31 | #include <linux/platform_device.h> | 31 | #include <linux/platform_device.h> |
32 | #include <linux/videodev2.h> | 32 | #include <linux/videodev2.h> |
33 | #include <linux/pm_runtime.h> | 33 | #include <linux/pm_runtime.h> |
34 | #include <linux/sched.h> | ||
34 | 35 | ||
35 | #include <media/v4l2-common.h> | 36 | #include <media/v4l2-common.h> |
36 | #include <media/v4l2-dev.h> | 37 | #include <media/v4l2-dev.h> |
@@ -1723,11 +1724,12 @@ static int __devinit sh_mobile_ceu_probe(struct platform_device *pdev) | |||
1723 | 1724 | ||
1724 | err = soc_camera_host_register(&pcdev->ici); | 1725 | err = soc_camera_host_register(&pcdev->ici); |
1725 | if (err) | 1726 | if (err) |
1726 | goto exit_free_irq; | 1727 | goto exit_free_clk; |
1727 | 1728 | ||
1728 | return 0; | 1729 | return 0; |
1729 | 1730 | ||
1730 | exit_free_irq: | 1731 | exit_free_clk: |
1732 | pm_runtime_disable(&pdev->dev); | ||
1731 | free_irq(pcdev->irq, pcdev); | 1733 | free_irq(pcdev->irq, pcdev); |
1732 | exit_release_mem: | 1734 | exit_release_mem: |
1733 | if (platform_get_resource(pdev, IORESOURCE_MEM, 1)) | 1735 | if (platform_get_resource(pdev, IORESOURCE_MEM, 1)) |
@@ -1747,6 +1749,7 @@ static int __devexit sh_mobile_ceu_remove(struct platform_device *pdev) | |||
1747 | struct sh_mobile_ceu_dev, ici); | 1749 | struct sh_mobile_ceu_dev, ici); |
1748 | 1750 | ||
1749 | soc_camera_host_unregister(soc_host); | 1751 | soc_camera_host_unregister(soc_host); |
1752 | pm_runtime_disable(&pdev->dev); | ||
1750 | free_irq(pcdev->irq, pcdev); | 1753 | free_irq(pcdev->irq, pcdev); |
1751 | if (platform_get_resource(pdev, IORESOURCE_MEM, 1)) | 1754 | if (platform_get_resource(pdev, IORESOURCE_MEM, 1)) |
1752 | dma_release_declared_memory(&pdev->dev); | 1755 | dma_release_declared_memory(&pdev->dev); |
diff --git a/drivers/media/video/soc_camera.c b/drivers/media/video/soc_camera.c index 36e617bd13c7..95fdeb23c2c1 100644 --- a/drivers/media/video/soc_camera.c +++ b/drivers/media/video/soc_camera.c | |||
@@ -1097,6 +1097,13 @@ static int default_s_crop(struct soc_camera_device *icd, struct v4l2_crop *a) | |||
1097 | return v4l2_subdev_call(sd, video, s_crop, a); | 1097 | return v4l2_subdev_call(sd, video, s_crop, a); |
1098 | } | 1098 | } |
1099 | 1099 | ||
1100 | static void soc_camera_device_init(struct device *dev, void *pdata) | ||
1101 | { | ||
1102 | dev->platform_data = pdata; | ||
1103 | dev->bus = &soc_camera_bus_type; | ||
1104 | dev->release = dummy_release; | ||
1105 | } | ||
1106 | |||
1100 | int soc_camera_host_register(struct soc_camera_host *ici) | 1107 | int soc_camera_host_register(struct soc_camera_host *ici) |
1101 | { | 1108 | { |
1102 | struct soc_camera_host *ix; | 1109 | struct soc_camera_host *ix; |
@@ -1158,6 +1165,7 @@ void soc_camera_host_unregister(struct soc_camera_host *ici) | |||
1158 | 1165 | ||
1159 | list_for_each_entry(icd, &devices, list) { | 1166 | list_for_each_entry(icd, &devices, list) { |
1160 | if (icd->iface == ici->nr) { | 1167 | if (icd->iface == ici->nr) { |
1168 | void *pdata = icd->dev.platform_data; | ||
1161 | /* The bus->remove will be called */ | 1169 | /* The bus->remove will be called */ |
1162 | device_unregister(&icd->dev); | 1170 | device_unregister(&icd->dev); |
1163 | /* | 1171 | /* |
@@ -1169,6 +1177,7 @@ void soc_camera_host_unregister(struct soc_camera_host *ici) | |||
1169 | * device private data. | 1177 | * device private data. |
1170 | */ | 1178 | */ |
1171 | memset(&icd->dev, 0, sizeof(icd->dev)); | 1179 | memset(&icd->dev, 0, sizeof(icd->dev)); |
1180 | soc_camera_device_init(&icd->dev, pdata); | ||
1172 | } | 1181 | } |
1173 | } | 1182 | } |
1174 | 1183 | ||
@@ -1200,10 +1209,7 @@ static int soc_camera_device_register(struct soc_camera_device *icd) | |||
1200 | * man, stay reasonable... */ | 1209 | * man, stay reasonable... */ |
1201 | return -ENOMEM; | 1210 | return -ENOMEM; |
1202 | 1211 | ||
1203 | icd->devnum = num; | 1212 | icd->devnum = num; |
1204 | icd->dev.bus = &soc_camera_bus_type; | ||
1205 | |||
1206 | icd->dev.release = dummy_release; | ||
1207 | icd->use_count = 0; | 1213 | icd->use_count = 0; |
1208 | icd->host_priv = NULL; | 1214 | icd->host_priv = NULL; |
1209 | mutex_init(&icd->video_lock); | 1215 | mutex_init(&icd->video_lock); |
@@ -1311,12 +1317,13 @@ static int __devinit soc_camera_pdrv_probe(struct platform_device *pdev) | |||
1311 | icd->iface = icl->bus_id; | 1317 | icd->iface = icl->bus_id; |
1312 | icd->pdev = &pdev->dev; | 1318 | icd->pdev = &pdev->dev; |
1313 | platform_set_drvdata(pdev, icd); | 1319 | platform_set_drvdata(pdev, icd); |
1314 | icd->dev.platform_data = icl; | ||
1315 | 1320 | ||
1316 | ret = soc_camera_device_register(icd); | 1321 | ret = soc_camera_device_register(icd); |
1317 | if (ret < 0) | 1322 | if (ret < 0) |
1318 | goto escdevreg; | 1323 | goto escdevreg; |
1319 | 1324 | ||
1325 | soc_camera_device_init(&icd->dev, icl); | ||
1326 | |||
1320 | icd->user_width = DEFAULT_WIDTH; | 1327 | icd->user_width = DEFAULT_WIDTH; |
1321 | icd->user_height = DEFAULT_HEIGHT; | 1328 | icd->user_height = DEFAULT_HEIGHT; |
1322 | 1329 | ||
diff --git a/drivers/media/video/videobuf-dma-contig.c b/drivers/media/video/videobuf-dma-contig.c index 635ffc7b0391..c3065c4bcba9 100644 --- a/drivers/media/video/videobuf-dma-contig.c +++ b/drivers/media/video/videobuf-dma-contig.c | |||
@@ -19,6 +19,7 @@ | |||
19 | #include <linux/mm.h> | 19 | #include <linux/mm.h> |
20 | #include <linux/pagemap.h> | 20 | #include <linux/pagemap.h> |
21 | #include <linux/dma-mapping.h> | 21 | #include <linux/dma-mapping.h> |
22 | #include <linux/sched.h> | ||
22 | #include <media/videobuf-dma-contig.h> | 23 | #include <media/videobuf-dma-contig.h> |
23 | 24 | ||
24 | struct videobuf_dma_contig_memory { | 25 | struct videobuf_dma_contig_memory { |