blob: fba22d5d908f83eed6d28015f40a6ba93d403bd7 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/*
Lennert Buytenhek3f7e5812006-09-18 23:10:26 +01002 * linux/arch/arm/mach-iop32x/iq31244-mm.c
Linus Torvalds1da177e2005-04-16 15:20:36 -07003 *
4 * Low level memory initialization for iq80321 platform
5 *
6 * Author: Rory Bolt <rorybolt@pacbell.net>
7 * Copyright (C) 2002 Rory Bolt
8 *
9 * This program is free software; you can redistribute it and/or modify it
10 * under the terms of the GNU General Public License as published by the
11 * Free Software Foundation; either version 2 of the License, or (at your
12 * option) any later version.
13 *
14 */
15
16#include <linux/mm.h>
17#include <linux/init.h>
18
19#include <asm/io.h>
20#include <asm/pgtable.h>
21#include <asm/page.h>
22
23#include <asm/mach/map.h>
Lennert Buytenhek7ae1f7e2006-09-18 23:12:53 +010024#include <asm/hardware/iop3xx.h>
Linus Torvalds1da177e2005-04-16 15:20:36 -070025
26
27/*
28 * IQ80321 specific IO mappings
29 *
30 * We use RedBoot's setup for the onboard devices.
31 */
32static struct map_desc iq31244_io_desc[] __initdata = {
Deepak Saxena4835e642005-10-28 15:18:57 +010033 { /* on-board devices */
34 .virtual = IQ31244_UART,
35 .pfn = __phys_to_pfn(IQ31244_UART),
36 .length = 0x00100000,
37 .type = MT_DEVICE
38 }
Linus Torvalds1da177e2005-04-16 15:20:36 -070039};
40
41void __init iq31244_map_io(void)
42{
Lennert Buytenhek7ae1f7e2006-09-18 23:12:53 +010043 iop3xx_map_io();
Linus Torvalds1da177e2005-04-16 15:20:36 -070044
45 iotable_init(iq31244_io_desc, ARRAY_SIZE(iq31244_io_desc));
46}