linux/drivers/staging
Jarod Wilson 7963eb432b staging: add Broadcom Crystal HD driver
This patch supersedes the earlier ones sent by Manu Abraham to add
the Broadcom Crystal HD driver to the staging tree, per discussion
with him about it. I've been working with Broadcom's Naren Sankar
on this driver for a number of months, and had already talked Naren
about submitting this on Broadcom's behalf, didn't expect anyone
else to jump on submitting it as quickly as Manu did. ;)

This version is a one-shot deal, incorporating the original driver,
Manu's coding style clean-ups, udev device creation support from
Edgar 'gimli' Hucek, and a number of other small tweaks from myself
and Scott Davilla, the other individual who has been working closely
on this code with Naren and I.

I've tested this iteration of the code lightly on a mini pci-e board
in a ThinkPad T61p running x86_64 Fedora 12, with the expected results,
and will test further on other systems with other variants of the card
(I have three varieties of this device currently in hand). Scott has
also tested on assorted primarily i686 varieties of Ubuntu, and Naren
has tested with both Fedora and Ubuntu, iirc.

Note: only the 70012 is currently supported by this driver, 70015
support will follow later. Also note that Blu-Ray support isn't
enabled (at the firmware level), due to misc fun related to the
BD encryption scheme, DRM, etc. :\

I *do* have a git tree containing the driver, lib, gst plugin and
firmware that I'm working from at the moment[*], as there are inter-
dependencies between the driver and lib, and the driver can be used
with kernels going a ways back (I've only tested back to 2.6.18 as
it exists in Red Hat Enterprise Linux 5). I'm exporting from there,
into a linux-next tree, then generating patches from there. The goal
is to feed everything upstream as quickly as possible, but there are
users who want this code for earlier kernels too...

The firmware will be submitted for inclusion in dwmw2's linux-firmware
tree once there is a suitable redistribution-no-modification type of
license on it (I believe Naren is working with Broadcom legal to get
that in place).

Changelog from initial Broadcom release to here:

commit d20475d444610c5683d09e63f707f5bb22359062
Author: Jarod Wilson <jarod@redhat.com>
Date:   Mon Jan 4 13:55:16 2010 -0500

    include: lib doesn't build w/o the removed stdint include
    
    So add it back...
    
    Signed-off-by: Jarod Wilson <jarod@redhat.com>

commit c181070a330530b792d2b80e3ec6ab12a5a57394
Author: Scott Davilla <davilla@4pi.com>
Date:   Mon Jan 4 13:38:37 2010 -0500

    include: don't define VOID if its already defined
    
    Signed-off-by: Scott Davilla <davilla@4pi.com>
    Signed-off-by: Jarod Wilson <jarod@redhat.com>

commit 33d8a2b691e81212e398f53770578d79650bf0bc
Author: Jarod Wilson <jarod@redhat.com>
Date:   Mon Jan 4 13:12:10 2010 -0500

    driver: create crystalhd device using udev
    
    Based on:
    http://sourceforge.net/apps/trac/archvdr/browser/trunk/archvdr/crystalhd/use_udev.patch
    
    Signed-off-by: Edgar ( gimli ) Hucek <ebsi4711 at gmail dot com>
    
    Formatting tweaks, error-handling path fixups and any bugs added by Jarod.
    
    Signed-off-by: Jarod Wilson <jarod@redhat.com>

commit c44c64dea5537814796fcbe2d9db0209383c78b9
Author: Manu Abraham <abraham.manu@gmail.com>
Date:   Mon Jan 4 10:32:47 2010 -0500

    crystalhd: coding style cleanups
    
    Signed-off-by: Manu Abraham <abraham.manu@gmail.com>
    Signed-off-by: Jarod Wilson <jarod@redhat.com>

commit cffa6da7467ff697a656d1dfff54bb0513a053dc
Author: Jarod Wilson <jarod@redhat.com>
Date:   Mon Jan 4 10:17:27 2010 -0500

    crystalhd: run dos2unix over everything, this is linux source...
    
    Signed-off-by: Jarod Wilson <jarod@redhat.com>

commit 7fa38a282db7af5a5746055f7c6cef8a9b8ee138
Author: Jarod Wilson <jarod@redhat.com>
Date:   Mon Jan 4 10:02:33 2010 -0500

    crystalhd: initial import of released Broadcom code
    
    Straight import of:
    http://www.broadcom.com/docs/support/crystalhd/crystalhd_linux_20091229.zip
    
    Unfortunately, we're unable to publicly publish all the history that got
    us from the initial internal code to what was released here, but such is
    life, we can just be happy we've got this open-sourced now. :)
    
    Signed-off-by: Jarod Wilson <jarod@redhat.com>

