mirror of
				https://github.com/smaeul/u-boot.git
				synced 2025-10-31 20:18:18 +00:00 
			
		
		
		
	Signed-off-by: Wolfgang Denk <wd@denx.de> [trini: Fixup common/cmd_io.c] Signed-off-by: Tom Rini <trini@ti.com>
		
			
				
	
	
		
			61 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * (C) Copyright 2004, Psyent Corporation <www.psyent.com>
 | |
|  * Scott McNutt <smcnutt@psyent.com>
 | |
|  *
 | |
|  * SPDX-License-Identifier:	GPL-2.0+
 | |
|  */
 | |
| 
 | |
| /*************************************************************************
 | |
|  * Altera Nios-II EPCS Controller Core interfaces
 | |
|  ************************************************************************/
 | |
| 
 | |
| #ifndef __NIOS2_EPCS_H__
 | |
| #define __NIOS2_EPCS_H__
 | |
| 
 | |
| typedef struct epcs_devinfo_t {
 | |
| 	const char	*name;		/* Device name */
 | |
| 	unsigned char	id;		/* Device silicon id */
 | |
| 	unsigned char	size;		/* Total size log2(bytes)*/
 | |
| 	unsigned char	num_sects;	/* Number of sectors */
 | |
| 	unsigned char	sz_sect;	/* Sector size log2(bytes) */
 | |
| 	unsigned char	sz_page;	/* Page size log2(bytes) */
 | |
| 	unsigned char   prot_mask;	/* Protection mask */
 | |
| }epcs_devinfo_t;
 | |
| 
 | |
| /* Resets the epcs controller -- to prevent (potential) soft-reset
 | |
|  * problems when booting from the epcs controller
 | |
|  */
 | |
| extern int epcs_reset (void);
 | |
| 
 | |
| /* Returns the devinfo struct if EPCS device is found;
 | |
|  * NULL otherwise.
 | |
|  */
 | |
| extern epcs_devinfo_t *epcs_dev_find (void);
 | |
| 
 | |
| /* Returns the number of bytes used by config data.
 | |
|  * Negative on error.
 | |
|  */
 | |
| extern int epcs_cfgsz (void);
 | |
| 
 | |
| /* Erase sectors 'start' to 'end' - return zero on success
 | |
|  */
 | |
| extern int epcs_erase (unsigned start, unsigned end);
 | |
| 
 | |
| /* Read 'cnt' bytes from device offset 'off' into buf at 'addr'
 | |
|  * Zero return on success
 | |
|  */
 | |
| extern int epcs_read (ulong addr, ulong off, ulong cnt);
 | |
| 
 | |
| /* Write 'cnt' bytes to device offset 'off' from buf at 'addr'.
 | |
|  * Zero return on success
 | |
|  */
 | |
| extern int epcs_write (ulong addr, ulong off, ulong cnt);
 | |
| 
 | |
| /* Verify 'cnt' bytes at device offset 'off' comparing with buf
 | |
|  * at 'addr'. On failure, write first invalid offset to *err.
 | |
|  * Zero return on success
 | |
|  */
 | |
| extern int epcs_verify (ulong addr, ulong off, ulong cnt, ulong *err);
 | |
| 
 | |
| #endif /* __NIOS2_EPCS_H__ */
 |