History log of /freebsd-10-stable/sys/dev/bktr/
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
332920 24-Apr-2018 riggs

MFC r332861:

Remove unused definition bl_dfp; fix build with bktr compiled into kernel

Approved by: cognet

331338 22-Mar-2018 emaste

MFC r330668: bktr: correct Japan IF frequency

PR: 36451
Submitted by: Hijiri Umemoto <hijiri at umemoto.org>

261455 04-Feb-2014 eadler

MFC r258779,r258780,r258787,r258822:

Fix undefined behavior: (1 << 31) is not defined as 1 is an int and this
shifts into the sign bit. Instead use (1U << 31) which gets the
expected result.

Similar to the (1 << 31) case it is not defined to do (2 << 30).

This fix is not ideal as it assumes a 32 bit int, but does fix the issue
for most cases.

A similar change was made in OpenBSD.


/freebsd-10-stable/lib/libc/sparc64/fpu/fpu.c
/freebsd-10-stable/lib/libc/sparc64/fpu/fpu_sqrt.c
/freebsd-10-stable/lib/libc/xdr/xdr_rec.c
/freebsd-10-stable/sys/amd64/pci/pci_cfgreg.c
/freebsd-10-stable/sys/amd64/vmm/intel/vmcs.h
/freebsd-10-stable/sys/amd64/vmm/intel/vmx_controls.h
/freebsd-10-stable/sys/amd64/vmm/intel/vtd.c
/freebsd-10-stable/sys/arm/arm/cpufunc_asm_pj4b.S
/freebsd-10-stable/sys/arm/arm/db_trace.c
/freebsd-10-stable/sys/arm/arm/pl190.c
/freebsd-10-stable/sys/arm/at91/if_macbvar.h
/freebsd-10-stable/sys/arm/broadcom/bcm2835/bcm2835_dma.c
/freebsd-10-stable/sys/arm/econa/if_ece.c
/freebsd-10-stable/sys/arm/freescale/imx/imx6_anatopreg.h
/freebsd-10-stable/sys/arm/freescale/imx/imx6_usbphy.c
/freebsd-10-stable/sys/arm/freescale/imx/imx_gptreg.h
/freebsd-10-stable/sys/arm/include/armreg.h
/freebsd-10-stable/sys/arm/lpc/if_lpereg.h
/freebsd-10-stable/sys/arm/lpc/lpcreg.h
/freebsd-10-stable/sys/arm/mv/mv_pci.c
/freebsd-10-stable/sys/arm/samsung/exynos/ehci_exynos5.c
/freebsd-10-stable/sys/arm/xscale/i8134x/i81342reg.h
/freebsd-10-stable/sys/arm/xscale/ixp425/ixp425reg.h
/freebsd-10-stable/sys/boot/arm/at91/libat91/mci_device.h
/freebsd-10-stable/sys/boot/i386/libfirewire/fwohci.h
/freebsd-10-stable/sys/boot/i386/libfirewire/fwohcireg.h
/freebsd-10-stable/sys/dev/aac/aacvar.h
/freebsd-10-stable/sys/dev/acpica/acpi_video.c
/freebsd-10-stable/sys/dev/agp/agp_i810.c
/freebsd-10-stable/sys/dev/ahci/ahci.h
bktr_core.c
/freebsd-10-stable/sys/dev/cesa/cesa.h
/freebsd-10-stable/sys/dev/drm/i915_reg.h
/freebsd-10-stable/sys/dev/drm/mach64_drv.h
/freebsd-10-stable/sys/dev/drm/mga_drv.h
/freebsd-10-stable/sys/dev/drm/r128_drv.h
/freebsd-10-stable/sys/dev/drm/r300_reg.h
/freebsd-10-stable/sys/dev/drm/r600_blit.c
/freebsd-10-stable/sys/dev/drm/radeon_cp.c
/freebsd-10-stable/sys/dev/drm/radeon_drv.h
/freebsd-10-stable/sys/dev/drm/via_irq.c
/freebsd-10-stable/sys/dev/drm2/i915/i915_reg.h
/freebsd-10-stable/sys/dev/drm2/radeon/evergreen_blit_kms.c
/freebsd-10-stable/sys/dev/drm2/radeon/evergreen_cs.c
/freebsd-10-stable/sys/dev/drm2/radeon/evergreend.h
/freebsd-10-stable/sys/dev/drm2/radeon/nid.h
/freebsd-10-stable/sys/dev/drm2/radeon/r200.c
/freebsd-10-stable/sys/dev/drm2/radeon/r300.c
/freebsd-10-stable/sys/dev/drm2/radeon/r300_reg.h
/freebsd-10-stable/sys/dev/drm2/radeon/r500_reg.h
/freebsd-10-stable/sys/dev/drm2/radeon/r600_blit.c
/freebsd-10-stable/sys/dev/drm2/radeon/r600_blit_kms.c
/freebsd-10-stable/sys/dev/drm2/radeon/r600_cs.c
/freebsd-10-stable/sys/dev/drm2/radeon/r600d.h
/freebsd-10-stable/sys/dev/drm2/radeon/radeon_cp.c
/freebsd-10-stable/sys/dev/drm2/radeon/radeon_drv.h
/freebsd-10-stable/sys/dev/drm2/radeon/radeon_reg.h
/freebsd-10-stable/sys/dev/drm2/radeon/rv770d.h
/freebsd-10-stable/sys/dev/drm2/radeon/sid.h
/freebsd-10-stable/sys/dev/drm2/ttm/ttm_bo.c
/freebsd-10-stable/sys/dev/e1000/e1000_82575.h
/freebsd-10-stable/sys/dev/e1000/e1000_ich8lan.c
/freebsd-10-stable/sys/dev/e1000/e1000_regs.h
/freebsd-10-stable/sys/dev/etherswitch/arswitch/arswitchreg.h
/freebsd-10-stable/sys/dev/ffec/if_ffecreg.h
/freebsd-10-stable/sys/dev/firewire/firewire.c
/freebsd-10-stable/sys/dev/firewire/fwohci.c
/freebsd-10-stable/sys/dev/firewire/fwohcireg.h
/freebsd-10-stable/sys/dev/firewire/sbp.c
/freebsd-10-stable/sys/dev/firewire/sbp.h
/freebsd-10-stable/sys/dev/firewire/sbp_targ.c
/freebsd-10-stable/sys/dev/hatm/if_hatmreg.h
/freebsd-10-stable/sys/dev/hwpmc/hwpmc_piv.h
/freebsd-10-stable/sys/dev/iwn/if_iwnreg.h
/freebsd-10-stable/sys/dev/mge/if_mgevar.h
/freebsd-10-stable/sys/dev/mpt/mpt_cam.c
/freebsd-10-stable/sys/dev/msk/if_mskreg.h
/freebsd-10-stable/sys/dev/mvs/mvs.h
/freebsd-10-stable/sys/dev/mxge/mxge_mcp.h
/freebsd-10-stable/sys/dev/qlxge/qls_dump.c
/freebsd-10-stable/sys/dev/ral/rt2560reg.h
/freebsd-10-stable/sys/dev/ral/rt2661reg.h
/freebsd-10-stable/sys/dev/ral/rt2860reg.h
/freebsd-10-stable/sys/dev/sound/pci/hda/hdaa.h
/freebsd-10-stable/sys/dev/usb/controller/ehci.h
/freebsd-10-stable/sys/dev/usb/wlan/if_rumreg.h
/freebsd-10-stable/sys/dev/usb/wlan/if_runreg.h
/freebsd-10-stable/sys/dev/usb/wlan/if_uralreg.h
/freebsd-10-stable/sys/dev/usb/wlan/if_urtwreg.h
/freebsd-10-stable/sys/dev/usb/wlan/if_zydreg.h
/freebsd-10-stable/sys/dev/wpi/if_wpireg.h
/freebsd-10-stable/sys/geom/raid/tr_raid1e.c
/freebsd-10-stable/sys/i386/pci/pci_cfgreg.c
/freebsd-10-stable/sys/mips/atheros/ar71xxreg.h
/freebsd-10-stable/sys/mips/atheros/ar934xreg.h
/freebsd-10-stable/sys/mips/atheros/if_argevar.h
/freebsd-10-stable/sys/mips/malta/gt_pci.c
/freebsd-10-stable/sys/mips/nlm/dev/net/nae.c
/freebsd-10-stable/sys/mips/nlm/xlp_machdep.c
/freebsd-10-stable/sys/mips/rmi/pic.h
/freebsd-10-stable/sys/ofed/drivers/infiniband/hw/mlx4/qp.c
/freebsd-10-stable/sys/ofed/drivers/infiniband/hw/mthca/mthca_mcg.c
/freebsd-10-stable/sys/ofed/drivers/infiniband/hw/mthca/mthca_qp.c
/freebsd-10-stable/sys/ofed/drivers/net/mlx4/mcg.c
/freebsd-10-stable/sys/powerpc/fpu/fpu_emu.c
/freebsd-10-stable/sys/powerpc/fpu/fpu_sqrt.c
/freebsd-10-stable/sys/powerpc/powermac/nvbl.c
/freebsd-10-stable/sys/sys/consio.h
/freebsd-10-stable/sys/x86/iommu/intel_reg.h
/freebsd-10-stable/usr.sbin/bluetooth/bthidd/kbd.c
256281 10-Oct-2013 gjb

Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


254263 12-Aug-2013 scottl

Update PCI drivers to no longer look at the MEMIO-enabled bit in the PCI
command register. The lazy BAR allocation code in FreeBSD sometimes
disables this bit when it detects a range conflict, and will re-enable
it on demand when a driver allocates the BAR. Thus, the bit is no longer
a reliable indication of capability, and should not be checked. This
results in the elimination of a lot of code from drivers, and also gives
the opportunity to simplify a lot of drivers to use a helper API to set
the busmaster enable bit.

This changes fixes some recent reports of disk controllers and their
associated drives/enclosures disappearing during boot.

Submitted by: jhb
Reviewed by: jfv, marius, achadd, achim
MFC after: 1 day


254025 07-Aug-2013 jeff

Replace kernel virtual address space allocation with vmem. This provides
transparent layering and better fragmentation.

- Normalize functions that allocate memory to use kmem_*
- Those that allocate address space are named kva_*
- Those that operate on maps are named kmap_*
- Implement recursive allocation handling for kmem_arena in vmem.

Reviewed by: alc
Tested by: pho
Sponsored by: EMC / Isilon Storage Division


250088 30-Apr-2013 pluknet

Pass a format string to kproc_create() [1] and thus fix the build with
-DBKTR_NEW_MSP34XX_DRIVER and -Wformat-security.
This also allows to eliminates a superfluous malloc/snprintf/free on
intermediate buffer.

PR: kern/175546
MFC after: 1 week


