Mercurial > flash_v2
diff packages/io/flash/current/src/legacy_dev.c @ 1744:f854ed1e81db
Fix reads on legacy devices
| author | bartv |
|---|---|
| date | Sun, 21 Nov 2004 12:09:40 +0000 |
| parents | e308039f4579 |
| children | 80232dbac7fb |
line wrap: on
line diff
--- a/packages/io/flash/current/src/legacy_dev.c +++ b/packages/io/flash/current/src/legacy_dev.c @@ -169,6 +169,7 @@ legacy_flash_program(struct cyg_flash_de return (*_flash_program_buf)(base, data, len, block_mask ,block_size); } +#ifdef CYGSEM_IO_FLASH_READ_INDIRECT static int legacy_flash_read (struct cyg_flash_dev *dev, const cyg_flashaddr_t base, @@ -180,7 +181,6 @@ legacy_flash_read (struct cyg_flash_dev const cyg_flashaddr_t base, void* data, const size_t len) { -#ifdef CYGSEM_IO_FLASH_READ_INDIRECT typedef int code_fun(const cyg_flashaddr_t, void *, int, unsigned long, int); code_fun *_flash_read_buf; size_t block_size = dev->block_info[0].block_size; @@ -189,11 +189,12 @@ legacy_flash_read (struct cyg_flash_dev _flash_read_buf = (code_fun*) __anonymizer(&flash_read_buf); return (*_flash_read_buf)(base, data, len, block_mask, block_size); +} + +# define LEGACY_FLASH_READ legacy_flash_read #else - memcpy(data,(void *)base, len); - return CYG_FLASH_ERR_OK; +# define LEGACY_FLASH_READ ((int (*)(struct cyg_flash_dev*, const cyg_flashaddr_t, void*, const size_t))0) #endif -} static int @@ -270,7 +271,7 @@ CYG_FLASH_FUNS(cyg_legacy_funs, legacy_flash_query, legacy_flash_erase_block, legacy_flash_program, - legacy_flash_read, + LEGACY_FLASH_READ, legacy_flash_hwr_map_error, legacy_flash_block_lock, legacy_flash_block_unlock
