summaryrefslogtreecommitdiff
path: root/board/bf533-stamp/ide-cf.c
diff options
context:
space:
mode:
Diffstat (limited to 'board/bf533-stamp/ide-cf.c')
-rw-r--r--board/bf533-stamp/ide-cf.c98
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 3e4080e..0000000
--- 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();
- }
-}