249816 23-Apr-2013 jkim

Fix white spaces.


249798 23-Apr-2013 eadler

Make temp, temp1 the same type that they will later be used for.

PR: kern/176712
Submitted by: Hiren Panchasara <hiren.panchasara@gmail.com>
Reviewed by: jmg (earlier version)
Approved by: cperciva (mentor)


249585 17-Apr-2013 gabor

- Corrrect mispellings of word useful

Submitted by: Christoph Mallon <christoph.mallon@gmx.de> (via private mail)


245952 26-Jan-2013 pfg

Clean some 'svn:executable' properties in the tree.

Submitted by: Christoph Mallon
MFC after: 3 days


242692 07-Nov-2012 kevlo

Fix typo; s/ouput/output


241394 10-Oct-2012 kevlo

Revert previous commit...

Pointyhat to: kevlo (myself)


241370 09-Oct-2012 kevlo

Prefer NULL over 0 for pointers


227503 14-Nov-2011 rmh

Remove a few bits of FreeBSD 2.x compatibility code.

Approved by: kib (mentor)


227309 07-Nov-2011 ed

Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs.

The SYSCTL_NODE macro defines a list that stores all child-elements of
that node. If there's no SYSCTL_DECL macro anywhere else, there's no
reason why it shouldn't be static.


225617 16-Sep-2011 kmacy

In order to maximize the re-usability of kernel code in user space this
patch modifies makesyscalls.sh to prefix all of the non-compatibility
calls (e.g. not linux_, freebsd32_) with sys_ and updates the kernel
entry points and all places in the code that use them. It also
fixes an additional name space collision between the kernel function
psignal and the libc function of the same name by renaming the kernel
psignal kern_psignal(). By introducing this change now we will ease future
MFCs that change syscalls.

Reviewed by: rwatson
Approved by: re (bz)


218909 21-Feb-2011 brucec

Fix typos - remove duplicate "the".

PR: bin/154928
Submitted by: Eitan Adler <lists at eitanadler.com>
MFC after: 3 days


210010 13-Jul-2010 nwhitehorn

Fix build on architectures where PAGE_SIZE is a long (sparc64, powerpc).


205781 28-Mar-2010 gibbs

Use standard types in preference to BSD types so that these header files
can be used in applications compiled with only POSIX types visible.

MFC after: 2 weeks


201758 07-Jan-2010 mbr

Remove extraneous semicolons, no functional changes.

Submitted by: Marc Balmer <marc@msys.ch>
MFC after: 1 week


201223 29-Dec-2009 rnoland

Update d_mmap() to accept vm_ooffset_t and vm_memattr_t.

This replaces d_mmap() with the d_mmap2() implementation and also
changes the type of offset to vm_ooffset_t.

Purge d_mmap2().

All driver modules will need to be rebuilt since D_VERSION is also
bumped.

Reviewed by: jhb@
MFC after: Not in this lifetime...


196403 20-Aug-2009 jhb

Temporarily revert the new-bus locking for 8.0 release. It will be
reintroduced after HEAD is reopened for commits by re@.

Approved by: re (kib), attilio


196037 02-Aug-2009 attilio

Make the newbus subsystem Giant free by adding the new newbus sxlock.
The newbus lock is responsible for protecting newbus internIal structures,
device states and devclass flags. It is necessary to hold it when all
such datas are accessed. For the other operations, softc locking should
ensure enough protection to avoid races.

Newbus lock is automatically held when virtual operations on the device
and bus are invoked when loading the driver or when the suspend/resume
take place. For other 'spourious' operations trying to access/modify
the newbus topology, newbus lock needs to be automatically acquired and
dropped.

For the moment Giant is also acquired in some key point (modules subsystem)
in order to avoid problems before the 8.0 release as module handlers could
make assumptions about it. This Giant locking should go just after
the release happens.

Please keep in mind that the public interface can be expanded in order
to provide more support, if there are really necessities at some point
and also some bugs could arise as long as the patch needs a bit of
further testing.

Bump __FreeBSD_version in order to reflect the newbus lock introduction.

Reviewed by: ed, hps, jhb, imp, mav, scottl
No answer by: ariff, thompsa, yongari
Tested by: pho,
G. Trematerra <giovanni dot trematerra at gmail dot com>,
Brandon Gooch <jamesbrandongooch at gmail dot com>
Sponsored by: Yahoo! Incorporated
Approved by: re (ksmith)


192805 26-May-2009 ed

Unbreak bktr(4).


192784 26-May-2009 benjsc

Free the memory correctly in the error case

Submitted by: frtzkatz at yahoo.com
Approved by: sam
MFC after: 1 month


183397 27-Sep-2008 ed

Replace all calls to minor() with dev2unit().

After I removed all the unit2minor()/minor2unit() calls from the kernel
yesterday, I realised calling minor() everywhere is quite confusing.
Character devices now only have the ability to store a unit number, not
a minor number. Remove the confusion by using dev2unit() everywhere.

This commit could also be considered as a bug fix. A lot of drivers call
minor(), while they should actually be calling dev2unit(). In -CURRENT
this isn't a problem, but it turns out we never had any problem reports
related to that issue in the past. I suspect not many people connect
more than 256 pieces of the same hardware.

Reviewed by: kib


181303 04-Aug-2008 jhb

Add locking to the various iicbus(4) bridge drivers:
- Just grab Giant in the ixp425_iic(4) driver since this driver uses
a shared address/data register window pair to access the actual
I2C registers. None of the other ixp425 drivers lock access to these
shared address/data registers yet and that would need to be done before
this could use any meaningful locking.
- Add locking to the interrupt handler and 'iicbus_reset' methods of the
at91_twi(4) driver.
- Add locking to the pcf(4) driver. Other pcf(4) fixes include:
- Don't needlessly zero the softc.
- Use bus_foo rather than bus_space_foo and remove bus space tag and
handle from softc.
- The lpbb(4) driver just grabs Giant for now. This will be refined later
when ppbus(4) is locked.
- As was done with smbus earlier, move the DRIVER_MODULE() lines to match
the bus driver (either iicbus or iicbb) to the bridge driver into the
bridge drivers.

Tested by: sam (arm/ixp425)


179624 06-Jun-2008 jhb

Explicitly lock Giant in smbus_if methods in the bktr_i2c and iicsmb
drivers for now. This can be replaced with driver locks when these
drivers are locked.


172836 20-Oct-2007 julian

Rename the kthread_xxx (e.g. kthread_create()) calls
to kproc_xxx as they actually make whole processes.
Thos makes way for us to add REAL kthread_create() and friends
that actually make theads. it turns out that most of these
calls actually end up being moved back to the thread version
when it's added. but we need to make this cosmetic change first.

I'd LOVE to do this rename in 7.0 so that we can eventually MFC the
new kthread_xxx() calls.


166901 23-Feb-2007 piso

o break newbus api: add a new argument of type driver_filter_t to
bus_setup_intr()

o add an int return code to all fast handlers

o retire INTR_FAST/IH_FAST

For more info: http://docs.freebsd.org/cgi/getmsg.cgi?fetch=465712+0+current/freebsd-current

Reviewed by: many
Approved by: re@


165707 31-Dec-2006 jmg

remove delays that have been unnecessary since 2002... The iicbb driver
has the proper delays...


162421 18-Sep-2006 jhb

Update prototype for smbus callback change.

Reported by: Ian FREISLICH <if at hetzner dot co dot za>


162234 11-Sep-2006 jhb

Minor overhaul of SMBus support:
- Change smbus_callback() to pass a void * rather than caddr_t.
- Change smbus_bread() to pass a pointer to the count and have it be an
in/out parameter. The input is the size of the buffer (same as before),
but on return it will contain the actual amount of data read back from
the bus. Note that this value may be larger than the input value. It
is up to the caller to treat this as an error if desired.
- Change the SMB_BREAD ioctl to write out the updated struct smbcmd which
will contain the actual number of bytes read in the 'count' field. To
preserve the previous ABI, the old ioctl value is mapped to SMB_OLD_BREAD
which doesn't copy the updated smbcmd back out to userland. I doubt anyone
actually used the old BREAD anyway as it was rediculous to do a bulk-read
but not tell the using program how much data was actually read.
- Make the smbus driver and devclass public in the smbus module and
push all the DRIVER_MODULE()'s for attaching the smbus driver to
various foosmb drivers out into the foosmb modules. This makes all
the foosmb logic centralized and allows new foosmb modules to be
self-contained w/o having to hack smbus.c everytime a new smbus driver
is added.
- Add a new SMB_EINVAL error bit and use it in place of EINVAL to return
an error for bad arguments (such as invalid counts for bread and bwrite).
- Map SMB bus error bits to EIO in smbus_error().
- Make the smbus driver call bus_generic_probe() and require child drivers
such as smb(4) to create device_t's via identify routines. Previously,
smbus just created one anonymous device during attach, and if you had
multiple drivers that could attach it was just random chance as to which
driver got to probe for the sole device_t first.
- Add a mutex to the smbus(4) softc and use it in place of dummy splhigh()
to protect the 'owner' field and perform necessary synchronization for
smbus_request_bus() and smbus_release_bus().
- Change the bread() and bwrite() methods of alpm(4), amdpm(4), and
viapm(4) to only perform a single transaction and not try to use a
loop of multiple transactions for a large request. The framing and
commands to use for a large transaction depend on the upper-layer
protocol (such as SSIF for IPMI over SMBus) from what I can tell, and the
smb(4) driver never allowed bulk read/writes of more than 32-bytes
anyway. The other smb drivers only performed single transactions.
- Fix buffer overflows in the bread() methods of ichsmb(4), alpm(4),
amdpm(4), amdsmb(4), intpm(4), and nfsmb(4).
- Use SMB_xxx errors in viapm(4).
- Destroy ichsmb(4)'s mutex after bus_generic_detach() to avoid problems
from child devices making smb upcalls that would use the mutex during
their detach methods.

MFC after: 1 week
Reviewed by: jmg (mostly)


160964 04-Aug-2006 yar

Commit the results of the typo hunt by Darren Pilgrim.
This change affects documentation and comments only,
no real code involved.

PR: misc/101245
Submitted by: Darren Pilgrim <darren pilgrim bitfreak org>
Tested by: md5(1)
MFC after: 1 week


160063 01-Jul-2006 markm

Housekeeping. Update for maintainers who have handed in their commit bits
or (in my case) no longer feel that oversight is necessary.


158937 26-May-2006 jmg

don't require a buffer if all we are doing is manipulating the GPIO pins...

MFC after: 3 weeks


154897 27-Jan-2006 jmg

if we are compiling with smbus support, properly depend upon the iic and
smbus modules, otherwise as a module you can't kldload bktr...

MFC after: 3 days


