freebsd-dev/sys/pci
Eivind Eklund 30d0ea994e Improve PAL support and fix mux selector values.
This make the Miro PCTV work for me, including audio, and should
hopefully fix the other audio problems some people have been having.

Reviewed by:	ahasty & Luigi Rizzo (freebsd-multimedia)
1997-10-30 18:20:26 +00:00
..
aic7870.c
brktree_reg.h Improve PAL support and fix mux selector values. 1997-10-30 18:20:26 +00:00
brooktree848.c Improve PAL support and fix mux selector values. 1997-10-30 18:20:26 +00:00
bt9xx.c Removed unused #includes. 1997-08-02 14:33:27 +00:00
cy_pci.c Removed unused #includes. 1997-09-02 20:06:59 +00:00
cy_pcireg.h
dc21040reg.h Add an $Id$ 1997-10-18 18:17:45 +00:00
ide_pci.c Addition of support of the slightly rogue Promise IDE interface(Dyson), support 1997-09-20 07:41:58 +00:00
ide_pcireg.h Add support for busmaster DMA on some PCI IDE chipsets. 1997-07-29 12:57:25 +00:00
if_de.c Recognize even more of the Znyx 314 cards. 1997-10-25 14:32:15 +00:00
if_devar.h Merge in changes from Matt. Accton EN12xx support, bugfixes. There is 1997-10-18 18:15:03 +00:00
if_ed_p.c Add the NetVin 5000 series NE2000 PCI card vendor and device IDs. 1997-08-14 07:53:07 +00:00
if_en_pci.c Removed unused #includes. 1997-10-28 15:59:26 +00:00
if_fpa.c Removed unused #includes. 1997-08-02 14:33:27 +00:00
if_fxp.c Removed unused #includes. 1997-10-28 15:59:26 +00:00
if_fxpreg.h Work around a bug in the 82557 NIC where the receiver will lock up 1997-09-29 11:27:43 +00:00
if_fxpvar.h Work around a bug in the 82557 NIC where the receiver will lock up 1997-09-29 11:27:43 +00:00
if_lnc_p.c Removed unused #includes. 1997-08-02 14:33:27 +00:00
if_sr_p.c Removed unused #includes. 1997-09-02 20:06:59 +00:00
if_vx_pci.c Yank the casts. 1997-08-21 08:42:59 +00:00
locate.pl
meteor_reg.h
meteor.c Removed unused #includes. 1997-09-02 20:06:59 +00:00
ncr.c Update for new callout interface. 1997-09-21 22:02:25 +00:00
ncrreg.h Prepare for 64bit programming environment (e.g. Alpha): 1997-08-31 19:42:31 +00:00
pci_compat.c Yank the casts. 1997-08-21 08:42:59 +00:00
pci_ioctl.h
pci.c Update select -> poll in drivers. 1997-09-14 03:19:42 +00:00
pcireg.h Addition of support of the slightly rogue Promise IDE interface(Dyson), support 1997-09-20 07:41:58 +00:00
pcisupport.c Oops... back out the change to recognize the TI 1131; there's a better place. 1997-10-17 16:26:14 +00:00
pcivar.h Reorder function decls alphabetically. 1997-08-21 08:31:41 +00:00
README.bt848 Amancio's latest in the Brooktree driver. 1997-09-09 06:32:32 +00:00
scsiiom.c Update for new callout interface. 1997-09-21 22:02:25 +00:00
tek390.c Update for new callout interface. 1997-09-21 22:02:25 +00:00
tek390.h
wdc_p.c Removed unused #includes. 1997-08-02 14:33:27 +00:00

-------------------------------------------------------------------------------
Recent versions of 3.0-current have the bktr driver built in.  Older versions
of 3.0 and all versions of 2.2 need to have the driver files installed by hand:

cp ioctl_bt848.h /sys/i386/include/
cp brktree_reg.h brooktree848.c /sys/pci/

In /sys/conf/files add:
pci/brooktree848.c        optional bktr device-driver

-------------------------------------------------------------------------------
In all cases you will need to add the driver to your kernel:

In your kernel configuration file:
controller      pci0     #if you already have this line don't add it.
device          bktr0    

There is no need to specify DMA channels nor interrupts for this
driver.

-------------------------------------------------------------------------------
Finally you need to create nodes for the driver:

Create a video device:
mknod /dev/bktr0 c 79 0

Create a tuner device:
mknod /dev/tuner0 c 79 16

-------------------------------------------------------------------------------
The code attempts to auto-probe code to detect card/tuner types.
The detected card is printed in the dmesg as the driver is loaded.  If
this fails to detect the proper card you can override it in brooktree848.c:

#define OVERRIDE_CARD	<card type>

where <card type> is one of:
	CARD_UNKNOWN
	CARD_MIRO
	CARD_HAUPPAUGE
	CARD_STB
	CARD_INTEL

-------------------------------------------------------------------------------
This model now separates the "tuner control" items into a minor device:

minor device layout:  xxxxxxxx xxxT UUUU

 UUUU:   the card (ie UNIT) identifier, 0 thru 15
 T == 0: video device
 T == 1: tuner device

Access your tuner ioctl thru your tuner device handle and anything
which controls the video capture process thru the video device handle.

Certain ioctl()s such as video source are available thru both devices.

-------------------------------------------------------------------------------
The bt848 driver consists of:

src/sys/i386/include/ioctl_bt848.h
src/sys/pci/brktree_reg.h
src/sys/pci/brooktree848.c