summaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authorWolfgang Denk <wd@denx.de>2010-08-10 22:37:27 +0200
committerWolfgang Denk <wd@denx.de>2010-08-10 22:37:27 +0200
commitfe8d63c8c75acc87d398b2e181b9135d2ecfc05a (patch)
tree4eec2967c157e11cbf54f41845fb1350d3cc772f /common
parent9844d027b52cc89264f6bf7686e26d9dc50134fd (diff)
parent86cf2ae492db316e73512a1786d57ece9b3a7624 (diff)
downloadu-boot-imx-fe8d63c8c75acc87d398b2e181b9135d2ecfc05a.zip
u-boot-imx-fe8d63c8c75acc87d398b2e181b9135d2ecfc05a.tar.gz
u-boot-imx-fe8d63c8c75acc87d398b2e181b9135d2ecfc05a.tar.bz2
Merge branch 'master' of git://git.denx.de/u-boot-marvell
Diffstat (limited to 'common')
-rw-r--r--common/cmd_ide.c25
1 files changed, 16 insertions, 9 deletions
diff --git a/common/cmd_ide.c b/common/cmd_ide.c
index c0fb88d..6aeca76 100644
--- a/common/cmd_ide.c
+++ b/common/cmd_ide.c
@@ -25,6 +25,7 @@
/*
* IDE support
*/
+
#include <common.h>
#include <config.h>
#include <watchdog.h>
@@ -45,6 +46,12 @@
#include <mpc5xxx.h>
#endif
+#ifdef CONFIG_ORION5X
+#include <asm/arch/orion5x.h>
+#elif defined CONFIG_KIRKWOOD
+#include <asm/arch/kirkwood.h>
+#endif
+
#include <ide.h>
#include <ata.h>
@@ -847,7 +854,7 @@ input_swap_data(int dev, ulong *sect_buf, int words)
#endif /* __LITTLE_ENDIAN || CONFIG_AU1X00 */
-#if defined(__PPC__) || defined(CONFIG_PXA_PCMCIA) || defined(CONFIG_SH)
+#if defined(CONFIG_IDE_SWAP_IO)
static void
output_data(int dev, ulong *sect_buf, int words)
{
@@ -891,15 +898,15 @@ output_data(int dev, ulong *sect_buf, int words)
}
#endif
}
-#else /* ! __PPC__ */
+#else /* ! CONFIG_IDE_SWAP_IO */
static void
output_data(int dev, ulong *sect_buf, int words)
{
outsw(ATA_CURR_BASE(dev)+ATA_DATA_REG, sect_buf, words<<1);
}
-#endif /* __PPC__ */
+#endif /* CONFIG_IDE_SWAP_IO */
-#if defined(__PPC__) || defined(CONFIG_PXA_PCMCIA) || defined(CONFIG_SH)
+#if defined(CONFIG_IDE_SWAP_IO)
static void
input_data(int dev, ulong *sect_buf, int words)
{
@@ -949,14 +956,14 @@ input_data(int dev, ulong *sect_buf, int words)
}
#endif
}
-#else /* ! __PPC__ */
+#else /* ! CONFIG_IDE_SWAP_IO */
static void
input_data(int dev, ulong *sect_buf, int words)
{
insw(ATA_CURR_BASE(dev)+ATA_DATA_REG, sect_buf, words << 1);
}
-#endif /* __PPC__ */
+#endif /* CONFIG_IDE_SWAP_IO */
/* -------------------------------------------------------------------------
*/
@@ -1573,7 +1580,7 @@ int ide_device_present(int dev)
* ATAPI Support
*/
-#if defined(__PPC__) || defined(CONFIG_PXA_PCMCIA)
+#if defined(CONFIG_IDE_SWAP_IO)
/* since ATAPI may use commands with not 4 bytes alligned length
* we have our own transfer functions, 2 bytes alligned */
static void
@@ -1640,7 +1647,7 @@ input_data_shorts(int dev, ushort *sect_buf, int shorts)
#endif
}
-#else /* ! __PPC__ */
+#else /* ! CONFIG_IDE_SWAP_IO */
static void
output_data_shorts(int dev, ushort *sect_buf, int shorts)
{
@@ -1653,7 +1660,7 @@ input_data_shorts(int dev, ushort *sect_buf, int shorts)
insw(ATA_CURR_BASE(dev)+ATA_DATA_REG, sect_buf, shorts);
}
-#endif /* __PPC__ */
+#endif /* CONFIG_IDE_SWAP_IO */
/*
* Wait until (Status & mask) == res, or timeout (in ms)