153084 04-Dec-2005 ru

Fix -Wundef from compiling the amd64 LINT.


152375 13-Nov-2005 netchild

Add some cards:
- several TerraTec TValue [1]
- PixelView PlayTV Pro REV-4C [2]

In case you have the PixelView card, please tell us the "pciconf -v -l"
output on multimedia@FreeBSD.org if it works. There are revisions out there
which may not work and we need to know which ones work.

PR: 53383 [1], 76002 [2]
Submitted by: Tanja Wittke <tawi@gruft.de> [1], barner [1],
Dan Angelescu <mrhsaacdoh@yahoo.com> [2]
MFC after: 2 months


146734 29-May-2005 nyan

Remove bus_{mem,p}io.h and related code for a micro-optimization on i386
and amd64. The optimization is a trivial on recent machines.

Reviewed by: -arch (imp, marcel, dfr)


146588 24-May-2005 cognet

Don't set the tuner type to TUNER_MT2032 if BKTR_OVERRIDE_TUNER is defined or
if hw.bt848.tuner has been set, so that we can force the tuner.


146587 24-May-2005 cognet

Fix one more misuse of u_long when uint32_t is actually meant.

Submitted by: oliver
MFC after: 3 days


143163 05-Mar-2005 imp

Use BUS_PROBE_DEFAULT for pci probe return value


141671 10-Feb-2005 julian

Remove lots of tab/space errors introduced by massive cut-n-paste action.

Noticed from: diffs of the last commit.
MFC after: 1 week


141669 10-Feb-2005 julian

Take into account that Pinnacle screwed up their PCI ID in the beginning..
Older cards have it reversed.
Also, use some already defined values instead of magic numbers.

PR: 73324
Submitted by: arne_woerner@yahoo.com
MFC after: 1 week


140883 27-Jan-2005 imp

Fix a few printf problems on ia64 (and other 64-bit platforms).


140655 23-Jan-2005 julian

Add code to do better auto detection of tuner types etc.

PR: kern/75831
Submitted by: Branko Lankester <branko@euro.net>
MFC after: 1 week


139941 09-Jan-2005 cognet

Use uint32_t instead of u_long when appropriate.
That's enough to make my bt848 work on amd64.

MFC after: 1 week


139919 08-Jan-2005 imp

Remove support for FreeBSD < 4.recent from this driver.


139917 08-Jan-2005 imp

Remove vnode.h and adjust includes to compensate for pollution.


139749 06-Jan-2005 imp

Start each of the license/copyright comments with /*-, minor shuffle of lines


139563 02-Jan-2005 julian

Add support for the Pixelview PlayTV

PR: 68362
Submitted by: Carl Makin <carl@stagecraft.cx>
MFC after: 1 week


139477 31-Dec-2004 julian

Roger is away, note that his maintainership is
on vacation until he gets back. (hopefully next year)

Submitted by: linimon


138937 17-Dec-2004 julian

Add a missing prototype.

MFC after: 1 week


138936 16-Dec-2004 julian

Allow /sys/dev/bktr to support Pinnacle PCTV Rave cards

PR: 73669
Submitted by: arne_woerner at yahoo dot com
MFC after: 1 week


138935 16-Dec-2004 julian

Add some locking for -currnet/5.x

PR: 74305
Submitted by: Anish Mistry <amistry at am-productions dot biz>
MFC after: 1 week


135069 11-Sep-2004 dwhite

Fix build if both of BKTR_USE_FREEBSD_SMBUS and BKTR_NEW_MSP34XX_DRIVER are
defined.

Thanks to Damian Gerow <dgerow@afflictions.org> for pointing out this problem.
RELENG_5 candidate.


133300 08-Aug-2004 sanpei

Add support AOpen VA1000 video capture card

PR: kern/62146
Submitted by: HASHI Hiroaki <hasi@cskk-sv.co.jp>
MFC after: 1 week


132199 15-Jul-2004 phk

Do a pass over all modules in the kernel and make them return EOPNOTSUPP
for unknown events.

A number of modules return EINVAL in this instance, and I have left
those alone for now and instead taught MOD_QUIESCE to accept this
as "didn't do anything".


131180 27-Jun-2004 schweikh

Fix a tuner problem.

PR: kern/66006
Submitted by: Josh Elsasser <jre@vineyard.net>
MFC after: 1 week


130585 16-Jun-2004 phk

Do the dreaded s/dev_t/struct cdev */
Bump __FreeBSD_version accordingly.


130359 11-Jun-2004 schweikh

Style cleanup.


130356 11-Jun-2004 schweikh

* Fix typo in comment.
* remove extraneous semicolon between function definitions.
* vm_offset_t is not a pointer, so return 0, not NULL. This
fixes two warnings.


129879 30-May-2004 phk

Add missing <sys/module.h> includes


129755 26-May-2004 josef

Unbreak build if
options BKTR_USE_FREEBSD_SMBUS
is defined in kernel configuration.

Submitted by: Tom Convery <tpc@tomfoo.com>
PR: kern/60458
Approved by: imp


127135 17-Mar-2004 njl

Convert callers to the new bus_alloc_resource_any(9) API.

Submitted by: Mark Santcroos <marks@ripe.net>
Reviewed by: imp, dfr, bde


126080 21-Feb-2004 phk

Device megapatch 4/6:

Introduce d_version field in struct cdevsw, this must always be
initialized to D_VERSION.

Flip sense of D_NOGIANT flag to D_NEEDGIANT, this involves removing
four D_NOGIANT flags and adding 145 D_NEEDGIANT flags.


126076 21-Feb-2004 phk

Device megapatch 1/6:

Free approx 86 major numbers with a mostly automatically generated patch.

A number of strategic drivers have been left behind by caution, and a few
because they still (ab)use their major number.


124507 14-Jan-2004 alc

Use contigmalloc() instead of vm_page_alloc_contig().


123688 20-Dec-2003 obrien

Make the multiple include guard correct for this file location.
This fixes a bug where the guard conflicted with machine/ioctl_*.


123497 12-Dec-2003 rwatson

Spell btkr as bktr.

Pointy hat to: obrien
Reported by: Martin <nakal@web.de>


123291 08-Dec-2003 obrien

Move the bktr(4) <arch>/include/ioctl_{bt848,meteor}.h files to dev/bktr
as these ioctl's aren't MD. This also means they are installed in
/usr/include/dev/bktr now. Also provide compatability wrappers for
where these headers lived in 4.x.


123223 07-Dec-2003 imp

Ooops. These are still used by the bktr driver. David O'Brien has
plans for dealing, but I'll let him deal.

Pointy hat to: imp@


123213 07-Dec-2003 imp

Remote meteor driver. It hasn't compiled in over 3 years. If someone
makes it compile again, and can test it, we can restore the driver to
the tree.


123088 01-Dec-2003 truckman

Use a mutex to synchronize the driver top and bottom halves instead of
using critcal_enter() and critical_exit() to attempt to replace spl*()
calls. The critical section was calling selrecord(), which locks an
MTX_DEF mutex, which is not legal in a critical section.

Tested by: Stefan Ehmann <shoesoft@gmx.net> and "make universe"
Approved by: re (scottl)


122352 09-Nov-2003 tanimura

- Implement selwakeuppri() which allows raising the priority of a
thread being waken up. The thread waken up can run at a priority as
high as after tsleep().

- Replace selwakeup()s with selwakeuppri()s and pass appropriate
priorities.

- Add cv_broadcastpri() which raises the priority of the broadcast
threads. Used by selwakeuppri() if collision occurs.

Not objected in: -arch, -current


119690 02-Sep-2003 jhb

Use PCIR_BAR(x) instead of PCIR_MAPS.

Glanced over by: imp, gibbs
Tested by: i386 LINT


119493 26-Aug-2003 nectar

Revision 1.126 broke the interface of the bktr driver's
METEORSSIGNAL ioctl. Applications use this ioctl with the value
METEOR_SIG_MODE_MASK (0xFFFF0000, -65536) to reset signal delivery,
but revision 1.126 caused the driver to return EINVAL in this case.
Interestingly, the same METEORSSIGNAL ioctl in the meteor driver uses
0 to reset signal delivery.

This commit allows METEOR_SIG_MODE_MASK as a synonym for 0 in the
bktr driver, and restructures the code a bit so that it is otherwise
identical between the bktr and meteor drivers.


119418 24-Aug-2003 obrien

Use __FBSDID().
Also some minor style cleanups.


119277 22-Aug-2003 imp

Prefer new location of pci include files (which have only been in the
tree for two or more years now), except in a few places where there's
code to be compatible with older versions of FreeBSD.


118819 12-Aug-2003 alex

Add a overhaul of the soundchip initialization for the MSP34xx chipsets
found only many tv-cards.

We currently use more ore less evil hacks (slow_msp_audio sysctl) to
configure the various variants of these chips in order to have
stereo autodetection work. Nevertheless, this doesn't always work
even though it _should_, according to the specs.
This is, for example, the case for some popular Hauppauge models sold
sold in Germany.

However, the Linux driver always worked for me and others. Looking at
the sourcecode you will find that the linux-driver uses a very much
enhanced approach to program the various msp34xx chipset variants,
which is also found in the specs for these chips.

This is a port of the Linux MSP34xx code, written by Gerd Knorr
<kraxel@bytesex.org>, who agreed to re-release his code under a
BSD license for this port.

A new config option "BKTR_NEW_MSP34XX_DRIVER" is added, which is required
to enable the new driver. Otherwise the old code is used.

The msp34xx.c file is diff-reduced to the linux-driver to make later
modifications easier, thus it doesn't follow style(9) in most cases.

Approved by: roger (committing this, no time to test/review),
keichii (code review)


118749 10-Aug-2003 nectar

Add or correct range checking of signal numbers in system calls and
ioctls.

In the particular case of ptrace(), this commit more-or-less reverts
revision 1.53 of sys_process.c, which appears to have been erroneous.

Reviewed by: iedowse, jhb


116108 09-Jun-2003 fjoe

Merge NetBSD bktr_core.c rev. 1.26:
Fix broken programming of VSCALE_HI registers in yuv422_prog().

PR: 46521
Obtained from: NetBSD
MFC after: 3 days


116106 09-Jun-2003 fjoe

Add two more Vendor ID's for Leadtek Winfast TV 2000

PR: 47453
Obtained from: NetBSD (partially)


115556 31-May-2003 phk

Eliminate mostly unused local variable.

Found by: FlexeLint


112569 25-Mar-2003 jake

- Add vm_paddr_t, a physical address type. This is required for systems
where physical addresses larger than virtual addresses, such as i386s
with PAE.
- Use this to represent physical addresses in the MI vm system and in the
i386 pmap code. This also changes the paddr parameter to d_mmap_t.
- Fix printf formats to handle physical addresses >4G in the i386 memory
detection code, and due to kvtop returning vm_paddr_t instead of u_long.

