head	1.7;
access;
symbols
	netbsd-11-0-RC4:1.7
	netbsd-11-0-RC3:1.7
	netbsd-11-0-RC2:1.7
	netbsd-11-0-RC1:1.7
	perseant-exfatfs-base-20250801:1.7
	netbsd-11:1.7.0.36
	netbsd-11-base:1.7
	netbsd-10-1-RELEASE:1.7
	perseant-exfatfs-base-20240630:1.7
	perseant-exfatfs:1.7.0.34
	perseant-exfatfs-base:1.7
	netbsd-8-3-RELEASE:1.6
	netbsd-9-4-RELEASE:1.7
	netbsd-10-0-RELEASE:1.7
	netbsd-10-0-RC6:1.7
	netbsd-10-0-RC5:1.7
	netbsd-10-0-RC4:1.7
	netbsd-10-0-RC3:1.7
	netbsd-10-0-RC2:1.7
	thorpej-ifq:1.7.0.32
	thorpej-ifq-base:1.7
	thorpej-altq-separation:1.7.0.30
	thorpej-altq-separation-base:1.7
	netbsd-10-0-RC1:1.7
	netbsd-10:1.7.0.28
	netbsd-10-base:1.7
	bouyer-sunxi-drm:1.7.0.26
	bouyer-sunxi-drm-base:1.7
	netbsd-9-3-RELEASE:1.7
	thorpej-i2c-spi-conf2:1.7.0.24
	thorpej-i2c-spi-conf2-base:1.7
	thorpej-futex2:1.7.0.22
	thorpej-futex2-base:1.7
	thorpej-cfargs2:1.7.0.20
	thorpej-cfargs2-base:1.7
	cjep_sun2x-base1:1.7
	cjep_sun2x:1.7.0.18
	cjep_sun2x-base:1.7
	cjep_staticlib_x-base1:1.7
	netbsd-9-2-RELEASE:1.7
	cjep_staticlib_x:1.7.0.16
	cjep_staticlib_x-base:1.7
	thorpej-i2c-spi-conf:1.7.0.14
	thorpej-i2c-spi-conf-base:1.7
	thorpej-cfargs:1.7.0.12
	thorpej-cfargs-base:1.7
	thorpej-futex:1.7.0.10
	thorpej-futex-base:1.7
	netbsd-9-1-RELEASE:1.7
	bouyer-xenpvh-base2:1.7
	phil-wifi-20200421:1.7
	bouyer-xenpvh-base1:1.7
	phil-wifi-20200411:1.7
	bouyer-xenpvh:1.7.0.8
	bouyer-xenpvh-base:1.7
	is-mlppp:1.7.0.6
	is-mlppp-base:1.7
	phil-wifi-20200406:1.7
	netbsd-8-2-RELEASE:1.6
	ad-namecache-base3:1.7
	netbsd-9-0-RELEASE:1.7
	netbsd-9-0-RC2:1.7
	ad-namecache-base2:1.7
	ad-namecache-base1:1.7
	ad-namecache:1.7.0.4
	ad-namecache-base:1.7
	netbsd-9-0-RC1:1.7
	phil-wifi-20191119:1.7
	netbsd-9:1.7.0.2
	netbsd-9-base:1.7
	phil-wifi-20190609:1.7
	netbsd-8-1-RELEASE:1.6
	netbsd-8-1-RC1:1.6
	isaki-audio2:1.6.0.42
	isaki-audio2-base:1.6
	pgoyette-compat-merge-20190127:1.6
	pgoyette-compat-20190127:1.6
	pgoyette-compat-20190118:1.6
	pgoyette-compat-1226:1.6
	pgoyette-compat-1126:1.6
	pgoyette-compat-1020:1.6
	pgoyette-compat-0930:1.6
	pgoyette-compat-0906:1.6
	jdolecek-ncqfixes:1.6.0.40
	jdolecek-ncqfixes-base:1.6
	netbsd-7-2-RELEASE:1.6
	pgoyette-compat-0728:1.6
	netbsd-8-0-RELEASE:1.6
	phil-wifi:1.6.0.38
	phil-wifi-base:1.6
	pgoyette-compat-0625:1.6
	netbsd-8-0-RC2:1.6
	pgoyette-compat-0521:1.6
	pgoyette-compat-0502:1.6
	pgoyette-compat-0422:1.6
	netbsd-8-0-RC1:1.6
	pgoyette-compat-0415:1.6
	pgoyette-compat-0407:1.6
	pgoyette-compat-0330:1.6
	pgoyette-compat-0322:1.6
	pgoyette-compat-0315:1.6
	netbsd-7-1-2-RELEASE:1.6
	pgoyette-compat:1.6.0.36
	pgoyette-compat-base:1.6
	netbsd-7-1-1-RELEASE:1.6
	tls-maxphys-base-20171202:1.6
	matt-nb8-mediatek:1.6.0.34
	matt-nb8-mediatek-base:1.6
	nick-nhusb-base-20170825:1.6
	perseant-stdc-iso10646:1.6.0.32
	perseant-stdc-iso10646-base:1.6
	netbsd-8:1.6.0.30
	netbsd-8-base:1.6
	prg-localcount2-base3:1.6
	prg-localcount2-base2:1.6
	prg-localcount2-base1:1.6
	prg-localcount2:1.6.0.28
	prg-localcount2-base:1.6
	pgoyette-localcount-20170426:1.6
	bouyer-socketcan-base1:1.6
	jdolecek-ncq:1.6.0.26
	jdolecek-ncq-base:1.6
	pgoyette-localcount-20170320:1.6
	netbsd-7-1:1.6.0.24
	netbsd-7-1-RELEASE:1.6
	netbsd-7-1-RC2:1.6
	nick-nhusb-base-20170204:1.6
	netbsd-7-nhusb-base-20170116:1.6
	bouyer-socketcan:1.6.0.22
	bouyer-socketcan-base:1.6
	pgoyette-localcount-20170107:1.6
	netbsd-7-1-RC1:1.6
	nick-nhusb-base-20161204:1.6
	pgoyette-localcount-20161104:1.6
	netbsd-7-0-2-RELEASE:1.6
	nick-nhusb-base-20161004:1.6
	localcount-20160914:1.6
	netbsd-7-nhusb:1.6.0.20
	netbsd-7-nhusb-base:1.6
	pgoyette-localcount-20160806:1.6
	pgoyette-localcount-20160726:1.6
	pgoyette-localcount:1.6.0.18
	pgoyette-localcount-base:1.6
	nick-nhusb-base-20160907:1.6
	nick-nhusb-base-20160529:1.6
	netbsd-7-0-1-RELEASE:1.6
	nick-nhusb-base-20160422:1.6
	nick-nhusb-base-20160319:1.6
	nick-nhusb-base-20151226:1.6
	netbsd-7-0:1.6.0.16
	netbsd-7-0-RELEASE:1.6
	nick-nhusb-base-20150921:1.6
	netbsd-7-0-RC3:1.6
	netbsd-7-0-RC2:1.6
	netbsd-7-0-RC1:1.6
	nick-nhusb-base-20150606:1.6
	nick-nhusb-base-20150406:1.6
	nick-nhusb:1.6.0.14
	nick-nhusb-base:1.6
	netbsd-6-0-6-RELEASE:1.4
	netbsd-6-1-5-RELEASE:1.4
	netbsd-7:1.6.0.12
	netbsd-7-base:1.6
	yamt-pagecache-base9:1.6
	yamt-pagecache-tag8:1.1.2.1
	netbsd-6-1-4-RELEASE:1.4
	netbsd-6-0-5-RELEASE:1.4
	tls-earlyentropy:1.6.0.10
	tls-earlyentropy-base:1.6
	riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.6
	riastradh-drm2-base3:1.6
	netbsd-6-1-3-RELEASE:1.4
	netbsd-6-0-4-RELEASE:1.4
	netbsd-6-1-2-RELEASE:1.4
	netbsd-6-0-3-RELEASE:1.4
	rmind-smpnet-nbase:1.6
	netbsd-6-1-1-RELEASE:1.4
	riastradh-drm2-base2:1.6
	riastradh-drm2-base1:1.6
	riastradh-drm2:1.6.0.8
	riastradh-drm2-base:1.6
	rmind-smpnet:1.6.0.6
	rmind-smpnet-base:1.6
	netbsd-6-1:1.4.0.8
	netbsd-6-0-2-RELEASE:1.4
	netbsd-6-1-RELEASE:1.4
	khorben-n900:1.6.0.4
	netbsd-6-1-RC4:1.4
	netbsd-6-1-RC3:1.4
	agc-symver:1.6.0.2
	agc-symver-base:1.6
	netbsd-6-1-RC2:1.4
	netbsd-6-1-RC1:1.4
	yamt-pagecache-base8:1.5
	netbsd-6-0-1-RELEASE:1.4
	yamt-pagecache-base7:1.5
	matt-nb6-plus-nbase:1.4
	yamt-pagecache-base6:1.5
	netbsd-6-0:1.4.0.6
	netbsd-6-0-RELEASE:1.4
	netbsd-6-0-RC2:1.4
	tls-maxphys:1.5.0.2
	tls-maxphys-base:1.6
	matt-nb6-plus:1.4.0.4
	matt-nb6-plus-base:1.4
	netbsd-6-0-RC1:1.4
	jmcneill-usbmp-base10:1.5
	yamt-pagecache-base5:1.5
	jmcneill-usbmp-base9:1.5
	yamt-pagecache-base4:1.5
	jmcneill-usbmp-base8:1.5
	jmcneill-usbmp-base7:1.5
	jmcneill-usbmp-base6:1.5
	jmcneill-usbmp-base5:1.5
	jmcneill-usbmp-base4:1.5
	jmcneill-usbmp-base3:1.5
	jmcneill-usbmp-pre-base2:1.1
	jmcneill-usbmp-base2:1.4
	netbsd-6:1.4.0.2
	netbsd-6-base:1.4
	jmcneill-usbmp:1.1.0.6
	jmcneill-usbmp-base:1.1
	jmcneill-audiomp3:1.1.0.4
	jmcneill-audiomp3-base:1.1
	yamt-pagecache-base3:1.1
	yamt-pagecache-base2:1.1
	yamt-pagecache:1.1.0.2
	yamt-pagecache-base:1.1;
