Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | /* |
| 2 | * arch/ppc/boot/simple/misc-chestnut.c |
| 3 | * |
| 4 | * Setup for the IBM Chestnut (ibm-750fxgx_eval) |
| 5 | * |
| 6 | * Author: Mark A. Greer <mgreer@mvista.com> |
| 7 | * |
| 8 | * 2005 (c) MontaVista Software, Inc. This file is licensed under |
| 9 | * the terms of the GNU General Public License version 2. This program |
| 10 | * is licensed "as is" without any warranty of any kind, whether express |
| 11 | * or implied. |
| 12 | */ |
| 13 | |
| 14 | #include <linux/config.h> |
| 15 | #include <linux/types.h> |
| 16 | #include <asm/io.h> |
| 17 | #include <asm/mv64x60_defs.h> |
| 18 | #include <platforms/chestnut.h> |
| 19 | |
| 20 | /* Not in the kernel so won't include kernel.h to get its 'max' definition */ |
| 21 | #define max(a,b) (((a) > (b)) ? (a) : (b)) |
| 22 | |
| 23 | void |
| 24 | mv64x60_board_init(void __iomem *old_base, void __iomem *new_base) |
| 25 | { |
| 26 | #ifdef CONFIG_SERIAL_8250_CONSOLE |
| 27 | /* |
| 28 | * Change device bus 2 window so that bootoader can do I/O thru |
| 29 | * 8250/16550 UART that's mapped in that window. |
| 30 | */ |
| 31 | out_le32(new_base + MV64x60_CPU2DEV_2_BASE, CHESTNUT_UART_BASE >> 16); |
| 32 | out_le32(new_base + MV64x60_CPU2DEV_2_SIZE, CHESTNUT_UART_SIZE >> 16); |
| 33 | __asm__ __volatile__("sync"); |
| 34 | #endif |
| 35 | } |