Note that this is a name change only; vm_paddr_t is still the same as
vm_offset_t on all currently supported platforms.

Sponsored by: DARPA, Network Associates Laboratories
Discussed with: re, phk (cdevsw change)


111815 03-Mar-2003 phk

Gigacommit to improve device-driver source compatibility between
branches:

Initialize struct cdevsw using C99 sparse initializtion and remove
all initializations to default values.

This patch is automatically generated and has been tested by compiling
LINT with all the fields in struct cdevsw in reverse order on alpha,
sparc64 and i386.

Approved by: re(scottl)


111462 25-Feb-2003 mux

Cleanup of the d_mmap_t interface.

- Get rid of the useless atop() / pmap_phys_address() detour. The
device mmap handlers must now give back the physical address
without atop()'ing it.
- Don't borrow the physical address of the mapping in the returned
int. Now we properly pass a vm_offset_t * and expect it to be
filled by the mmap handler when the mapping was successful. The
mmap handler must now return 0 when successful, any other value
is considered as an error. Previously, returning -1 was the only
way to fail. This change thus accidentally fixes some devices
which were bogusly returning errno constants which would have been
considered as addresses by the device pager.
- Garbage collect the poorly named pmap_phys_address() now that it's
no longer used.
- Convert all the d_mmap_t consumers to the new API.

I'm still not sure wheter we need a __FreeBSD_version bump for this,
since and we didn't guarantee API/ABI stability until 5.1-RELEASE.

Discussed with: alc, phk, jake
Reviewed by: peter
Compile-tested on: LINT (i386), GENERIC (alpha and sparc64)
Runtime-tested on: i386


110297 03-Feb-2003 orion

Remove unintended growth of bt848_card_signature.


110237 02-Feb-2003 orion

Add BCTV3/PCI entry.

Rename functions bctv_* to bctv2_* and macros BCTV_* to BCTV2_* for
coexistance of BCTV2 and BCTV3.

Rename CARD_IO_GV to CARD_TO_BCTV2.

Add auto recognition of BCTV3/PCI.

PR: i386/43879
Submitted by: MOROHOSHI Akihiko <moro@remus.dti.ne.jp>
Approved by: roger
MFC after: 6 days


110149 31-Jan-2003 orion

Add tuner code for WinTV Go FM (Hauppauge Model 44811 C133). Patch
supplied by Ross Finlayson <finlayson@live.com>.


107699 09-Dec-2002 roger

Fix a panic unloading the bktr driver when devfs is in use.
PR: kern/36413


107668 07-Dec-2002 roger

Fix a bug which caused signals on YUV images to fail.
PR: i386/45678 (this also allowed kern/21305 and kern/33715 to be closed)
Submitted by: Tommy Johnson <tjohnson@bobdbob.com>


106519 06-Nov-2002 jhb

More int != pointer stuff.


104094 28-Sep-2002 phk

Be consistent about "static" functions: if the function is marked
static in its prototype, mark it static at the definition too.

Inspired by: FlexeLint warning #512


100431 21-Jul-2002 peter

Remove abuse of NBKTR - this was always a NOP on freebsd. We never
compiled this stuff if NBKTR was zero.


100423 21-Jul-2002 imp

Remove __FreeBSD__ version abuse, also de-orbit support for FreeBSD 2
and FreeBSD 3.


97208 24-May-2002 peter

Fix new gcc-3.1 warnings. I think this gets GENERIC compiling cleanly
again.


96758 16-May-2002 eric

Separate "seperate" from kernel source.


96398 11-May-2002 dd

sysctl -w -> sysctl


93165 25-Mar-2002 nsouch

Fix bktr and pcf compilation with LINT


93023 23-Mar-2002 nsouch

Major rework of the iicbus/smbus framework:

- VIA chipset SMBus controllers added
- alpm driver updated
- Support for dynamic modules added
- bktr FreeBSD smbus updated but not tested
- cleanup


92739 20-Mar-2002 alfred

Remove __P.


92252 14-Mar-2002 alfred

Fixes to make select/poll mpsafe.

Problem:
selwakeup required calling pfind which would cause lock order
reversals with the allproc_lock and the per-process filedesc lock.
Solution:
Instead of recording the pid of the select()'ing process into the
selinfo structure, actually record a pointer to the thread. To
avoid dereferencing a bad address all the selinfo structures that
are in use by a thread are kept in a list hung off the thread
(protected by sellock). When a selwakeup occurs the selinfo is
removed from that threads list, it is also removed on the way out
of select or poll where the thread will traverse its list removing
all the selinfos from its own list.

Problem:
Previously the PROC_LOCK was used to provide the mutual exclusion
needed to ensure proper locking, this couldn't work because there
was a single condvar used for select and poll and condvars can
only be used with a single mutex.
Solution:
Introduce a global mutex 'sellock' which is used to provide mutual
exclusion when recording events to wait on as well as performing
notification when an event occurs.

Interesting note:
schedlock is required to manipulate the per-thread TDF_SELECT
flag, however if given its own field it would not need schedlock,
also because TDF_SELECT is only manipulated under sellock one
doesn't actually use schedlock for syncronization, only to protect
against corruption.

Proc locks are no longer used in select/poll.

Portions contributed by: davidc


88088 18-Dec-2001 jhb

Modify the critical section API as follows:
- The MD functions critical_enter/exit are renamed to start with a cpu_
prefix.
- MI wrapper functions critical_enter/exit maintain a per-thread nesting
count and a per-thread critical section saved state set when entering
a critical section while at nesting level 0 and restored when exiting
to nesting level 0. This moves the saved state out of spin mutexes so
that interlocking spin mutexes works properly.
- Most low-level MD code that used critical_enter/exit now use
cpu_critical_enter/exit. MI code such as device drivers and spin
mutexes use the MI wrappers. Note that since the MI wrappers store
the state in the current thread, they do not have any return values or
arguments.
- mtx_intr_enable() is replaced with a constant CRITICAL_FORK which is
assigned to curthread->td_savecrit during fork_exit().

Tested on: i386, alpha


86903 26-Nov-2001 rwatson

o Add #include <sys/systm.h> to fix a warning about printf() being
used without a prototype.


86018 04-Nov-2001 phk

Don't call cdevsw_add().


84704 09-Oct-2001 jlemon

The kernel doesn't have <stdio.h> or <string.h>. Remove these.


83366 12-Sep-2001 julian

KSE Milestone 2
Note ALL MODULES MUST BE RECOMPILED
make the kernel aware that there are smaller units of scheduling than the
process. (but only allow one thread per process at this time).
This is functionally equivalent to teh previousl -current except
that there is a thread associated with each process.

Sorry john! (your next MFC will be a doosie!)

Reviewed by: peter@freebsd.org, dillon@freebsd.org

X-MFC after: ha ha ha ha


76166 01-May-2001 markm

Undo part of the tangle of having sys/lock.h and sys/mutex.h included in
other "system" header files.

Also help the deprecation of lockmgr.h by making it a sub-include of
sys/lock.h and removing sys/lockmgr.h form kernel .c files.