Signed-off-by: Naren Sankar <nsankar@broadcom.com>
Signed-off-by: Scott Davilla <davilla@4pi.com>
Signed-off-by: Manu Abraham <abraham.manu@gmail.com>
Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-03 16:42:34 -08:00
..
arlan Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6 2009-12-08 07:55:01 -08:00
asus_oled Staging: asus_oled: Add defines for asus vendor_id and device_id to be consistent with hid-ids.h 2010-03-03 16:42:29 -08:00
batman-adv Staging: batman-adv: Fix the naming of the debug option. 2010-03-03 16:42:30 -08:00
comedi staging: Fix misspelling of "should" and "shouldn't" in comments. 2010-03-03 16:42:31 -08:00
crystalhd staging: add Broadcom Crystal HD driver 2010-03-03 16:42:34 -08:00
cx25821 V4L/DVB (13955): cx25821: fix double unlock in medusa_video_init() 2010-01-17 11:31:38 -02:00
dream Staging: s5k3e2fx.c: simplify complexity by factoring 2010-03-03 16:42:33 -08:00
dt3155 Staging: dt3155: coding style cleanups for the .h files 2010-03-03 16:42:33 -08:00
echo Staging: echo: coding style cleanups 2009-09-15 12:02:16 -07:00
et131x Staging: et131x: Fix 2.6.33rc1 regression in et131x 2010-01-20 15:05:26 -08:00
frontier
go7007 V4L/DVB (13556): v4l: Remove unneeded video_device::minor assignments 2009-12-16 00:17:57 -02:00
hv Staging: hv: fix smp problems in the hyperv core code 2010-01-20 15:05:26 -08:00
iio Staging: iio: checkinclude.pl fix 2010-03-03 16:42:30 -08:00
line6 staging: line6: Convert simple_strtoul to strict_strtoul in midi.c 2009-12-11 12:21:48 -08:00
mimio Staging: mimio: checkpatch.pl line > 80 chars fixes 2010-03-03 16:42:29 -08:00
netwave Merge branch 'master' of /home/davem/src/GIT/linux-2.6/ 2009-12-05 15:22:26 -08:00
octeon Staging: octeon-ethernet: Convert to use PHY Abstraction Layer. 2009-12-17 01:57:00 +00:00
otus Staging: otus: Fix branch in zfProtRspSim() 2010-03-03 16:42:27 -08:00
panel Staging: panel: Adjust range for PANEL_KEYPAD in Kconfig 2009-12-23 11:27:49 -08:00
phison Staging: phison: adding __init/__exit macros 2009-12-11 12:23:05 -08:00
poch Staging: poch: Add sample Rx code 2009-12-11 12:23:09 -08:00
pohmelfs pohmelfs needs I_LOCK 2009-12-22 12:27:33 -05:00
quatech_usb2 Staging: fix assorted typos all over the place 2009-12-11 12:23:20 -08:00
ramzswap Staging: ramzswap: remove unused #include <linux/version.h> 2010-03-03 16:42:30 -08:00
rar Staging: fix assorted typos all over the place 2009-12-11 12:23:20 -08:00
rt2860 staging: Fix misspelling of "successful" and variants. 2010-03-03 16:42:31 -08:00
rt2870 Staging: rt28x0: Add proper selection of WIRELESS_EXT and WEXT_PRIV 2009-12-11 12:23:16 -08:00
rt3070 Staging: rt28x0: remove typedefs (part one) 2009-12-11 12:23:15 -08:00
rt3090 Staging: rt28x0: remove typedefs (part one) 2009-12-11 12:23:15 -08:00
rtl8187se Staging: rtl8187x: Use %pM for mac address output 2010-03-03 16:42:29 -08:00
rtl8192e staging: Fix misspelling of "should" and "shouldn't" in comments. 2010-03-03 16:42:31 -08:00
rtl8192su Staging: rtl8192su: Use z format qualifier for output of sizeof() 2010-03-03 16:42:33 -08:00
rtl8192u staging: Fix misspelling of "should" and "shouldn't" in comments. 2010-03-03 16:42:31 -08:00
samsung-laptop Staging: samsung-laptop: add TODO file 2009-12-11 12:23:23 -08:00
sep Staging: fix assorted typos all over the place 2009-12-11 12:23:20 -08:00
serqt_usb2 Staging: fix assorted typos all over the place 2009-12-11 12:23:20 -08:00
slicoss staging: slicoss Use pci_set_consistent_dma_mask. 2010-03-03 16:42:28 -08:00
sm7xx Staging: sm7xx: add a new framebuffer driver 2009-12-23 11:27:44 -08:00
strip Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 2009-11-09 11:17:24 -08:00
udlfb Staging: udlfb: add dynamic modeset support 2010-03-03 16:42:31 -08:00
usbip Staging: usbip: Fix typo "Contoroller". 2009-12-11 12:23:19 -08:00
vme Staging: vme: Allow drivers to co-exist 2010-03-03 16:42:28 -08:00
vt6655 Staging/vt66*: kconfig, depends on WLAN 2009-12-23 11:27:50 -08:00
vt6656 Staging/vt66*: kconfig, depends on WLAN 2009-12-23 11:27:50 -08:00
wavelan Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2009-12-09 19:43:33 -08:00
winbond Staging: w35und: Remove unused typedefs MLME_DEAUTHREQ_PARA and MLME_DISASSOCREQ_PARA 2010-03-03 16:42:32 -08:00
wlags49_h2 staging: Fix misspelling of "successful" and variants. 2010-03-03 16:42:31 -08:00
wlags49_h25 Staging: wlags49: fix kconfigs dependancy 2009-12-11 12:23:10 -08:00
wlan-ng Staging: wlan-ng: initialise mibitem 2010-03-03 16:42:33 -08:00
Kconfig staging: add Broadcom Crystal HD driver 2010-03-03 16:42:34 -08:00
Makefile staging: add Broadcom Crystal HD driver 2010-03-03 16:42:34 -08:00
staging.c