2007-07-26  Nick Garnett  <nickg@ecoscentric.com>

	* src/ide.c (ide_ident): Add cyg_drv_isr_unlock() to error return
	path.

2007-06-27  Nick Garnett  <nickg@ecoscentric.com>

	* src/ide.c (ide_get_ident): Initialize ident sector_size field.

2006-11-16  Nick Garnett  <nickg@ecoscentric.com>

	* src/ide.c (ide_disk_write_poll, ide_disk_write_pio) 
	(ide_disk_write_dma): Fix typo in testing of IDE_READONLY.

2006-09-20  Jonathan Larmour  <jifl@eCosCentric.com>

	* src/ide.c: DISK_FUNS is now implicitly static.

2006-07-24  Nick Garnett  <nickg@ecoscentric.com>

	* src/ide.c (ide_udelay): Use CYGACC_CALL_IF_DELAY_US() if it is
	defined. Otherwise fall back to HAL_DELAY_US().
	(IDE_READONLY): Added this debug option.

2006-03-03  Jonathan Larmour  <jifl@eCosCentric.com>

	* src/ide.c (db_printf): New function. Makes console output in
	RedBoot at init time work.
	Change all references to diag_printf in ide.c to db_printf.
	Add bitmask for DEBUG levels to avoid debug stuff in production
	code.
	Change status reg reads that are only for debug purposes into
	a new IDE_READ_STATUS_FOR_EVENT macro which is therefore removeable.
	(ide_write_sector): Add a 50us delay.

2006-02-24  Jonathan Larmour  <jifl@eCosCentric.com>

	* src/ide.c (IDE_READMEM16): Just do a standard endian swap now,
	this is I believe the correct thing to do.
	(IDE_READMEM32): Ditto.
	(ide_strncpy): Straight swap each byte, which fits with requirements
	of ATA standard.
	(ide_set_feature): Only used with DMA, so ifdef.
	(ide_ident): Silence warning.

2006-02-03  Nick Garnett  <nickg@ecoscentric.com>

	* cdl/devs_disk_ide.cdl: 
	* src/ide_intr.inl: 
	* src/ide.c: Many changes. The command list has been moved here
	rather than in the customization package. Added some debug and
	tracing support. Added full DMA support, including selection of
	MDMA/UDMA mode and speed. Added 48 bit addressing and multi-sector
	transfers.
	Changed interface to io/disk package. Transfer sizes are now in
	sectors rather than bytes. There are some more fields in the ident
	structure that need filling in.

2006-01-27  Jonathan Larmour  <jifl@eCosCentric.com>

	* src/ide.c (IDE_READMEM16): Add big endian support. Ditto
	IDE_READMEM32.
	Ensure unused functions are omitted if in polled mode and/or
	not using DMA (silences warnings).

2005-10-11  Nick Garnett  <nickg@ecoscentric.com>

	* cdl/devs_disk_ide.cdl: Default value of
	CYGVAR_DEVS_DISK_IDE_POLLED now depends on presence of
	kernel. This is not entirely correct, since some non-kernel
	configurations could use interrupts. But for now this is a good
	approximation.

	* src/ide_intr.inl: 
	* src/ide.c: Some refactoring to separate polled, PIO and DMA
	transfer methods out into separate routines. 

2004-07-21  Nick Garnett  <nickg@ecoscentric.com>

	* src/ide.c (ide_disk_set_config): Return ENOERR on an unmount
	that does not disconnect the disk.

2004-07-02  Nick Garnett  <nickg@ecoscentric.com>

	* src/ide.c: Fixed a bug in call to disk_disconnected() callback,
	the wrong structure was being passed. Miscellaneous other tidies.

2004-06-21  John Dallaway  <jld@ecoscentric.com>

	* src/ide.c, src/ide_intr.inl: Place ISR and DSR in an inline file.

2004-04-15  Nick Garnett  <nickg@ecoscentric.com>

	* src/ide.c: Some mild reorganization to support changeable
	media.

2004-02-16  Nick Garnett  <nickg@ecoscentric.com>

	* src/ide.c: Modified command and status tests to cope with the
	timing of compact flash devices. Various minor debug changes.

2004-02-04  Nick Garnett  <nickg@ecoscentric.com>

	* cdl/devs_disk_ide.cdl:	
	* src/ide.c:
	Moved platform-specific configuration and data structures to a
	separate package.

2004-01-30  Nick Garnett  <nickg@ecoscentric.com>

	* cdl/devs_disk_ide.cdl:
	* src/ide.c:
	Added configuration for disks 1-3. Added option to convert driver
	to polled mode.

2004-01-23  Nick Garnett  <nickg@ecoscentric.com>

	* cdl/devs_disk_ide.cdl:
	* src/ide.c:
	Added interrupt support, made consistent with changes in disk
	package. Generally tidied up a bit. Still needs a bit more work,
	however.

2004-01-21  Nick Garnett  <nickg@ecoscentric.com>

	* cdl/devs_disk_ide.cdl:
	* src/ide.c:
	A generic IDE disk driver. This is an initial version that only
	does polled IO.	

//===========================================================================
// ####GPLCOPYRIGHTBEGIN####                                                
// -------------------------------------------                              
// This file is part of eCos, the Embedded Configurable Operating System.   
// Copyright (C) 2004, 2006, 2007 Free Software Foundation, Inc.            
// Copyright (C) 2004, 2006, 2007 eCosCentric Limited                       
//
// This program is free software; you can redistribute it and/or modify     
// it under the terms of the GNU General Public License as published by     
// the Free Software Foundation; either version 2 or (at your option) any   
// later version.                                                           
//
// This program is distributed in the hope that it will be useful, but      
// WITHOUT ANY WARRANTY; without even the implied warranty of               
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU        
// General Public License for more details.                                 
//
// You should have received a copy of the GNU General Public License        
// along with this program; if not, write to the                            
// Free Software Foundation, Inc., 51 Franklin Street,                      
// Fifth Floor, Boston, MA  02110-1301, USA.                                
// -------------------------------------------                              
// ####GPLCOPYRIGHTEND####                                                  
//===========================================================================