Sort sys/*.h includes where possible in affected files.

OK'ed by: bde (with reservations)


74903 28-Mar-2001 jhb

Switch from save/disable/restore_intr() to critical_enter/exit().


74810 26-Mar-2001 phk

Send the remains (such as I have located) of "block major numbers" to
the bit-bucket.


73930 07-Mar-2001 jhb

- Lock the process while sending it a signal.
- Attempt to define empty PROC_LOCK/UNLOCK when needed to help keep
this driver portable.


71286 20-Jan-2001 wollman

Finish deprecating <sys/select.h> in favor of <sys/selinfo.h> in kernel code.


70834 09-Jan-2001 wollman

select() DKI is now in <sys/selinfo.h>.


68077 31-Oct-2000 roger

Fix typo in comments


68071 31-Oct-2000 roger

Upgrade to driver 2.18
Support for new Hauppauge Model 44xxx WinTV Cards
(the ones with no audio mux)

Submitted by: Christian Gusenbauer <Christian.Gusenbauer@netway.at>


67641 26-Oct-2000 roger

Add new ioctls for userland access to the MSP device


67637 26-Oct-2000 roger

Fix typo


67366 20-Oct-2000 roger

Add missing 'unit' code

Submitted by: Brad L. Chisholm <blc@bsdwins.com>


67307 19-Oct-2000 roger

Add Daniel's name and fix release data


67306 19-Oct-2000 roger

Update to driver 2.17
Fixes bugs in devfs when unloading and reloading
Syncs with NetBSD changes

Submitted by: Alexander Langer <alex@big.endian.de>
Submitted by: Thomas Klausner <wiz@netbsd.org>
Submitted by: Daniel O'Connor" <doconnor@gsoft.com.au>


67164 15-Oct-2000 phk

Remove unneeded #include <machine/clock.h>


65743 11-Sep-2000 roger

Make MOD_UNLOAD return EBUSY to prevent it being unloaded automatically when we
unload the bktr driver.
Change the sub-section from SI_SUB_PSEDUO to SI_SUB_DRIVERS to make
sure the module initialises before the bktr module


65736 11-Sep-2000 roger

Change to SI_ORDER_FIRST to make sure this module runs before
the bktr module if both are loaded at the same time (eg in the boot
loader)


65728 11-Sep-2000 roger

Add MODULE_VERSION and MODULE_DEPENDS to make the bktr module load the
bktr_mem module


65692 10-Sep-2000 roger

Update to driver 2.15.
Main change is the addition of the bktr_mem module.

This holds onto the bktr driver's contiguously allocated memory
when the bktr driver is unloaded and reloaded.

This has to be done because it is virtually impossible to get
contiguous memory once a system is running.

Also tidied up the use of SMBUS, added a new Hauppauge tuner type (0x2c)
and a new Flyvideo vendor ID.


65392 03-Sep-2000 peter

Replace previous change by a move of a #include since something else
#includes "smbus.h". There is still some bogus (but harmless) stuff
here surrounding the #include <sys/bus.h> includes here and elsewhere in
the bktr code.


65391 03-Sep-2000 peter

If we are going to test NSMBUS, we had better #include the file that
defines it. This creates more warnings rather than less though. These
had gone undetected until now. :-(


65374 02-Sep-2000 phk

Avoid the modules madness I inadvertently introduced by making the
cloning infrastructure standard in kern_conf. Modules are now
the same with or without devfs support.

If you need to detect if devfs is present, in modules or elsewhere,
check the integer variable "devfs_present".

This happily removes an ugly hack from kern/vfs_conf.c.

This forces a rename of the eventhandler and the standard clone
helper function.

Include <sys/eventhandler.h> in <sys/conf.h>: it's a helper #include
like <sys/queue.h>

Remove all #includes of opt_devfs.h they no longer matter.


65049 24-Aug-2000 roger

Fix newbus resource allocations

PR: kern/18744
Submitted by: Alexander Langer <alex@cichlids.com>


64880 20-Aug-2000 phk

Remove all traces of Julians DEVFS (incl from kern/subr_diskslice.c)

Remove old DEVFS support fields from dev_t.

Make uid, gid & mode members of dev_t and set them in make_dev().

Use correct uid, gid & mode in make_dev in disk minilayer.

Add support for registering alias names for a dev_t using the
new function make_dev_alias(). These will show up as symlinks
in DEVFS.

Use makedev() rather than make_dev() for MFSs magic devices to prevent
DEVFS from noticing this abuse.

Add a field for DEVFS inode number in dev_t.

Add new DEVFS in fs/devfs.

Add devfs cloning to:
disk minilayer (ie: ad(4), sd(4), cd(4) etc etc)
md(4), tun(4), bpf(4), fd(4)

If DEVFS add -d flag to /sbin/inits args to make it mount devfs.

Add commented out DEVFS to GENERIC


62214 28-Jun-2000 roger

Update to driver 2.14. Adds new Tuner types for Hauppauge WinTV cards


62112 26-Jun-2000 roger

Update to driver 2.13.
This merges in changes from NetBSD which ensure bktr0
(actually bktr%d) is printed at the start of any output lines.

Submitted by: Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>


61035 28-May-2000 peter

Use the correct register names. s/PCI_MAP_REG_START/PCIR_MAPS/


59391 19-Apr-2000 phk

Remove ~25 unneeded #include <sys/conf.h>
Remove ~60 unneeded #include <sys/malloc.h>


59368 18-Apr-2000 phk

Remove unneeded <sys/buf.h> includes.

Due to some interesting cpp tricks in lockmgr, the LINT kernel shrinks
by 924 bytes.


59278 16-Apr-2000 roger

Remove debugging code


59277 16-Apr-2000 roger

Fix typo in interrupt handling code and fix bug in setting of adelay


59250 15-Apr-2000 roger

Update to driver 2.11.
Driver now compiles on FreeBSD/Alpha, but still requires testing.
Remove a printf, submitted by Chris D. Faulhaber <jedgar@fxp.org>


59014 04-Apr-2000 roger

Upgrade the bktr driver from 2.07 to 2.10.

- The driver now uses bus_space() and runs on NetBSD 1.4.2
Submitted by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>

- Remove startup quirks for video and vbi capture for PAL users.
PAL TV users can now run FXTV and Alevt in any order.

- Add support for cable channels >100
Submitted by Scott Presnell <srp@zgi.com>

- New MSP3410/3415 setup code added. This is experimental.
Please set the sysctl hw.bt848.slow_msp_audio to 1 for this.
Submitted by Frank Nobis<fn@radio-do.de>


59013 04-Apr-2000 roger

Add multiple #include protection

Submitted by: Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>


57162 12-Feb-2000 peter

The Leadtek Winfast TV2000 has one of the FM capable Tuners. Don't
default to a non-FM tuner or FM radio is non-functional.

Approved by: jkh


56878 29-Jan-2000 peter

Use config's tools rather than #if's.


56532 24-Jan-2000 roger

Update to driver 2.07

Add new Channel Set for France. Submitted by Daniel Dagneaux <dagneaux@lure.u-psud.fr>


56531 24-Jan-2000 roger

Update to driver 2.07

Update i2c code to build on FreeBSD 3.x and 4.x machines.
Added GPIO audio values for the Askey/Dynalink TV card talken from postings on the V4L mailing list.
Update Australian Channel Set. Submitted by John Birrell <jb@cimlogic.com.au>
Add new Channel Set for France. Submitted by Daniel Dagneaux <dagneaux@lure.u-psud.fr>


55205 29-Dec-1999 peter

Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL"
is an application space macro and the applications are supposed to be free
to use it as they please (but cannot). This is consistant with the other
BSD's who made this change quite some time ago. More commits to come.


54422 11-Dec-1999 roger

bktr driver 2.06 changelog


54314 08-Dec-1999 roger

Backout changes made in 1.102 following feedback from NTSC users

There seems to be some problem with the new rgb_vbi_prog() RISC
code not working for NTSC users.

This means that European teletext users will need to start
Alevt (or open /dev/vbi0) BEFORE starting FXTV (or opening /dev/bktr0)
if they want to capture VBI data for Teletext/Videotext or WaveTop

Reported by: Chris Csanady <cc@137.org>, Kenneth D. Merry <ken@kdm.org>,
Randy Bush <randy@psg.com>


54262 07-Dec-1999 roger

Fix bug where tuner i2c address was not set for IMS Turbo cards
Put back Hauppauge Tuner types 0x5, 0x0a, 0x1a which I deleted by mistake.


54073 03-Dec-1999 mdodd

Remove the 'ivars' arguement to device_add_child() and
device_add_child_ordered(). 'ivars' may now be set using the
device_set_ivars() function.

This makes it easier for us to change how arbitrary data structures are
associated with a device_t. Eventually we won't be modifying device_t
to add additional pointers for ivars, softc data etc.

Despite my best efforts I've probably forgotten something so let me know
if this breaks anything. I've been running with this change for months
and its been quite involved actually isolating all the changes from
the rest of the local changes in my tree.

Reviewed by: peter, dfr


53123 13-Nov-1999 roger

Update to driver 2.05

Make tuner on French SECAM Hauppauge cards work
Submitted by: Cyrille Lefevre <clefevre@citeweb.net>

Fix clipping bugs ready for Xv support in XFree86 4.0
Submitted by: Thomas Mueller <tmueller@thmu.de>

Fix the 'feature' where /dev/vbi needed to be opened before /dev/bktr
when using Teletext with Alevt and FXTV.

Requested by: Randall Hopper


52995 08-Nov-1999 peter

No need to use DEV_DRIVER_MODULE() since the bktr driver calls make_dev().
Roger: Feel free to change or spam this as you please.


52593 28-Oct-1999 roger

Update to driver release 2.04
Update AverMedia GPIO values
Submitted by: AverMedia

Add support for WinTV Theater Dolby Surround Sound DPL3518A chip
Submitted by: Frank Nobis <fn@radio-do.de>

Make PLL mode the default for Bt878s. You no longer need options BKTR_USE_PLL


52257 15-Oct-1999 roger

Include opt_bktr.
Without it the kernel config options, like OVERRIDE_TUNER, where not
getting passed to the driver.

Bug noticed by: Marc Fonvieille <fonvi@club-internet.fr>


51943 05-Oct-1999 roger

Found and fixed FM radio mute bug

Submitted by: Thomas Runge <runge@rostock.zgdv.de>


51925 04-Oct-1999 roger

Update Australian channel set and add Leadtek Winfast 2000 GPIO
values for audio.

Submitted by: peter


51725 27-Sep-1999 roger

Add auto-detection for Askey Dynalink Magic TView and
Leadtek Winfast 2000 cards.
No audio support yet, just the card make is reported.

Submitted by: Craig <crh@outpost.co.nz>
Submitted by: Peter Wemm <peter@netplex.com.au>


51694 26-Sep-1999 roger

Split the Bt848 driver into seperate files for
audio, tuner, card make, os dependent code and core bt848/i2c code.

Also, rewrite tuner code for FM Radio to make the code cleaner.


51658 25-Sep-1999 phk

Remove five now unused fields from struct cdevsw. They should never
have been there in the first place. A GENERIC kernel shrinks almost 1k.

Add a slightly different safetybelt under nostop for tty drivers.

Add some missing FreeBSD tags


51537 22-Sep-1999 roger

Move the bktr Bt848/Bt878 driver to /sys/dev/bktr
Phase 1) move the driver
Phase 2)
Phase 3) Profit, by splitting the driver into smaller files like
bktr_tuner, bktr_card, bktr_audio, bktr_<osname>
making it easier to maintain and understand.


51356 17-Sep-1999 roger

Update to driver release 1.74

Bug fix: xmradio nolonger experiences a 6Mhz offset after running FXTV

New feature: Automatic Tuner selection for AVerMedia cards with
configuration EEPROMs on (ie the Bt878 based cards)


51351 17-Sep-1999 roger

Sync with driver release 1.74


51123 10-Sep-1999 roger

Update to driver 1.73
Add new hauppauge Tuner Type 6
Add Aims Labs Video Highway Xtreme card type


50750 01-Sep-1999 roger

Update to driver 1.72.
Fix a bug where video capture locks up on channel changes.
Many thanks to Juha for solving this.

Submitted by: Juha Nurmela <Juha.Nurmela@quicknet.inet.fi>


50694 31-Aug-1999 roger

Oops. I undid the $Id: -> $FreBSD: change.
Put it back to $FreeBSD:


50693 31-Aug-1999 roger

Update to driver release 1.71

New Features:
Greatly improved VBI capture support. (mainly for the AleVT port)
Supports select() on /dev/vbi
Improved RISC program for RGB+VBI capture to capture both evenodd
VBI data even when only capturing even only (or odd only) video
Based on code from Juha Nurmela <Juha.Nurmela@quicknet.inet.fi>

Support for Hauppauge 627 and Temic 4006
Submitted by: Maurice Castro <maurice@atum.castro.aus.net>

Bug Fix:
Fix bug in AverMedia card detection.


50642 30-Aug-1999 roger

Add #include <sys/select.h> ready for select() support in bt848 driver


50548 29-Aug-1999 bde

Don't restrict our requests for contiguous memory to addresses >= 1MB.
This fixes, at least, panics in ncr_attach() on i386's with about 5MB
of memory. The restriction was a hack to leave some low memory for ISA
DMA, but on i386's we now allocate pages from the top down, so all the
restriction did was cause our allocations to fail when there is no free
memory above 1MB.


50477 28-Aug-1999 peter

$Id$ -> $FreeBSD$


50254 23-Aug-1999 phk

Convert DEVFS hooks in (most) drivers to make_dev().

Diskslice/label code not yet handled.

Vinum, i4b, alpha, pc98 not dealt with (left to respective Maintainers)

Add the correct hook for devfs to kern_conf.c

The net result of this excercise is that a lot less files depends on DEVFS,
and devtoname() gets more sensible output in many cases.

A few drivers had minor additional cleanups performed relating to cdevsw
registration.

A few drivers don't register a cdevsw{} anymore, but only use make_dev().


49195 29-Jul-1999 mdodd

Alter the behavior of sys/kern/subr_bus.c:device_print_child()

- device_print_child() either lets the BUS_PRINT_CHILD
method produce the entire device announcement message or
it prints "foo0: not found\n"

Alter sys/kern/subr_bus.c:bus_generic_print_child() to take on
the previous behavior of device_print_child() (printing the
"foo0: <FooDevice 1.1>" bit of the announce message.)

Provide bus_print_child_header() and bus_print_child_footer()
to actually print the output for bus_generic_print_child().
These functions should be used whenever possible (unless you can
just use bus_generic_print_child())

The BUS_PRINT_CHILD method now returns int instead of void.

Modify everything else that defines or uses a BUS_PRINT_CHILD
method to comply with the above changes.

- Devices are 'on' a bus, not 'at' it.
- If a custom BUS_PRINT_CHILD method does the same thing
as bus_generic_print_child(), use bus_generic_print_child()
- Use device_get_nameunit() instead of both
device_get_name() and device_get_unit()
- All BUS_PRINT_CHILD methods return the number of
characters output.

Reviewed by: dfr, peter


48781 12-Jul-1999 roger

Bug fixes
Change number of VBI lines from 16 to 12 for NTSC formats.
Juha.Nurmela@quicknet.inet.fi found/fixed bug in VBI_SLEEP.

New features
MSP3430G DBX initialisation from Matt Brown <matt@dqc.org>
STB Bt878 card identification.
Hauppauge Model Number identification.
Changes to probeCard() for better eeprom identification.
Experimental TDA9850 initialisation code, from Linux bttv.

Cross Platform Changes
The driver has been reorgainsed based ideas from Brad Parker's port to Linux
to seperate OS Dependant and Independant sections.
I have backends for FreeBSD 2.2.x/3.x and 4.x newbus, BSDI, OpenBSD and NetBSD.

This commit has FreeBSD 2.2.8/2.2-stable/3.x and FreeBSD 4.x newbus backends.

Some code submitted by: Juha.Nurmela@quicknet.inet.fi
Matt Brown <matt@dqc.org>
Brad Parker <brad@parker.boston.ma.us>

Some code obtained from: Linux bttv driver


48557 04-Jul-1999 phk

Remove cmaj and bmaj args from DEV_DRIVER_MODULE.


48528 03-Jul-1999 peter

Eliminate a bunch of #include "pci.h" and #if NPCI > 0 around entire
files. config will leave the whole file out if configured to do so.


47891 13-Jun-1999 roger

Removed checking for unit>NBKTR.
No longer need when using device_get_softc.
(also fixed bug where loadable bktr module could only access 1st device)


47884 12-Jun-1999 roger

Updated to use the new 4.x newbus API
Also removed the BSDI support (for now)
This allows the driver to be loaded/unloaded as a KLD
and loaded in the boot loader phase whithout making a custom kernel.


47735 04-Jun-1999 roger

Fix the cdevsw_add change made by PHK.
(It was accidentally added to the BSDI bktr_probe and not the
FreeBSD bktr_probe)


47640 31-May-1999 phk

Simplify cdevsw registration.

The cdevsw_add() function now finds the major number(s) in the
struct cdevsw passed to it. cdevsw_add_generic() is no longer
needed, cdevsw_add() does the same thing.

cdevsw_add() will print an message if the d_maj field looks bogus.

Remove nblkdev and nchrdev variables. Most places they were used
bogusly. Instead check a dev_t for validity by seeing if devsw()
or bdevsw() returns NULL.

Move bdevsw() and devsw() functions to kern/kern_conf.c

Bump __FreeBSD_version to 400006

This commit removes:
72 bogus makedev() calls
26 bogus SYSINIT functions

if_xe.c bogusly accessed cdevsw[], author/maintainer please fix.

I4b and vinum not changed. Patches emailed to authors. LINT
probably broken until they catch up.


47625 30-May-1999 phk

This commit should be a extensive NO-OP:

Reformat and initialize correctly all "struct cdevsw".

Initialize the d_maj and d_bmaj fields.

The d_reset field was not removed, although it is never used.

I used a program to do most of this, so all the files now use the
same consistent format. Please keep it that way.

Vinum and i4b not modified, patches emailed to respective authors.


47492 25-May-1999 roger

Rename 849 to 849A (the correct name for the IC)


47491 25-May-1999 roger

Add support for the Bt878/Bt879's Intel 430 FX and
SIS/VIA/ OPTi chipset PCI bus workarounds.

These make the Bt878/879 chips stabler on certain
older and non-intel motherboards.

Use options BKTR_430_FX_MODE
or options BKTR_SIS_VIA_MODE
to enable these modes.

Also rename 849 to 849A


47439 23-May-1999 roger

Added rgb_vbi_prog() to capture VBI data and video at the
same time. To capture VBI data, /dev/vbi must be opened
before starting video capture.
A partly on code from Hiroki Mori <mori@infocity.co.jp>


47380 22-May-1999 bde

Restored rev.1.76 which was clobbered by rev.1.77.


47327 19-May-1999 roger

Updated Australian channel frequencies

Submitted by: Ivan Brawley <brawley@internode.com.au>


47298 18-May-1999 roger

Bt848 driver release 1.65
Change Intel GPIO mask to hopefully stop turning the Intel Camera off
Fixed tuner selection on Hauppauge card with tuner 0x0a
Replaced none tuner with no tuner for Theo de Raadt <deraadt@openbsd.org>.

Ivan Brawley <brawley@internode.com.au> added
the Australian channel frequencies.


47297 18-May-1999 roger

Bt848 driver release 1.65
Updated with australian channel set

Submitted by: Ivan Brawley <brawley@internode.com.au>


47102 13-May-1999 bde

memcmp -> bcmp. memcmp doesn't exist in the kernel, but unfortunately
it exists as a gcc builtin provided the kernel is not compiled with
-O0 or -fno-builtin.


46877 10-May-1999 roger

Support LifeView FlyVideo 98 cards. Use EEPROM for card autodetection.Use
bttv's audio mux values.

Automatically locate the EEPROM i2c address and read the subsystem_vendor_id
from EEPROM and not the PCI registers.

Add NSMBUS checks around smbus/iicbus i2c bus code

Add GPIO mask for the audio mux to each card type.
Add CARD_ZOLTRIX and CARD_KISS from mailing list searches.

Tested by: Paul Reece <paul@fastlane.net.au>,
Ivan Brawley <brawley@internode.com.au> and
Gilad Rom <rom_glsa@ein-hashofet.co.il>


46876 10-May-1999 roger

Update card type to support GPIO mask

Add NSMBUS checks around smbus/iicbus i2c bus code.


46875 10-May-1999 roger

Add #if (NSMBUS>0) checks around smbus/iicbus i2c bus code.


46813 09-May-1999 peter

Simplify the COMPAT_PCI_DRIVER/DATA_SET hack. We can add:
#define COMPAT_PCI_DRIVER(name,data) DATA_SET(pcidevice_set,data)
.. to 2.2.x and 3.x if people think it's worth it. Driver writers can do
this if it's not defined. (The reason for this is that I'm trying to
progressively eliminate use of linker_sets where it hurts modularity and
runtime load capability, and these DATA_SET's keep getting in the way.)


46743 08-May-1999 dfr

Move the declaration of the interrupt type from the driver structure
to the BUS_SETUP_INTR call.


46199 30-Apr-1999 roger

My last commit accidentally undid the changes made in rev 1.68
regarding COMPAT_PCI_DRIVER. Put them back.


46176 29-Apr-1999 roger

Added initial code for VBI capture based on work by
Hiroki Mori <mori@infocity.co.jp> and reworked by myself.
This allows software decoding of teletext, intercast and
subtitles via /dev/vbi.


46175 29-Apr-1999 roger

Add support for VBI capture from /dev/vbi.
This will allow software teletext/intercast/subtitles decoding
while watching a TV station.

Based on code from Hiroki Mori <mori@infocity.co.jp> but reworked by
myself.


46174 29-Apr-1999 roger

Added new cards: NEC PK-UG-X017 and I/O DATA GV-BCTV2/PCI
Added new tuner: ALPS_TSBH1 (plus FM Radio for ALPS_TSCH5)
Added support for BCTV audio mux.

Submitted by Hiroki Mori <mori@infocity.co.jp>


46164 29-Apr-1999 roger

Fix crashes caused by rows=0 or columns=0.
Add new #ifdef. By defining BKTR_NO_MSP_RESET you can prevent the
MSP34xx being reset by the bt848 driver. This is handy
if you pre-initialise the MSP34xx stereo audio chip in another
operating system first (eg MS Windows).
Suggested by: Randal Hopper<aa8vb@ipass.net>
Suggested by: Yuri Gindin <yuri@xpert.com>


46153 28-Apr-1999 dt

s/static foo_devsw_installed = 0;/static int foo_devsw_installed;/.
(Edited automatically)


46024 24-Apr-1999 peter

Use COMPAT_PCI_DRIVER() for registration if it exists. This shouldn't
hurt the driver portability to 3.x too much for where drivers are shared.


44252 25-Feb-1999 roger

My changes:
Added autodetection of MMAC Osprey 100 card for
Jan Schmidt <mmedia@rz.uni-greifswald.de>. The MMAC card has an EEPROM
which contains an ASCII string beginning with "MMAC".
Corrected Hauppauge Audio Mux Mute value from 0x01 to 0x04.
Fixed a typo.

Sumitted change:
Added ALPS Tuner Type submitted by Hiroki Mori <mori@infocity.co.jp>

Submitted by: Roger Hardiman and Hiroki Mori <mori@infocity.co.jp>


44063 15-Feb-1999 roger

Corrected ioctl numbers conflict.
Thanks to Vsevolod Lobko <seva@alex-ua.com> for spotting this.
P:


43890 11-Feb-1999 roger

Added ioctl REMOTE_GETKEY for Hauppauge Infra-Red Remote Control.
Submitted by Roger Hardiman.

Added ioctl TVTUNER_GETCHANSET to discover which regions the bktr driver
supports. Submitted by Vsevolod Lobko <seva@alex-ua.com>

Added BT848_GPIO_SET_EN,BT848_GPIO_SET_DATA (and GETs) to allow user land
control of the GPIO pins. This allows a Radio module on the GPIO port
to be controlled. Submitted by Vsevolod Lobko <seva@alex-ua.com>
The kernel option BKTR_GPIO_ACCESS must be used to enable the GPIO ioctls.

Submitted by: Roger Hardiman and Vsevolod Lobko <seva@alex-ua.com>


43889 11-Feb-1999 roger

Added new ioctls for Hauppage Infra-Red Remote Control support,
Obtaining the supported channel sets and Controlling the GPIO port.

Submitted by: Roger Hardiman and Vsevolod Lobko <seva@alex-ua.com>


43771 08-Feb-1999 roger

Added detection for bt848a chips


43770 08-Feb-1999 roger

Added check to bktr_mmap() from OpenBSD driver.
Improved MSP34xx reset for bt848 Hauppauge boards.
Added detection for Bt848a.
Vsevolod Lobko<seva@sevasoft.alex-ua.com> added more XUSSR channels.
Submitted by: parts from Vsevolod Lobko<seva@sevasoft.alex-ua.com>
Obtained from: parts from OpenBSD


43353 28-Jan-1999 roger

Support for MSP3410D / MSP3415D Stereo/Mono audio using the audio format
Auto Detection Mode. This leaves MSP3400C owners still unsupported.
Thanks to Gerd Knorr <kraxel@cs.tu-berlin.de> for providing some early
assistance and sample code in the linux bttv driver.
Nicolas Souchu <nsouch@freebsd.org> ported the msp_read/write/reset
functions to smbus/iicbus.

METEOR_INPUT_DEV2 now selects a composite camera on the SVIDEO port.
For true SVIDEO, use METEOR_INPUT_DEV_SVIDEO.
If you get a monochrome image from the SVIDEO port, you have
seleted the wrong input type.

Tested by: Johan Larsson<gozer@ludd.luth.se>


43348 28-Jan-1999 roger

Added METEOR_DEV2 and METEOR_DEV3


43311 28-Jan-1999 dillon

Fix warnings in preparation for adding -Wall -Wcast-qual to the
kernel compile


43099 23-Jan-1999 roger

Added detection of Hauppauge IR remote control.
and MSP34xx Audio chip. Fixed i2c read error.
Hauppauge supplied details of new Tuner Types.
Added tuner type 0x1a.
Danny Braniss <danny@cs.huji.ac.il> submitted Bt878
AverMedia detection with PCI subsystem vendor id.


43098 23-Jan-1999 roger

Submitted by: Roger Hardiman <roger@cs.strath.ac.uk>
Updated to support Hauppauge IR Remote Control


41771 14-Dec-1998 dillon

probe function changed from returning char * to const char *.


41591 07-Dec-1998 archie

The "easy" fixes for compiling the kernel -Wunused: remove unreferenced static
and local variables, goto labels, and functions declared but not defined.


41004 08-Nov-1998 dfr

* Fix a couple of places in the device pager where an address was
truncated to 32 bits.
* Change the calling convention of the device mmap entry point to
pass a vm_offset_t instead of an int for the offset allowing
devices with a larger memory map than (1<<32) to be supported
on the alpha (/dev/mem is one such).

These changes are required to allow the X server to mmap the various
I/O regions used for device port and memory access on the alpha.


40991 07-Nov-1998 nsouch

Return to previous check_for_i2c_devices() behaviour.
Cast the cmd parameter to unsigned char in every smbus call.

Submitted by: Roger Hardiman <roger@cs.strath.ac.uk>


40781 31-Oct-1998 nsouch

Brooktree driver ported to the new I2C framework. See iicbus(4) for more info.


39856 01-Oct-1998 sos

Oops, forgot /* */ around Id string


