URL
https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk
Subversion Repositories openrisc_me
Compare Revisions
- This comparison shows the changes necessary to convert path
/openrisc/trunk/rtos/ecos-2.0/packages/devs/flash/intel/bootblock/v2_0
- from Rev 27 to Rev 174
- ↔ Reverse comparison
Rev 27 → Rev 174
/cdl/flash_intel_bootblock.cdl
0,0 → 1,92
# ==================================================================== |
# |
# flash_bootblock.cdl |
# |
# FLASH memory - Hardware support for Intel Boot Block Flash Memory |
# |
# ==================================================================== |
#####ECOSGPLCOPYRIGHTBEGIN#### |
## ------------------------------------------- |
## This file is part of eCos, the Embedded Configurable Operating System. |
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
## |
## eCos 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. |
## |
## eCos 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 eCos; if not, write to the Free Software Foundation, Inc., |
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
## |
## As a special exception, if other files instantiate templates or use macros |
## or inline functions from this file, or you compile this file and link it |
## with other works to produce a work based on this file, this file does not |
## by itself cause the resulting work to be covered by the GNU General Public |
## License. However the source code for this file must still be made available |
## in accordance with section (3) of the GNU General Public License. |
## |
## This exception does not invalidate any other reasons why a work based on |
## this file might be covered by the GNU General Public License. |
## |
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
## at http://sources.redhat.com/ecos/ecos-license/ |
## ------------------------------------------- |
#####ECOSGPLCOPYRIGHTEND#### |
# ==================================================================== |
######DESCRIPTIONBEGIN#### |
# |
# Author(s): gthomas |
# Contributors: jskov |
# Date: 2000-07-26 |
# |
#####DESCRIPTIONEND#### |
# |
# ==================================================================== |
|
cdl_package CYGPKG_DEVS_FLASH_INTEL_BOOTBLOCK { |
display "Intel boot block flash memory support" |
|
parent CYGPKG_IO_FLASH |
active_if CYGPKG_IO_FLASH |
|
implements CYGHWR_IO_FLASH_DEVICE |
implements CYGHWR_IO_FLASH_DEVICE_NOT_IN_RAM |
|
include_dir . |
include_files ; # none _exported_ whatsoever |
description "FLASH memory device support for Intel boot block flash memory" |
compile bootblock_flash.c |
|
make -priority 1 { |
flash_erase_block.o: $(REPOSITORY)/$(PACKAGE)/src/flash_erase_block.c |
$(CC) -S $(INCLUDE_PATH) $(CFLAGS) -g0 -mcpu=strongarm -fno-function-sections $(REPOSITORY)/$(PACKAGE)/src/flash_erase_block.c |
echo "#include <cyg/hal/arch.inc>" > flash_erase_block2.S |
cat flash_erase_block.s >> flash_erase_block2.S |
echo "FUNC_END(flash_erase_block_end)" >>flash_erase_block2.S |
$(CC) -c $(INCLUDE_PATH) -o flash_erase_block.o flash_erase_block2.S |
$(AR) rcs $(PREFIX)/lib/libtarget.a flash_erase_block.o |
} |
make -priority 1 { |
flash_program_buf.o: $(REPOSITORY)/$(PACKAGE)/src/flash_program_buf.c |
$(CC) -S $(INCLUDE_PATH) $(CFLAGS) -g0 -mcpu=strongarm -fno-function-sections $(REPOSITORY)/$(PACKAGE)/src/flash_program_buf.c |
echo "#include <cyg/hal/arch.inc>" > flash_program_buf2.S |
cat flash_program_buf.s >> flash_program_buf2.S |
echo "FUNC_END(flash_program_buf_end)" >>flash_program_buf2.S |
$(CC) -c $(INCLUDE_PATH) -o flash_program_buf.o flash_program_buf2.S |
$(AR) rcs $(PREFIX)/lib/libtarget.a flash_program_buf.o |
} |
make -priority 1 { |
flash_query.o: $(REPOSITORY)/$(PACKAGE)/src/flash_query.c |
$(CC) -S $(INCLUDE_PATH) $(CFLAGS) -g0 -mcpu=strongarm -fno-function-sections $(REPOSITORY)/$(PACKAGE)/src/flash_query.c |
echo "#include <cyg/hal/arch.inc>" > flash_query2.S |
cat flash_query.s >> flash_query2.S |
echo "FUNC_END(flash_query_end)" >>flash_query2.S |
$(CC) -c $(INCLUDE_PATH) -o flash_query.o flash_query2.S |
$(AR) rcs $(PREFIX)/lib/libtarget.a flash_query.o |
} |
} |
/src/flash_program_buf.c
0,0 → 1,104
//========================================================================== |
// |
// flash_program_buf.c |
// |
// Flash programming |
// |
//========================================================================== |
//####ECOSGPLCOPYRIGHTBEGIN#### |
// ------------------------------------------- |
// This file is part of eCos, the Embedded Configurable Operating System. |
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
// |
// eCos 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. |
// |
// eCos 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 eCos; if not, write to the Free Software Foundation, Inc., |
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
// |
// As a special exception, if other files instantiate templates or use macros |
// or inline functions from this file, or you compile this file and link it |
// with other works to produce a work based on this file, this file does not |
// by itself cause the resulting work to be covered by the GNU General Public |
// License. However the source code for this file must still be made available |
// in accordance with section (3) of the GNU General Public License. |
// |
// This exception does not invalidate any other reasons why a work based on |
// this file might be covered by the GNU General Public License. |
// |
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
// at http://sources.redhat.com/ecos/ecos-license/ |
// ------------------------------------------- |
//####ECOSGPLCOPYRIGHTEND#### |
//========================================================================== |
//#####DESCRIPTIONBEGIN#### |
// |
// Author(s): gthomas |
// Contributors: gthomas |
// Date: 2000-07-14 |
// Purpose: |
// Description: |
// |
//####DESCRIPTIONEND#### |
// |
//========================================================================== |
|
#include "flash.h" |
|
#include <pkgconf/hal.h> |
#include <cyg/hal/hal_arch.h> |
#include <cyg/hal/hal_cache.h> |
|
// |
// CAUTION! This code must be copied to RAM before execution. Therefore, |
// it must not contain any code which might be position dependent! |
// |
|
int |
flash_program_buf(volatile unsigned short *addr, unsigned short *data, int len) |
{ |
volatile unsigned short *ROM; |
unsigned short stat = 0; |
int timeout = 50000; |
|
GO_SLOW |
|
ROM = (volatile unsigned short *)((unsigned long)addr & 0xFF800000); |
// Clear any error conditions |
ROM[0] = FLASH_Clear_Status; |
|
while (len > 0) { |
ROM[0] = FLASH_Program; |
*addr = *data; |
timeout = 5000000; |
while(((stat = ROM[0]) & FLASH_Status_Ready) != FLASH_Status_Ready) { |
if (--timeout == 0) { |
goto bad; |
} |
} |
if (stat & 0x007E) { |
break; |
} |
ROM[0] = FLASH_Reset; |
if (*addr++ != *data++) { |
stat = 0x9910; |
break; |
} |
len -= 2; |
} |
|
// Restore ROM to "normal" mode |
bad: |
ROM[0] = FLASH_Reset; |
|
GO_FAST |
|
return stat; |
} |
/src/flash_query.c
0,0 → 1,84
//========================================================================== |
// |
// flash_query.c |
// |
// Flash programming - query device |
// |
//========================================================================== |
//####ECOSGPLCOPYRIGHTBEGIN#### |
// ------------------------------------------- |
// This file is part of eCos, the Embedded Configurable Operating System. |
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
// |
// eCos 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. |
// |
// eCos 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 eCos; if not, write to the Free Software Foundation, Inc., |
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
// |
// As a special exception, if other files instantiate templates or use macros |
// or inline functions from this file, or you compile this file and link it |
// with other works to produce a work based on this file, this file does not |
// by itself cause the resulting work to be covered by the GNU General Public |
// License. However the source code for this file must still be made available |
// in accordance with section (3) of the GNU General Public License. |
// |
// This exception does not invalidate any other reasons why a work based on |
// this file might be covered by the GNU General Public License. |
// |
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
// at http://sources.redhat.com/ecos/ecos-license/ |
// ------------------------------------------- |
//####ECOSGPLCOPYRIGHTEND#### |
//========================================================================== |
//#####DESCRIPTIONBEGIN#### |
// |
// Author(s): gthomas |
// Contributors: gthomas |
// Date: 2000-07-26 |
// Purpose: |
// Description: |
// |
//####DESCRIPTIONEND#### |
// |
//========================================================================== |
|
#include "flash.h" |
|
#include <pkgconf/hal.h> |
#include <cyg/hal/hal_arch.h> |
#include <cyg/hal/hal_cache.h> |
#include CYGHWR_MEMORY_LAYOUT_H |
|
// |
// CAUTION! This code must be copied to RAM before execution. Therefore, |
// it must not contain any code which might be position dependent! |
// |
|
#define CNT 200*1000*10 // Approx 20ms |
|
int |
flash_query(unsigned short *data) |
{ |
volatile unsigned short *ROM; |
int cnt; |
int cache_on; |
|
ROM = (volatile unsigned short *)0x53000000; |
|
ROM[0] = FLASH_Read_ID; |
for (cnt = CNT; cnt > 0; cnt--) ; |
*data++ = *ROM++; // Manufacturer code |
*data++ = *ROM++; // Device identifier |
|
ROM[0] = FLASH_Reset; |
|
return 0; |
} |
/src/flash.h
0,0 → 1,82
//========================================================================== |
// |
// flash.h |
// |
// Flash programming - device constants, etc. |
// |
//========================================================================== |
//####ECOSGPLCOPYRIGHTBEGIN#### |
// ------------------------------------------- |
// This file is part of eCos, the Embedded Configurable Operating System. |
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
// |
// eCos 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. |
// |
// eCos 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 eCos; if not, write to the Free Software Foundation, Inc., |
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
// |
// As a special exception, if other files instantiate templates or use macros |
// or inline functions from this file, or you compile this file and link it |
// with other works to produce a work based on this file, this file does not |
// by itself cause the resulting work to be covered by the GNU General Public |
// License. However the source code for this file must still be made available |
// in accordance with section (3) of the GNU General Public License. |
// |
// This exception does not invalidate any other reasons why a work based on |
// this file might be covered by the GNU General Public License. |
// |
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
// at http://sources.redhat.com/ecos/ecos-license/ |
// ------------------------------------------- |
//####ECOSGPLCOPYRIGHTEND#### |
//========================================================================== |
//#####DESCRIPTIONBEGIN#### |
// |
// Author(s): gthomas |
// Contributors: gthomas |
// Date: 2000-07-26 |
// Purpose: |
// Description: |
// |
//####DESCRIPTIONEND#### |
// |
//========================================================================== |
|
#ifndef _FLASH_HWR_H_ |
#define _FLASH_HWR_H_ |
|
// FIXME: must be 16/32 bit depending on use of interleaved parts |
|
#define FLASH_Read_ID 0x9090 // 9090 |
#define FLASH_Read_Status 0x0070 // 0070 |
#define FLASH_Clear_Status 0x5050 // 5050 |
#define FLASH_Status_Ready 0x0080 // 0080 // Only low 8 bits |
#define FLASH_Program 0x4040 // 4040 |
#define FLASH_Block_Erase 0x2020 // 2020 |
#define FLASH_Suspend 0xB0B0 // B0B0 |
#define FLASH_Resume 0xD0D0 // D0D0 |
#define FLASH_Confirm 0xD0D0 // D0D0 |
#define FLASH_Reset 0xFFFF // FFFF |
|
#define FLASH_BLOCK_SIZE 0x10000 |
#define FLASH_BOOT_BLOCK_SIZE 0x2000 |
|
#define FLASH_Intel_code 0x89 |
|
|
|
#ifndef GO_FAST |
# define GO_FAST |
# define GO_SLOW |
#endif |
|
|
#endif // _FLASH_HWR_H_ |
/src/flash_erase_block.c
0,0 → 1,115
//========================================================================== |
// |
// flash_erase_block.c |
// |
// Flash programming |
// |
//========================================================================== |
//####ECOSGPLCOPYRIGHTBEGIN#### |
// ------------------------------------------- |
// This file is part of eCos, the Embedded Configurable Operating System. |
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
// |
// eCos 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. |
// |
// eCos 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 eCos; if not, write to the Free Software Foundation, Inc., |
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
// |
// As a special exception, if other files instantiate templates or use macros |
// or inline functions from this file, or you compile this file and link it |
// with other works to produce a work based on this file, this file does not |
// by itself cause the resulting work to be covered by the GNU General Public |
// License. However the source code for this file must still be made available |
// in accordance with section (3) of the GNU General Public License. |
// |
// This exception does not invalidate any other reasons why a work based on |
// this file might be covered by the GNU General Public License. |
// |
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
// at http://sources.redhat.com/ecos/ecos-license/ |
// ------------------------------------------- |
//####ECOSGPLCOPYRIGHTEND#### |
//========================================================================== |
//#####DESCRIPTIONBEGIN#### |
// |
// Author(s): gthomas |
// Contributors: gthomas |
// Date: 2000-07-14 |
// Purpose: |
// Description: |
// |
//####DESCRIPTIONEND#### |
// |
//========================================================================== |
|
#include "flash.h" |
|
#include <pkgconf/hal.h> |
#include <cyg/hal/hal_arch.h> |
#include <cyg/hal/hal_cache.h> |
|
// |
// CAUTION! This code must be copied to RAM before execution. Therefore, |
// it must not contain any code which might be position dependent! |
// |
|
int flash_erase_block(volatile unsigned short *block) |
{ |
volatile unsigned short *ROM, *sb; |
unsigned long stat; |
int timeout = 50000; |
int len, block_size; |
|
GO_SLOW |
|
ROM = (volatile unsigned short *)((unsigned long)block & 0xFF800000); |
|
// Clear any error conditions |
ROM[0] = FLASH_Clear_Status; |
|
len = FLASH_BLOCK_SIZE; |
if (((unsigned long)block - (unsigned long)ROM) < FLASH_BLOCK_SIZE) { |
block_size = FLASH_BOOT_BLOCK_SIZE; // First 8 blocks are only 8Kx2 each |
} else { |
block_size = FLASH_BLOCK_SIZE; |
} |
sb = block; |
while (len > 0) { |
// Erase block |
ROM[0] = FLASH_Block_Erase; |
*block = FLASH_Confirm; |
timeout = 5000000; |
while(((stat = ROM[0]) & FLASH_Status_Ready) != FLASH_Status_Ready) { |
if (--timeout == 0) break; |
} |
|
len -= block_size; |
block += block_size / sizeof(*block); |
} |
|
// Restore ROM to "normal" mode |
ROM[0] = FLASH_Reset; |
|
// If an error was reported, see if the block erased anyway |
if (stat & 0x007E007E) { |
len = FLASH_BLOCK_SIZE; |
block = sb; |
while (len > 0) { |
if (*block++ != 0xFFFFFFFF) break; |
len -= sizeof(*block); |
} |
if (len == 0) stat = 0; |
} |
|
GO_FAST |
|
return stat; |
} |
/src/bootblock_flash.c
0,0 → 1,155
//========================================================================== |
// |
// bootblock_flash.c |
// |
// Flash programming |
// |
//========================================================================== |
//####ECOSGPLCOPYRIGHTBEGIN#### |
// ------------------------------------------- |
// This file is part of eCos, the Embedded Configurable Operating System. |
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
// |
// eCos 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. |
// |
// eCos 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 eCos; if not, write to the Free Software Foundation, Inc., |
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
// |
// As a special exception, if other files instantiate templates or use macros |
// or inline functions from this file, or you compile this file and link it |
// with other works to produce a work based on this file, this file does not |
// by itself cause the resulting work to be covered by the GNU General Public |
// License. However the source code for this file must still be made available |
// in accordance with section (3) of the GNU General Public License. |
// |
// This exception does not invalidate any other reasons why a work based on |
// this file might be covered by the GNU General Public License. |
// |
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
// at http://sources.redhat.com/ecos/ecos-license/ |
// ------------------------------------------- |
//####ECOSGPLCOPYRIGHTEND#### |
//========================================================================== |
//#####DESCRIPTIONBEGIN#### |
// |
// Author(s): gthomas |
// Contributors: gthomas, jskov |
// Date: 2000-07-26 |
// Purpose: |
// Description: |
// |
//####DESCRIPTIONEND#### |
// |
//========================================================================== |
|
#include <pkgconf/hal.h> |
#include <cyg/hal/hal_arch.h> |
#include <cyg/hal/hal_cache.h> |
|
#define _FLASH_PRIVATE_ |
#include <cyg/io/flash.h> |
|
#include "flash.h" |
|
#define _si(p) ((p[0]<<8)|p[1]) |
|
#define DEBUG 0 |
|
int |
flash_hwr_init(void) |
{ |
unsigned short data[4]; |
extern char flash_query, flash_query_end; |
typedef int code_fun(unsigned char *); |
code_fun *_flash_query; |
int code_len, stat, num_regions, region_size; |
|
// Copy 'program' code to RAM for execution |
code_len = (unsigned long)&flash_query_end - (unsigned long)&flash_query; |
_flash_query = (code_fun *)flash_info.work_space; |
memcpy(_flash_query, &flash_query, code_len); |
HAL_DCACHE_SYNC(); // Should guarantee this code will run |
HAL_ICACHE_INVALIDATE_ALL(); // is also required to avoid old contents |
stat = (*_flash_query)(data); |
#if DEBUG |
(*flash_info.pf)("stat = %x\n", stat); |
dump_buf(data, sizeof(data)); |
#endif |
|
if (data[0] != FLASH_Intel_code) { |
(*flash_info.pf)("Not Intel = %x\n", data[0]); |
return FLASH_ERR_HWR; |
} |
|
// FIXME: More devices, comments, etc |
if (data[1] == (unsigned short)0x8897) { |
num_regions = 64*2; |
region_size = 0x20000; |
} else if (data[1] == (unsigned short)0x88f4) { |
num_regions = 32; // (only use one for now)*4; // 4 devices in serial, each having 32 regions |
region_size = 0x10000; |
} else { |
(*flash_info.pf)("Unknown device type: %x\n", data[1]); |
return FLASH_ERR_HWR; |
} |
|
// Hard wired for now FIXME |
flash_info.block_size = region_size; |
flash_info.blocks = num_regions; |
#if 0 // This should be used only for the gross XX firmware build |
flash_info.start = (void *)0; |
flash_info.end = (void *)(0x10000000+(num_regions*region_size)); |
#else |
flash_info.start = (void *)0x50000000; |
flash_info.end = (void *)(0x50000000+(num_regions*region_size)); |
#endif |
|
return FLASH_ERR_OK; |
} |
|
// Map a hardware status to a package error |
int |
flash_hwr_map_error(int err) |
{ |
if (err & 0x007E007E) { |
(*flash_info.pf)("Err = %x\n", err); |
if (err & 0x00400040) { |
return FLASH_ERR_ERASE_SUSPEND; |
} else |
if (err & 0x00040004) { |
return FLASH_ERR_PROGRAM_SUSPEND; |
} else |
if (err & 0x00020002) { |
return FLASH_ERR_PROTECT; |
} else |
if (err & 0x00100010) { |
return FLASH_ERR_PROGRAM; |
} else |
if (err & 0x00200020) { |
return FLASH_ERR_ERASE; |
} else |
return FLASH_ERR_HWR; // FIXME |
} else { |
return FLASH_ERR_OK; |
} |
} |
|
// See if a range of FLASH addresses overlaps currently running code |
bool |
flash_code_overlaps(void *start, void *end) |
{ |
extern char _stext[], _etext[]; |
|
return ((((unsigned long)&_stext >= (unsigned long)start) && |
((unsigned long)&_stext < (unsigned long)end)) || |
(((unsigned long)&_etext >= (unsigned long)start) && |
((unsigned long)&_etext < (unsigned long)end))); |
} |
/ChangeLog
0,0 → 1,74
2001-06-11 Gary Thomas <gthomas@redhat.com> |
|
* src/bootblock_flash.c:Remove dependency on printf() via user functions. |
|
2001-05-23 Jesper Skov <jskov@redhat.com> |
|
* cdl/flash_intel_bootblock.cdl: Needs IO driver to copy functions |
to RAM. |
|
2000-12-05 Jonathan Larmour <jlarmour@redhat.com> |
|
* src/bootblock_flash.c (flash_code_overlaps): Define stext/etext |
as array types so no assumptions can be made by the compiler about |
location. |
|
2000-11-22 Jesper Skov <jskov@redhat.com> |
|
* src/bootblock_flash.c (flash_hwr_init): Invalidate icache |
instead of disabling it. |
|
2000-11-20 Jesper Skov <jskov@redhat.com> |
|
* src/flash_query.c (flash_query): A new hardwired flash address. |
* src/bootblock_flash.c (flash_hwr_init): Same |
|
2000-11-17 Jesper Skov <jskov@redhat.com> |
|
* src/flash_erase_block.c: cleanup. |
* src/flash_program_buf.c: cleanup. |
|
2000-11-16 Jesper Skov <jskov@redhat.com> |
|
* src/bootblock_flash.c: Handle suspend failures. |
* src/flash.h: Same. |
|
2000-11-15 Jesper Skov <jskov@redhat.com> |
|
* Copy of edb7xxx driver. Need to rewrite to be more generic. Need |
CDL options to control number of parts, interleaving, size, etc. |
|
//=========================================================================== |
//####ECOSGPLCOPYRIGHTBEGIN#### |
// ------------------------------------------- |
// This file is part of eCos, the Embedded Configurable Operating System. |
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
// |
// eCos 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. |
// |
// eCos 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 eCos; if not, write to the Free Software Foundation, Inc., |
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
// |
// As a special exception, if other files instantiate templates or use macros |
// or inline functions from this file, or you compile this file and link it |
// with other works to produce a work based on this file, this file does not |
// by itself cause the resulting work to be covered by the GNU General Public |
// License. However the source code for this file must still be made available |
// in accordance with section (3) of the GNU General Public License. |
// |
// This exception does not invalidate any other reasons why a work based on |
// this file might be covered by the GNU General Public License. |
// |
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
// at http://sources.redhat.com/ecos/ecos-license/ |
// ------------------------------------------- |
//####ECOSGPLCOPYRIGHTEND#### |
//=========================================================================== |