Commit Graph

4610 Commits

Author SHA1 Message Date
Michael Krufky
eb383bddc5 V4L/DVB (8307): sms1xxx: change smsusb_driver.name to sms1xxx
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:23:43 -03:00
Michael Krufky
5068b7a449 V4L/DVB (8306): sms1xxx: log firmware download process by default
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:23:38 -03:00
Michael Krufky
0f2a1ee112 V4L/DVB (8305): sms1xxx: fix warning: format '%d' expects type 'int', but argument x has type 'size_t'
Fix the following 64bit build warning:

make[2]: Entering directory `/usr/src/linux-headers-2.6.24-16-generic'
  CC [M]  smscoreapi.o
smscoreapi.c: In function 'smscore_load_firmware_from_file':
smscoreapi.c:604: warning: format '%d' expects type 'int', but argument 4 has type 'size_t'
  CC [M]  smsusb.o
smsusb.c: In function 'smsusb1_load_firmware':
smsusb.c:216: warning: format '%d' expects type 'int', but argument 3 has type 'size_t'
smsusb.c:223: warning: format '%d' expects type 'int', but argument 4 has type 'size_t'

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:23:34 -03:00
Michael Krufky
8f37356b06 V4L/DVB (8303): sms1xxx: update MODULE_DESCRIPTION
set MODULE_DESCRIPTION to "Driver for the Siano SMS1XXX USB dongle"

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:23:30 -03:00
Michael Krufky
cf1cfe1ba7 V4L/DVB (8302): sms1xxx: fix Siano board names
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:23:25 -03:00
Michael Krufky
02aea4fb64 V4L/DVB (8301): sms1xxx: add capability to define device-specific firmware filenames
Add the capability to define device-specific firmware filenames for the SMS1150,
with a mechanism to fall back to the generic firmware if the device-specific
firmware is not present.

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:23:20 -03:00
Michael Krufky
2708e888c5 V4L/DVB (8300): sms1xxx: simplify smsusb_init_device switch..case block
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:23:15 -03:00
Michael Krufky
0c071f374f V4L/DVB (8299): sms1xxx: mark functions static
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:23:10 -03:00
Michael Krufky
c65c7a652f V4L/DVB (8298): sms1xxx: remove redundant __func__ in sms_err macro
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:22:59 -03:00
Michael Krufky
2522dc1324 V4L/DVB (8297): sms1xxx: remove old printk macros
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:22:53 -03:00
Michael Krufky
eb250942fe V4L/DVB (8296): sms1xxx: always show error messages
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:22:48 -03:00
Michael Krufky
f14d56a99b V4L/DVB (8295): sms1xxx: add debug module option, to enable debug messages
All dmesg spam turned off by default, for now.  Values for debug:

(info=1, adv=2 (or-able)

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:22:42 -03:00
Michael Krufky
a0c0abcb1f V4L/DVB (8294): sms1xxx: move message formatting into printk macros
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:22:37 -03:00
Michael Krufky
068d6c0f5d V4L/DVB (8293): sms1xxx: create printk macros
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:22:31 -03:00
Michael Krufky
1c11d546b6 V4L/DVB (8292): sms1xxx: add code to allow device-specific functionality
Set board ID in the usb_device_id table's driver_info field.
Use board name when registering the dvb adapter.

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:22:27 -03:00
Michael Krufky
dd5b2a5c2a V4L/DVB (8291): sms1xxx: change default_mode to 4
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:22:22 -03:00
Michael Krufky
d3e72fe75e V4L/DVB (8290): sms1xxx: small cleanup
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:22:17 -03:00
Michael Krufky
df0462e77e V4L/DVB (8289): sms1xxx: remove #if LINUX_VERSION_CODE checks
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:22:12 -03:00
Michael Krufky
fbd05c8213 V4L/DVB (8288): sms1xxx: more cleanups
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:22:07 -03:00
Michael Krufky
e080842c6c V4L/DVB (8287): sms1xxx: fix WARNING: unnecessary cast may hide bugs
fix the following checkpatch.pl warning:

WARNING: unnecessary cast may hide bugs,
see http://c-faq.com/malloc/mallocnocast.html

596: FILE: linux/drivers/media/dvb/siano/smscoreapi.c:540:
+	msg = (struct SmsMsgHdr_ST *) kmalloc(PAGE_SIZE, GFP_KERNEL | GFP_DMA);

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:22:03 -03:00
Michael Krufky
18245e18ee V4L/DVB (8286): sms1xxx: remove typedefs
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:21:59 -03:00
Michael Krufky
ca78373687 V4L/DVB (8285): sms1xxx: more 80-column cleanups
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:21:54 -03:00
Michael Krufky
9f2113975a V4L/DVB (8284): sms1xxx: fix WARNING: printk() should include KERN_ facility level
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:21:44 -03:00
Michael Krufky
59bf6b8e85 V4L/DVB (8283): sms1xxx: 80-column cleanups
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:21:40 -03:00
Michael Krufky
fa830e8a01 V4L/DVB (8282): sms1xxx: more codingstyle cleanups
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:21:35 -03:00
Michael Krufky
f0333e3de0 V4L/DVB (8281): sms1xxx: remove INT / UINT typedefs
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:21:30 -03:00
Michael Krufky
822374165d V4L/DVB (8280): sms1xxx: more codingstyle cleanups
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:21:25 -03:00
Michael Krufky
73104fb3e4 V4L/DVB (8279): sms1xxx: #define usb vid:pid's
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:21:19 -03:00
Michael Krufky
494d24c527 V4L/DVB (8278): sms1xxx: more codingstyle cleanups
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:21:14 -03:00
Michael Krufky
f17407a85d V4L/DVB (8277): sms1xxx: update latest siano drop to 1.2.17
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:21:09 -03:00
Michael Krufky
55ad310c2f V4L/DVB (8276): sms1xxx: codingstyle cleanup: "(foo*)" should be "(foo *)"
ERROR: "(foo*)" should be "(foo *)"

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:21:05 -03:00
Michael Krufky
a83ccdd6a9 V4L/DVB (8275): sms1xxx: codingstyle cleanup: "foo* bar"/"foo * bar" should be "foo *bar"
ERROR: "foo* bar" should be "foo *bar"
ERROR: "foo * bar" should be "foo *bar"

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:21:01 -03:00
Michael Krufky
3617691fb9 V4L/DVB (8274): sms1xxx: build cleanup after driver relocation
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:20:56 -03:00
Michael Krufky
18658117ff V4L/DVB (8273): sms1xxx: replace __FUNCTION__ with __func__
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:20:51 -03:00
Michael Krufky
8544706060 V4L/DVB (8272): sms1xxx: move driver from media/mdtv/ to media/dvb/siano/
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:20:47 -03:00
Steven Toth
7d18d2e91b V4L/DVB (8271): sms1xxx: usbvid table
Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:20:43 -03:00
Steven Toth
19d703da05 V4L/DVB (8270): sms1xxx: header include cleanups and unexport symbols
Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:20:39 -03:00
Steven Toth
8d4f9d0e0b V4L/DVB (8269): sms1xxx: copyrights
Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:20:34 -03:00
Steven Toth
eae55660fc V4L/DVB (8268): sms1xxx: usb cleanup
Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:20:30 -03:00
Steven Toth
159ed4bbc3 V4L/DVB (8267): sms1xxx: Makefile cleanup
Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:20:24 -03:00
Steven Toth
3dd2437870 V4L/DVB (8266): sms1xxx: merge modules
Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:20:18 -03:00
Steven Toth
7a19598c75 V4L/DVB (8265): sms1xxx: Kconfig / Makefile cleanups
Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:20:12 -03:00
Steven Toth
9e4fb5e712 V4L/DVB (8264): sms1xxx: remove smstypes.h
Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:20:03 -03:00
Steven Toth
955e9ca3cd V4L/DVB (8263): sms1xxx: merge ksyms
Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:19:58 -03:00
Steven Toth
c6465799c3 V4L/DVB (8262): sms1xxx: remove smschar.o
Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:19:53 -03:00
Steven Toth
464a77dd88 V4L/DVB (8261): sms1xxx: remove smsnet.o
Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:19:48 -03:00
Michael Krufky
7315b082e3 V4L/DVB (8260): sms1xxx: build fixes
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:19:44 -03:00
Michael Krufky
9c59f968a9 V4L/DVB (8259): sms1xxx: pass adapter_nr into dvb_register_adapter
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:19:39 -03:00
Michael Krufky
2e5c1ec886 V4L/DVB (8258): add support for SMS1010 and SMS1150 based digital television devices
initial driver drop, provided by Siano Mobile Silicon, Inc.

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:19:35 -03:00
Laurent Pinchart
a9e2858561 V4L/DVB (8257): uvcvideo: Fix possible AB-BA deadlock with videodev_lock and open_mutex
The uvcvideo driver's uvc_v4l2_open() method is called from videodev's
video_open() function, which means it is called with the videodev_lock
mutex held.  uvc_v4l2_open() then takes uvc_driver.open_mutex to check
dev->state and avoid racing against a device disconnect, which means
that open_mutex must nest inside videodev_lock.

However uvc_disconnect() takes the open_mutex around setting
dev->state and also around putting its device reference.  However, if
uvc_disconnect() ends up dropping the last reference, it will call
uvc_delete(), which calls into the videodev code to unregister its
device, and this will end up taking videodev_lock.  This opens a
(unlikely in practice) window for an AB-BA deadlock and also causes a
lockdep warning because of the lock misordering.

Fortunately there is no apparent reason to hold open_mutex when doing
kref_put() in uvc_disconnect(): if uvc_v4l2_open() runs before the
state is set to UVC_DEV_DISCONNECTED, then it will take another
reference to the device and kref_put() won't call uvc_delete; if
uvc_v4l2_open() runs after the state is set, it will run before
uvc_delete(), see the state, and return immediately -- uvc_delete()
does uvc_unregister_video() (and hence video_unregister_device(),
which is synchronized with videodev_lock) as its first thing, so there
is no risk of use-after-free in uvc_v4l2_open().

Bug diagnosed based on a lockdep warning reported by Romano Giannetti
<romano@dea.icai.upcomillas.es>.

Signed-off-by: Roland Dreier <roland@digitalvampire.org>
Signed-off-by: Laurent Pinchart <laurent.pinchart@skynet.be>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-20 07:19:31 -03:00