39842 30-Sep-1998 sos

Hauppauge Tech Support confirmed all Hauppauge 878 PAL/SECAM boards
will use PLL mode. Added to card probe. Thanks to Ken and Fred.

Submitted by: Roger Hardiman <roger@cs.strath.ac.uk>


39841 30-Sep-1998 sos

Hauppauge Tech Support confirmed all Hauppauge 878 PAL/SECAM boards
will use PLL mode. Added to card probe. Thanks to Ken and Fred.

Submitted by: Roger Hardiman <roger@cs.strath.ac.uk>


39838 30-Sep-1998 sos

Changed tuner code to autodetect tuner i2c address.
Addresses were incorrectly hardcoded.

Submitted by: Roger Hardiman <roger@cs.strath.ac.uk>


39041 10-Sep-1998 sos

Changed METEORSINPUT for Hauppauge cards with bt878.
Also fixed video_open defines and 878 support.

Submitted by: Fred Templin <templin@erg.sri.com>


39040 10-Sep-1998 sos

Correct SECAM B-Delay and add XUSSR channel set.

Submitted by: Vsevolod Lobko <seva@alex-ua.com>


38708 31-Aug-1998 sos

Fixed bug in Miro Tuner detection. Missing Goto.
Removed Hauppauge EEPROM 0x10 detection as I think 0x10 should be a
PAL tuner, not NTSC.
Reinstated some Tuner Guesswork code from 1.27