locks; strict;
comment	@# @;


1.7
date	2019.05.08.13.40.19;	author isaki;	state Exp;
branches;
next	1.6;
commitid	LEGDdtzAItkeapmB;

1.6
date	2013.03.13.21.29.05;	author macallan;	state Exp;
branches
	1.6.38.1
	1.6.42.1;
next	1.5;

1.5
date	2012.02.21.15.26.20;	author macallan;	state Exp;
branches
	1.5.2.1;
next	1.4;

1.4
date	2011.12.22.05.05.24;	author macallan;	state Exp;
branches;
next	1.3;

1.3
date	2011.12.13.14.46.07;	author macallan;	state Exp;
branches;
next	1.2;

1.2
date	2011.12.13.14.39.37;	author macallan;	state Exp;
branches;
next	1.1;

1.1
date	2011.08.31.16.47.31;	author macallan;	state Exp;
branches
	1.1.2.1
	1.1.6.1;
next	;

1.6.38.1
date	2019.06.10.22.07.30;	author christos;	state Exp;
branches;
next	;
commitid	jtc8rnCzWiEEHGqB;

1.6.42.1
date	2019.05.05.02.31.42;	author isaki;	state Exp;
branches;
next	;
commitid	P6qg5pdPOH2RzXlB;

1.5.2.1
date	2013.06.23.06.20.21;	author tls;	state Exp;
branches;
next	;
commitid	eVjr9caYRQbRGHUw;

