From dc7c9a1a52403093b9e4aef14ac4c5c014386e57 Mon Sep 17 00:00:00 2001 From: wdenk Date: Wed, 26 Mar 2003 06:55:25 +0000 Subject: * Patch by Rick Bronson, 16 Mar 2003: Add support for Atmel AT91RM9200DK w/NAND * Patches by Robert Schwebel, 19 Mar 2003: - use arm-linux-gcc as default compiler for ARM - fix i2c fixup code - fix missing baudrate setting - added $loadaddr / CFG_LOAD_ADDR support to loadb - moved "ignoring trailing characters" _before_ u-boot wants to print out diagnostics messages; removes bogus characters at the end of transmission * Patch by John Zhan, 18 Mar 2003: Add support for SinoVee Microsystems SC8xx boards * Patch by Rolf Offermanns, 21 Mar 2003: ported the dnp1110 related changes from the current armboot cvs to current u-boot cvs. smc91111 does not work. problem marked in smc91111.c, grep for "FIXME". * Patch by Brian Auld, 25 Mar 2003: Add support for STM flash chips on ebony board * Add PCI support for MPC8250 Boards (PM825 module) * Patch by Stefan Roese, 25 Mar 2003: --- board/innokom/flash.c | 3 +++ board/innokom/innokom.c | 27 +++++++++++++++++++-------- 2 files changed, 22 insertions(+), 8 deletions(-) (limited to 'board/innokom') diff --git a/board/innokom/flash.c b/board/innokom/flash.c index b56707d..32c57d8 100644 --- a/board/innokom/flash.c +++ b/board/innokom/flash.c @@ -9,6 +9,9 @@ * (C) Copyright 2002 * Robert Schwebel, Pengutronix, * + * (C) Copyright 2002 + * Kai-Uwe Bloem, GDS, + * * See file CREDITS for list of people who contributed to this * project. * diff --git a/board/innokom/innokom.c b/board/innokom/innokom.c index 0176d9c..5ee5117 100644 --- a/board/innokom/innokom.c +++ b/board/innokom/innokom.c @@ -39,20 +39,28 @@ * The Innokom board has GPIO70 connected to SCLK which can be toggled * until all chips think that their current cycles are finished. */ -void i2c_init_board(void) +int i2c_init_board(void) { - int i; + int i, icr; - /* set gpio pin to output */ - GPDR(70) |= GPIO_bit(70); - for (i = 0; i < 11; i++) { + /* disable I2C controller first, otherwhise it thinks we want to */ + /* talk to the slave port... */ + icr = ICR; ICR &= ~(ICR_SCLE | ICR_IUE); + + /* set gpio pin low _before_ we change direction to output */ GPCR(70) = GPIO_bit(70); + + /* now toggle between output=low and high-impedance */ + for (i = 0; i < 20; i++) { + GPDR(70) |= GPIO_bit(70); /* output */ udelay(10); - GPSR(70) = GPIO_bit(70); + GPDR(70) &= ~GPIO_bit(70); /* input */ udelay(10); } - /* set gpio pin to input */ - GPDR(70) &= ~GPIO_bit(70); + + ICR = icr; + + return 0; } @@ -98,6 +106,9 @@ int board_init (void) /* adress of boot parameters */ gd->bd->bi_boot_params = 0xa0000100; + /* baud rate */ + gd->bd->bi_baudrate = CONFIG_BAUDRATE; + return 0; } -- cgit v1.1