diff options
Diffstat (limited to 'board/bf533-stamp/ide-cf.c')
-rw-r--r-- | board/bf533-stamp/ide-cf.c | 98 |
1 files changed, 0 insertions, 98 deletions
diff --git a/board/bf533-stamp/ide-cf.c b/board/bf533-stamp/ide-cf.c deleted file mode 100644 index 3e4080e28f..0000000000 --- a/board/bf533-stamp/ide-cf.c +++ /dev/null @@ -1,98 +0,0 @@ -/* - * CF IDE addon card code - * - * Enter bugs at http://blackfin.uclinux.org/ - * - * Copyright (c) 2005-2009 Analog Devices Inc. - * - * Licensed under the GPL-2 or later. - */ - -#include <common.h> -#include <config.h> -#include <asm/blackfin.h> - -void cf_outb(unsigned char val, volatile unsigned char *addr) -{ - /* "ETHERNET" means the expansion memory banks */ - swap_to(ETHERNET); - - *addr = val; - SSYNC(); - - swap_to(FLASH); -} - -unsigned char cf_inb(volatile unsigned char *addr) -{ - unsigned char c; - - swap_to(ETHERNET); - - c = *addr; - SSYNC(); - - swap_to(FLASH); - - return c; -} - -void cf_insw(unsigned short *sect_buf, unsigned short *addr, int words) -{ - int i; - - swap_to(ETHERNET); - - for (i = 0; i < words; i++) { - *(sect_buf + i) = *addr; - SSYNC(); - } - - swap_to(FLASH); -} - -void cf_outsw(unsigned short *addr, unsigned short *sect_buf, int words) -{ - int i; - - swap_to(ETHERNET); - - for (i = 0; i < words; i++) { - *addr = *(sect_buf + i); - SSYNC(); - } - - swap_to(FLASH); -} - -/* Definitions used in Compact Flash Boot support */ -#define FIO_EDGE_CF_BITS 0x0000 -#define FIO_POLAR_CF_BITS 0x0000 -#define FIO_EDGE_BITS 0x1E0 -#define FIO_POLAR_BITS 0x160 - -/* Compact flash status bits in status register */ -#define CF_STAT_BITS 0x00000060 - -void cf_ide_init(void) -{ - int i, cf_stat; - - /* Check whether CF card is inserted */ - bfin_write_FIO_EDGE(FIO_EDGE_CF_BITS); - bfin_write_FIO_POLAR(FIO_POLAR_CF_BITS); - for (i = 0; i < 0x300; i++) - asm volatile("nop;"); - - cf_stat = bfin_read_FIO_FLAG_S() & CF_STAT_BITS; - - bfin_write_FIO_EDGE(FIO_EDGE_BITS); - bfin_write_FIO_POLAR(FIO_POLAR_BITS); - - if (!cf_stat) { - for (i = 0; i < 0x3000; i++) - asm volatile("nop;"); - - ide_init(); - } -} |