summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJustin Waters <justin.waters@timesys.com>2008-07-07 16:07:04 -0400
committerJustin Waters <justin.waters@timesys.com>2008-07-07 16:07:04 -0400
commite5f5802c95b218ab74f4268584835aa13cb2d36d (patch)
tree480b62c9e38337595c31d20359241227602f9768
parent32028b2bf479f08b729b58cda4c9e2a151074547 (diff)
Fix AT91SAM9G20-EK Specific bugs
This fixes the nand flash and ethernet on the 9g20. Dataflash is still broken, however. Signed-off-by: Justin Waters <justin.waters@timesys.com>
-rw-r--r--board/at91sam9g20ek/at91sam9g20ek.c6
-rw-r--r--board/at91sam9g20ek/dm9161a.c6
-rw-r--r--board/at91sam9g20ek/nand.c6
3 files changed, 10 insertions, 8 deletions
diff --git a/board/at91sam9g20ek/at91sam9g20ek.c b/board/at91sam9g20ek/at91sam9g20ek.c
index 1cd71fb314..3272ae08f2 100644
--- a/board/at91sam9g20ek/at91sam9g20ek.c
+++ b/board/at91sam9g20ek/at91sam9g20ek.c
@@ -72,7 +72,7 @@ int board_late_init(void)
DECLARE_GLOBAL_DATA_PTR;
/* Fix Ethernet Initialization Bug when starting Linux from U-Boot */
-#if (CONFIG_COMMANDS & CFG_CMD_NET)
+#if defined(CONFIG_CMD_NET)
eth_init(gd->bd);
#endif
@@ -109,7 +109,7 @@ int AT91F_Serial_Hardware_Init(void)
#ifdef CONFIG_DRIVER_ETHER
-#if (CONFIG_COMMANDS & CFG_CMD_NET)
+#if defined(CONFIG_CMD_NET)
extern AT91PS_EMAC p_mac;
@@ -194,5 +194,5 @@ int AT91F_EMAC_Hardware_Init(void)
AT91C_BASE_PIOA->PIO_PDR = (periphAEnable | periphBEnable);
}
-#endif /* CONFIG_COMMANDS & CFG_CMD_NET */
+#endif /* CONFIG_CMD_NET */
#endif /* CONFIG_DRIVER_ETHER */
diff --git a/board/at91sam9g20ek/dm9161a.c b/board/at91sam9g20ek/dm9161a.c
index cd9933e902..fda0b5d2d2 100644
--- a/board/at91sam9g20ek/dm9161a.c
+++ b/board/at91sam9g20ek/dm9161a.c
@@ -27,7 +27,7 @@
#ifdef CONFIG_DRIVER_ETHER
-#if (CONFIG_COMMANDS & CFG_CMD_NET)
+#if defined(CONFIG_CMD_NET)
/*
* Name:
@@ -97,7 +97,7 @@ static uchar dm9161a_GetLinkSpeed (AT91PS_EMAC p_mac)
return TRUE;
}
- if ((stat1 & DM9161_100BASE_T4_HD) && (stat2 & DM9161_100HDX)) {
+ if ((stat1 & DM9161_100BASE_TX_HD) && (stat2 & DM9161_100HDX)) {
/*set MII for 100BaseTX and Half Duplex */
p_mac->EMAC_NCFGR = (p_mac->EMAC_NCFGR &
~(AT91C_EMAC_SPD | AT91C_EMAC_FD))
@@ -295,7 +295,7 @@ void at91_GetPhyInterface(AT91PS_PhyOps p_phyops)
p_phyops->Reset = dm9161a_ResetPhy;
}
-#endif /* CONFIG_COMMANDS & CFG_CMD_NET */
+#endif /* CONFIG_CMD_NET */
#endif /* CONFIG_DRIVER_ETHER */
diff --git a/board/at91sam9g20ek/nand.c b/board/at91sam9g20ek/nand.c
index 2a339a9ed7..d632399358 100644
--- a/board/at91sam9g20ek/nand.c
+++ b/board/at91sam9g20ek/nand.c
@@ -23,7 +23,7 @@
#include <common.h>
#include <asm/arch/hardware.h>
-#if (CONFIG_COMMANDS & CFG_CMD_NAND)
+#if defined(CONFIG_CMD_NAND)
#include <nand.h>
@@ -95,7 +95,7 @@ static int at91sam9260ek_nand_ready(struct mtd_info *mtd)
return (*AT91C_PIOC_PDSR & AT91C_PIO_PC13);
}
-void board_nand_init(struct nand_chip *nand)
+int board_nand_init(struct nand_chip *nand)
{
nand->eccmode = NAND_ECC_SOFT;
nand->hwcontrol = at91sam9260ek_nand_hwcontrol;
@@ -103,5 +103,7 @@ void board_nand_init(struct nand_chip *nand)
nand->chip_delay = 18;
at91sam9260ek_nand_init(nand);
+
+ return 0;
}
#endif