1/* 2 * (C) Copyright 2002 3 * Sysgo Real-Time Solutions, GmbH <www.elinos.com> 4 * Marius Groeger <mgroeger@sysgo.de> 5 * 6 * See file CREDITS for list of people who contributed to this 7 * project. 8 * 9 * This program is free software; you can redistribute it and/or 10 * modify it under the terms of the GNU General Public License as 11 * published by the Free Software Foundation; either version 2 of 12 * the License, or (at your option) any later version. 13 * 14 * This program is distributed in the hope that it will be useful, 15 * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 * GNU General Public License for more details. 18 * 19 * You should have received a copy of the GNU General Public License 20 * along with this program; if not, write to the Free Software 21 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 22 * MA 02111-1307 USA 23 */ 24 25/* 26 * Adapted for KwikByte KB920x board from at91rm9200dk.c: 22APR2005 27 */ 28 29#include <common.h> 30#include <asm/arch/AT91RM9200.h> 31#include <at91rm9200_net.h> 32#include <lxt971a.h> 33 34DECLARE_GLOBAL_DATA_PTR; 35 36/* 37 * Miscelaneous platform dependent initialisations 38 */ 39 40void lowlevel_init(void) { 41 /* Required by assembly functions - do nothing */ 42} 43 44int board_init (void) 45{ 46 /* Enable Ctrlc */ 47 console_init_f (); 48 49 /* memory and cpu-speed are setup before relocation */ 50 /* so we do _nothing_ here */ 51 52 gd->bd->bi_arch_number = MACH_TYPE_KB9200; 53 54 /* adress of boot parameters */ 55 gd->bd->bi_boot_params = PHYS_SDRAM + 0x100; 56 57 return 0; 58} 59 60int dram_init (void) 61{ 62 gd->bd->bi_dram[0].start = PHYS_SDRAM; 63 gd->bd->bi_dram[0].size = PHYS_SDRAM_SIZE; 64 return 0; 65} 66 67#ifdef CONFIG_DRIVER_ETHER 68#if defined(CONFIG_CMD_NET) 69 70unsigned int lxt972_IsPhyConnected (AT91PS_EMAC p_mac); 71UCHAR lxt972_GetLinkSpeed (AT91PS_EMAC p_mac); 72UCHAR lxt972_InitPhy (AT91PS_EMAC p_mac); 73UCHAR lxt972_AutoNegotiate (AT91PS_EMAC p_mac, int *status); 74 75/* 76 * Name: 77 * at91rm9200_GetPhyInterface 78 * Description: 79 * Initialise the interface functions to the PHY 80 * Arguments: 81 * None 82 * Return value: 83 * None 84 */ 85void at91rm9200_GetPhyInterface(AT91PS_PhyOps p_phyops) 86{ 87 p_phyops->Init = lxt972_InitPhy; 88 p_phyops->IsPhyConnected = lxt972_IsPhyConnected; 89 p_phyops->GetLinkSpeed = lxt972_GetLinkSpeed; 90 p_phyops->AutoNegotiate = lxt972_AutoNegotiate; 91} 92 93#endif 94#endif /* CONFIG_DRIVER_ETHER */ 95