Submitted by: Roger Hardiman <roger@cs.strath.ac.uk>


38707 31-Aug-1998 sos

Renamed BT848[SG]CAPAREA to BT848_[SG]CAPAREA.
Added PR kern/7177 for SECAM Video Highway Xtreme with single crystal
PLL configuration submitted by Vsevolod Lobko <seva@alex-ua.com>.
In kernel configuration file add
options OVERRIDE_CARD=2
options OVERRIDE_TUNER=11
options BKTR_USE_PLL

Submitted by: Roger Hardiman <roger@cs.strath.ac.uk>


38706 31-Aug-1998 sos

Added Capture Area ioctl - BT848[SG]CAPAREA.
Normally the full 640x480 (768x576 PAL) image is grabbed. This ioctl
allows a smaller area from anywhere within the video image to be
grabbed, eg a 400x300 image from (50,10).
See restrictions in BT848SCAPAREA.

Submitted by: Roger Hardiman <roger@cs.strath.ac.uk>


38354 16-Aug-1998 bde

Use [u]intptr_t instead of [u_]long for casts between pointers and
integers. Don't forget to cast to (void *) as well.


38211 10-Aug-1998 sos

Support the PAL version of the BT878 based Haupauge WinTV/PCI.

Submitted by: Matthias Scheler <tron@netbsd.org>


38184 08-Aug-1998 sos

Updated Hauppauge detection code for Tuner ID 0x0a for newer NTSC
WinCastTV 404 with Bt878 chipset. Tidied up PAL default in video_open()

Submitted by: Roger Hardiman <roger@cs.strath.ac.uk>


37646 14-Jul-1998 sos

Add support for the AVer Media range of cards.


37631 14-Jul-1998 ahasty

I checked in the wrong version yesterday . The correct version is 1.38

Amancio


37611 13-Jul-1998 ahasty

Improved Hauppauge's tuner detection and bt878 support

Amancio


37101 21-Jun-1998 bde

Removed unused includes.


36735 07-Jun-1998 dfr

This commit fixes various 64bit portability problems required for
FreeBSD/alpha. The most significant item is to change the command
argument to ioctl functions from int to u_long. This change brings us
inline with various other BSD versions. Driver writers may like to
use (__FreeBSD_version == 300003) to detect this change.

The prototype FreeBSD/alpha machdep will follow in a couple of days
time.


36663 05-Jun-1998 ahasty

Reviewed by: hasty@star-gate.com
Submitted by: Roger Hardiman <roger@cs.strath.ac.uk>

I left out a line of code from Roger's last patch :(


36334 24-May-1998 ahasty

Reviewed by: hasty@freebsd.org
Submitted by: hasty@star-gate.com

Eliminate NTSC default setting if user choses a different video format.


36172 19-May-1998 ahasty

Reviewed by: ahasty@freebsd.org
Submitted by: Roger Hardiman <roger@cs.strath.ac.uk>
options BROOKTREE_SYSTEM_DEFAULT=BROOKTREE_PAL
in the kernel config file makes the driver's video_open() function
select PAL rather than NTSC. This fixed all the hangs on my
Dual Crystal card when using a PAL video signal.

As a result, you can loose the tsleep (of 2 seconds - now 0.25!!)
which I previously added. (Unless someone else wanted the 0.25
second tsleep).


36090 16-May-1998 ahasty

1.31 Randall Hopper <rhh@ct.picker.com>
submitted ioctl to clear the video buffer
prior to starting video capture
Amancio : clean up yuv12 so that it does not
affect rgb capture. Basically, fxtv after
capturing in yuv12 mode , switching to rgb
would cause the video capture to be too bright.
1.32 disable inverse gamma function for rgb and yuv
capture. fixed meteor brightness ioctl it now
converts the brightness value from unsigned to
signed.
1.33 added sysctl: hw.bt848.tuner, hw.bt848.reverse_mute,
hw.bt848.card
card takes a value from 0 to bt848_max_card
tuner takes a value from 0 to bt848_max_tuner
reverse_mute : 0 no effect, 1 reverse tuner
mute function some tuners are wired reversed :(


35313 19-Apr-1998 ahasty

Forgot to add opt_bktr.h


35259 18-Apr-1998 ahasty

Reviewed by: Amancio
Submitted by: Roger Hardiman <roger@cs.strath.ac.uk>
Roger Hardiman <roger@cs.strath.ac.uk> :
Revised autodetection code to correctly handle both
old and new VideoLogic Captivator PCI cards.
Added tsleep of 2 seconds to initialistion code for PAL users.
Corrected clock selection code on format change.

--- Amancio


35057 06-Apr-1998 ahasty

take out opt_bktr.h from brooktree848.c


35050 05-Apr-1998 ahasty

Reviewed by: Amancio
Submitted by: Frank Nobis <fn@Radio-do.de>

Mods to view german cable tv and minor fix to correctly identify bt849.


33940 01-Mar-1998 bde

Restored half of the ANSI semantic errors fix which was clobbered
by the previous commit.


33850 26-Feb-1998 ahasty

Radio support for bt848 cards from Flemming Jacobsen <fj@trw.nl>

Amancio


33830 25-Feb-1998 bde

Added missing #include of "opt_devfs.h".

Fixed pedantic semantics errors (in ANSI C, static arrays must have
a size, and static objects should be consistently declared as static
unless you know more than anyone should have to know about the
linkage rules).


33638 20-Feb-1998 ahasty

Move Luigi's I2CWR ioctl from the video_ioctl section to the
tuner_ioctl section. Changed Major device from 79 to 92 and reserved
our Major device number -- hasty@star-gate.com


33181 09-Feb-1998 eivind

Staticize.


33134 06-Feb-1998 eivind

Back out DIAGNOSTIC changes.


33108 04-Feb-1998 eivind

Turn DIAGNOSTIC into a new-style option.


33066 04-Feb-1998 eivind

Re-add my DEVFS changes after they were stomped on. This time, I throw away
the DEVFS tokens (as they weren't used anywhere anyway).


33025 02-Feb-1998 ahasty

Bugs/Enhancements:

1. Takeshi Ohashi <ohashi@atohasi.mickey.ai.kyutech.ac.jp> submitted
code to support bktr_read . /usr/src/share/examples/rgb24.c now works 8)

2. Flemming Jacobsen <fj@schizo.dk.tfs.com> submitted code to support
radio available with in some bt848 based cards;additionally, wrote
code to correctly recognized his bt848 card.
3. Roger Hardiman <roger@cs.strath.ac.uk> submitted various fixes to smooth
out the microcode and made all modes consistent.

4. Added supported for yuv12 so we know can capture raw streams and feed it
to mpeg_encoder . The upshot is that we can now mpeg encode more and save
nearly 100 percent of the disk requirements previously for programs such
as fxtv first save the raw video image to disk then converted to a
format suitable for mpeg_encode.


32926 31-Jan-1998 eivind

Attempt at making this use DEVFS properly. (Now it should at least work.)


32726 24-Jan-1998 eivind

Make all file-system (MFS, FFS, NFS, LFS, DEVFS) related option new-style.

This introduce an xxxFS_BOOT for each of the rootable filesystems.
(Presently not required, but encouraged to allow a smooth move of option *FS
to opt_dontuse.h later.)

LFS is temporarily disabled, and will be re-enabled tomorrow.


32136 31-Dec-1997 ahasty

Reviewed by: Amancio Hasty
Submitted by: Jonathan Hanna <pangolin@rogers.wave.ca>
The patch is for a Hauppauge Win/TV dbx with FM. I still need to
config OVERRIDE_TUNER, but it works nicely.


31186 16-Nov-1997 ahasty

Reviewed by: Amancio Hasty
Submitted by: Amancio Hasty <hasty@star-gate.com>
Added yuv12 support for mpeg encoding and Randall Hopper's fixed for Temporal
Decimation


30995 06-Nov-1997 markm

Rats. Committed the wrong version.
Move the declarations to the top of the ioctl() function so this compiles.


30980 06-Nov-1997 markm

1) Add the IOCTL for Luigi's BT848 -> I2C bus driver.
2) Fix temporal decimation, disable it when
doing CAP_SINGLEs, and in dual-field capture, don't
capture fields for different frames