1.1.2.1
date	2012.04.17.00.07.59;	author yamt;	state Exp;
branches;
next	1.1.2.2;

1.1.2.2
date	2014.05.22.11.40.34;	author yamt;	state Exp;
branches;
next	;
commitid	VUUXuyNWnt3AKwBx;

1.1.6.1
date	2012.02.18.07.34.55;	author mrg;	state Exp;
branches;
next	1.1.6.2;

1.1.6.2
date	2012.02.24.09.11.42;	author mrg;	state Exp;
branches;
next	;


desc
@@


1.7
log
@Merge isaki-audio2 branch, the overhaul of audio subsystem.
- Interrupt-oriented system rather than thread-oriented.
- Improve stability, quality and performance.
- Split playback and record cleanly.  Improve halfduplex support.
- Many bugs are fixed including deadlocks, resource leaks, abuses, etc.
- Simplify audio filter mechanism.  The encoding/channels/frequency
  conversions are completely handled in the upper layer.  So the hard-
  ware driver only converts its hardware encoding (if necessary).
- audio_hw_if changes:
  - Obsoletes query_encoding and add query_format instead.
  - Obsoletes set_params and add set_format instead.
  - Remove drain, setfd, mappage.
  - The call sequences are changed.
- ioctl AUDIO_GETFD/SETFD, AUDIO_GETCHAN/SETCHAN are obsoleted.
- ioctl AUDIO_{QUERY,GET,SET}FORMAT are introduced.
- cleanup config attributes: au*conv and mulaw.
- All hardware drivers should follow it (I've done as much as possible).

Some file paths are changed:
- dev/audio.c         -> dev/audio/audio.c (rewritten)
- dev/audiovar.h      -> dev/audio/audiovar.h
- dev/audio_dai.h     -> dev/audio/audio_dai.h
- dev/audio_if.h      -> dev/audio/audio_if.h
- dev/audiobell.c     -> dev/audio/audiobell.c
- dev/audiobellvar.h  -> dev/audio/audiobellvar.h
- dev/mulaw.[ch]      -> dev/audio/mulaw.[ch] + dev/audio/alaw.c
@
text
@# Silicon Motion SM502 / Voyager GX

define voyagerbus {}

# the graphics part
device	voyagerfb: wsemuldisplaydev, rasops8, rasops16, rasops32, vcons, videomode, iic, i2c_bitbang, glyphcache
attach	voyagerfb at voyagerbus
file	dev/pci/voyager/voyagerfb.c		voyagerfb needs-flag
defflag	opt_voyagerfb.h	VOYAGERFB_DEBUG VOYAGERFB_ANTIALIAS
defflag	opt_voyagerfb.h	VOYAGERFB_DEPTH_32

# a clock timer
defflag opt_pwmclock.h PWMCLOCK_DEBUG
device 	pwmclock
attach 	pwmclock at voyagerbus
file	dev/pci/voyager/pwmclock.c		pwmclock needs-flag

# the audio part
device 	vac: audiobus
attach 	vac at voyagerbus
file 	dev/pci/voyager/vac.c			vac needs-flag
@


1.6
log
@defflag VOYAGERFB_DEPTH_32
@
text
@d19 1
a19 1
device 	vac: audiobus, auconv, mulaw
@


1.6.38.1
log
@Sync with HEAD
@
text
@d19 1
a19 1
device 	vac: audiobus
@


1.6.42.1
log
@Remove obsoleted au{,rate,vol}conv and mulaw attributes.
audio provides the equivalent of them inseparably.
@
text
@d19 1
a19 1
device 	vac: audiobus
@


1.5
log
@use glyphcache for anti-aliased fonts
@
text
@d10 1
@


1.5.2.1
log
@resync from head
@
text
@a9 1
defflag	opt_voyagerfb.h	VOYAGERFB_DEPTH_32
@


1.4
log
@support running in 32bit colour with anti-aliased fonts
enable with options VOYAGERFB_ANTIALIAS
@
text
@d6 1
a6 1
device	voyagerfb: wsemuldisplaydev, rasops8, rasops16, rasops32, vcons, videomode, iic, i2c_bitbang
@


1.3
log
@define and use PWMCLOCK_DEBUG
@
text
@d6 1
a6 1
device	voyagerfb: wsemuldisplaydev, rasops8, rasops16, vcons, videomode, iic, i2c_bitbang
d9 1
a9 1
defflag	opt_voyagerfb.h	VOYAGERFB_DEBUG
@


1.2
log
@an alternative clock implementation for Loongson2F and SM502, mostly
Gdium-specific.
This supports Loongson2F frequency scaling. The problem is that Gdium has
no CPU clock independent high resolution timer we can use as a timecounter
so we use one of the SM502's PWMs to generate a 100Hz timer interrupt, use
the cp0 counter to measure time and adjust for frequency changes.
Other Loongson-based machines will need something similar but hopefully
less hackish.
@
text
@d12 1
@


1.1
log
@split up voyagerfb into the framebuffer portion and a pseudo bus that we can
attach all the other sub-devices to
while there attach an i2c bus
@
text
@d6 1
a6 1
device	voyagerfb: wsemuldisplaydev, rasops8, rasops16, rasops32, vcons, videomode, iic, i2c_bitbang
d8 1
a8 1
file	dev/pci/voyager/voyagerfb.c		voyagerfb
d10 10
@


1.1.2.1
log
@sync with head
@
text
@d6 1
a6 1
device	voyagerfb: wsemuldisplaydev, rasops8, rasops16, rasops32, vcons, videomode, iic, i2c_bitbang, glyphcache
d8 2
a9 13
file	dev/pci/voyager/voyagerfb.c		voyagerfb needs-flag
defflag	opt_voyagerfb.h	VOYAGERFB_DEBUG VOYAGERFB_ANTIALIAS

# a clock timer
defflag opt_pwmclock.h PWMCLOCK_DEBUG
device 	pwmclock
attach 	pwmclock at voyagerbus
file	dev/pci/voyager/pwmclock.c		pwmclock needs-flag

# the audio part
device 	vac: audiobus, auconv, mulaw
attach 	vac at voyagerbus
file 	dev/pci/voyager/vac.c			vac needs-flag
@


1.1.2.2
log
@sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs.  ("Protocol error: too many arguments")
@
text
@a9 1
defflag	opt_voyagerfb.h	VOYAGERFB_DEPTH_32
@


1.1.6.1
log
@merge to -current.
@
text
@d8 2
a9 13
file	dev/pci/voyager/voyagerfb.c		voyagerfb needs-flag
defflag	opt_voyagerfb.h	VOYAGERFB_DEBUG VOYAGERFB_ANTIALIAS

# a clock timer
defflag opt_pwmclock.h PWMCLOCK_DEBUG
device 	pwmclock
attach 	pwmclock at voyagerbus
file	dev/pci/voyager/pwmclock.c		pwmclock needs-flag

# the audio part
device 	vac: audiobus, auconv, mulaw
attach 	vac at voyagerbus
file 	dev/pci/voyager/vac.c			vac needs-flag
@


1.1.6.2
log
@sync to -current.
@
text
@d6 1
a6 1
device	voyagerfb: wsemuldisplaydev, rasops8, rasops16, rasops32, vcons, videomode, iic, i2c_bitbang, glyphcache
@


