2003-09-18  Martin K. Petersen  <mkp@mkp.net>

	* forte.c: Use C99 initializers.

	(forte_channel_init): Set up frag size before calling reset.

	(forte_dsp_ioctl): Proper copy_to_user() return values.

	(forte_channel_free): Fix mem_map_unreserve() bug.

2003-02-28  Martin K. Petersen  <mkp@mkp.net>

	* forte.c (forte_channel_drain): Fixed race caused by a reset
	channel being drained.

2003-02-27  Martin K. Petersen  <mkp@mkp.net>

	* forte.c (forte_dsp_write): Handle partial fragments.

2003-02-15  Martin K. Petersen  <mkp@mkp.net>

	* forte.c (forte_dsp_poll): Fix poll.

	(forte_interrupt): Always trigger wait queues upon exit.

	(forte_dsp_write): Massaged dsp_write a bit.

	(forte_dsp_ioctl): Fix GETODELAY with passive channel.  Confused
	the hell out of ogle.

2003-02-12  Martin K. Petersen  <mkp@mkp.net>

	* forte.c (forte_channel_buffer): Dynamic buffering depending on
	fragment size, sample width, etc.

	(forte_channel_init): New fragment defaults to be in accordance
	with OSS spec:

	Many apps (including Quake) require 256 byte frags:
	
		#define FORTE_MIN_FRAG_SIZE 256

	We set the default to 256 too.  Apps start breaking at 512, sadly:

		#define FORTE_DEF_FRAG_SIZE 256

	Required by OSS spec:

		#define FORTE_MIN_FRAGMENTS 2

	Would like it higher but some apps break if it is bigger than 8 bits:

		#define FORTE_MAX_FRAGMENTS     256

	(forte_proc_read): Export internal buffering values through /proc.

	(forte_dsp_write): Fix bug that caused skipping on resume.  

	Postpone playback till entire buffer written or out of frags.

	(forte_interrupt): Stop reading baloney progress values from chip.
	Always increment by frag_sz upon interrupt.

	When running low on buffers, pause the chip instead of stopping
	it.

	(forte_channel_stop): Always make stop a hard stop.

2002-10-01  Martin K. Petersen  <mkp@mkp.net>

	* forte.c: Fix 16-bit/8-bit bug.
	
2002-10-01  Martin K. Petersen  <mkp@mkp.net>

	* forte.c: Rename 16-bit only flag.

	(forte_proc_init): Implement /proc status info.
	
	(forte_channel_init): Sync register status with chip.

2002-09-24  Martin K. Petersen  <mkp@mkp.net>

	* forte.c: Make 16-bit only operation a compile toggle.

2002-09-17  Martin K. Petersen  <mkp@mkp.net>

	* forte.c (forte_channel_rate): Don't return -EINVAL on
	unsupported frequencies but pick the one closest to what the user
	requests.
	
	(forte_dsp_ioctl): Add the three SOUND_PCM ioctls.

2002-08-26  Martin K. Petersen  <mkp@mkp.net>

	* forte.c: From Alan Cox:
		   cpu_relax() in ac97_wait

2002-08-25  Martin K. Petersen  <mkp@mkp.net>

	* forte.c: From Alan Cox:
		   Made printk()s users can trigger DPRINTK
		   spin_lock_irq -> spin_lock in forte_interrupt()
		   Moved copy_*_user() outside ->lock in _write and _read.
		   
		   Turned recording back on.

2002-04-08  Martin K. Petersen  <mkp@mkp.net>

	* forte.c: Initial DAC work.

2002-04-07  Martin K. Petersen  <mkp@mkp.net>

	* forte.c: Got the AC97 codec chatting.