Submitted by: Luigi Rizzo & Randall Hopper


30979 06-Nov-1997 markm

Add the IOCTL for Luigi's BT848 -> I2C bus driver.


30856 30-Oct-1997 eivind

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)


30216 08-Oct-1997 markm

Despam 1.11, 1.12 and 1.13 caused by no sync between author/committer/CURRENT


30193 07-Oct-1997 markm

Latest round of patches from the author.

This driver includes the following patches submitted by:

1.0 Hideyuki Suzuki <hideyuki@sat.t.u-tokyo.ac.jp>
Japanese Cable support

2.0 Keith Sklower <sklower@CS.Berkeley.EDU>
Minor update to the BSDI section so it compiles cleanly on BSDI

3.0 Joao Carlos Mendes Luis <jonny@coppe.ufrj.br>
ioctl interface to select video format , NTSC, PAL, etc...


29233 09-Sep-1997 markm

Amancio's latest in the Brooktree driver.
This fixes the european frequency set, separates this further from the
Meteor driver and fixes bugs.


29041 02-Sep-1997 bde

Removed unused #includes.


28283 17-Aug-1997 fsmp

Added frequencies for north american HRC cable.

Submitted by: Yixin Jin <yjin@rain.cs.ucla.edu> (I think)
Resubmitted by: Kenneth Merry <ken@gt.ed.net>


26651 14-Jun-1997 fsmp

Added 2 new defines:
- OVERRIDE_TUNER: allows you to manually choose the tuner type for those
cards that fail to probe properly. See source for legal
values.
- OVERRIDE_DBX: allows you to manually choose DBX or NO DBX for those
cards that fail to probe properly.
0 == no DBX circuit present, 1 == DBX circuit present.


25497 05-May-1997 jmg

use frames instead of fields, and restore full meteor compatibility for
generalized pixel support.

Submitted by: Amancio Hasty


25329 01-May-1997 fsmp

1.15 4/18/97 John-Mark Gurney <gurney_j@resnet.uoregon.edu>
Added [SR]RGBMASKs ioctl for byte swapping.

1.16 4/20/97 Randall Hopper <rhh@ct.picker.com>
Generalized RGBMASK ioctls for general pixel
format setting [SG]ACTPIXFMT, and added query API
to return driver-supported pix fmts GSUPPIXFMT.

1.17 4/21/97 hasty@rah.star-gate.com
Clipping support added.

1.18 4/23/97 Clean up after failed CAP_SINGLEs where bt
interrupt isn't delivered, and fixed fixing
CAP_SINGLEs that for ODD_ONLY fields.

Submitted by: individuals in above log messages.


25328 01-May-1997 fsmp

1.15 4/18/97 John-Mark Gurney <gurney_j@resnet.uoregon.edu>
Added [SR]RGBMASKs ioctl for byte swapping.

1.16 4/20/97 Randall Hopper <rhh@ct.picker.com>
Generalized RGBMASK ioctls for general pixel
format setting [SG]ACTPIXFMT, and added query API
to return driver-supported pix fmts GSUPPIXFMT.

1.17 4/21/97 hasty@rah.star-gate.com
Clipping support added.

1.18 4/23/97 Clean up after failed CAP_SINGLEs where bt
interrupt isn't delivered, and fixed fixing
CAP_SINGLEs that for ODD_ONLY fields.

Submitted by: individuals in above log messages.


24991 17-Apr-1997 fsmp

Amancio:
This patch fixes the problem of vic only capturing an even or odd frame plus
the my early patch for missing frames with resolutions higher than 320x240
in rgb mode.

The yuv422 patch introduces a minor bug in that a green line appears at the
bottom of the captured window . There is no easy work around for this right
now.

Reviewed by: various bt848 hackers
Submitted by: Amancio Hasty <hasty@rah.star-gate.com>


24528 02-Apr-1997 fsmp

PAL support: magic numbers moved into format_params structure.
Revised AFC interface.
Fixed DMA_PROG_ALLOC size misdefinition.

Submitted by: richard@cogsci.ed.ac.uk (Richard Tobin)


24246 25-Mar-1997 fsmp

"Louis A. Mamakos" <louie@TransSys.COM> new bt848 struct
Randall Hopper <rhh@ct.picker.com> GHUE/GBRIGHT bug
Louis Mamakos made a new bt848 struct, including massive changes to the entire
body of code, substituting array offsets with struct members.

Randall Hopper aadded fixes of BT848_GHUE & BT848_GBRIG.

I (fsmp):
added polled hardware i2c routines,
removed all existing software i2c routines.
added eeprom support.


24244 25-Mar-1997 fsmp

added support for EEProms writing/reading.


24087 21-Mar-1997 fsmp

Submitted by: Michael Petry <petry@netwolf.NetMasters.com>
Michael submitted code to activate the audio muxes.

fsmp:
extended those changes for different boards.
auto-detection of board types.
auto-detection of tuner types.
auto-detection of stereo option.


24086 21-Mar-1997 fsmp

Submitted by: Michael Petry <petry@netwolf.NetMasters.com>
Michael submitted code to activate the audio muxes.

fsmp:
extended those changes for different boards.
auto-detection of board types.
auto-detection of tuner types.
auto-detection of stereo option


24046 19-Mar-1997 fsmp

additions for table-driven frequency calculation.
addition of colorbar ioctl.
removed unneeded disable_intr()/enable_intr() wrappers in i2c code.
minor cleanup.


24045 19-Mar-1997 fsmp

additions for table-driven frequency calculation.
addition of colorbar ioctl.


23972 17-Mar-1997 fsmp

Submitted by: Doug White <dwhite@gdi.uoregon.edu>

I broke the cable tuning with my 'TEST_A' code. Remove TEST_A define
till I finish this change for both tuning modes. Note that this
will effectively break the new TVTUNER_SETFREQ/TVTUNER_GETFREQ ioctl()s.
These aren't used by anyone but me yet (attempt to provide full resolution
fine tuning for "fringe" stations) so it should be no problem


23936 16-Mar-1997 fsmp

patches for bt848 specific hue/bright/contrast/satu/satv.


23935 16-Mar-1997 fsmp

Submitted by: Amancio Hasty <hasty@rah.star-gate.com>

addition of bt848 specific ioctl()s for hue/bright/contrast/satu/satv.

patches by Amancio Hasty to fix "screen freeze" problem.


23599 10-Mar-1997 markm

Initial import of the Brooktree PCI-TV drivers. I have not tested
these, they may not even compile. I am importing them on behalf
of the submitters.
Submitted by: amancio, smp


18444 21-Sep-1996 bde

Cleaned up all headers that include <sys/ioctl.h> or <sys/ioccom.h>:
- don't include <sys/ioctl.h> in any header. Include <sys/ioccom.h>
instead. This was already done in 4.4Lite for the most important
ioctl headers. Header spam currently increases kernel build
times by 10-20%. There are more than 30000 #includes (not counting
duplicates) for compiling LINT.
- include <sys/types.h> if and only it is necessary to make the header
almost self-sufficient (some ioctl headers still need structs from
elsewhere).
- uniformized idempotency ifdefs. Copied the style in the 4.4Lite
ioctl headers.


16177 07-Jun-1996 jkh

A trailing patch Jim left out of the last commit.
Submitted-by: james


15802 17-May-1996 jkh

A patch for the meteor device driver. It fixes:
1) A spelling error pointed out by Paco Hope.
2) A bug in the range checking routing pointed out by Jim Bray.
3) Enables the setting of frames per second.
Submitted-By: Jim Lowe <james@miller.cs.uwm.edu>


14886 28-Mar-1996 jkh

A bug fix and a couple of new modes for the meteor driver.
Submitted-By: Jim Lowe <james@miller.cs.uwm.edu>


14320 02-Mar-1996 jkh

Hopefully, this will fix the problems that some people have been having with
the S-Video input. It also has code in the driver for the meteor RGB support
and some other bug fixes. I don't have a meteor RGB but I have been told
that it works.
Submitted by: Jim Lowe <james@miller.cs.uwm.edu>


13815 01-Feb-1996 jkh

Sync with latest Meteor and Spigot sources from James.
Submitted by: Jim Lowe <james@miller.cs.uwm.edu>


13765 30-Jan-1996 mpp

Fix a bunch of spelling errors in the comment fields of
a bunch of system include files.


13529 21-Jan-1996 jkh

Newest version of the Matrox Meteor driver. Tested with various MBONE
tools and found to work better with both nv and vic.
Submitted by: Jim Lowe <james@miller.cs.uwm.edu>


12511 29-Nov-1995 jkh

A batch of Jim Lowe's patches:
o Add signed/unsigned functionality to the matrox meteor device driver.
o Apply a few fixes to the sound driver.
o Add a ``SPIGOT_UNSECURE'' compile time definition so, if one defines
SPIGOT_UNSECURE in their conf file, then they can use the spigot w/o
root. There is a warning that this allows users access to the IO
page which is probably not secure.
Submitted by: james


10391 28-Aug-1995 jkh

Kernel components of Matrox Meteor driver.
Submitted by: Mark Tinguely <tinguely@plains.nodak.edu> and Jim Lowe <james>