1/* 2 * linux/arch/arm/mach-clps711x/fortunet.c 3 * 4 * Derived from linux/arch/arm/mach-integrator/arch.c 5 * 6 * Copyright (C) 2000 Deep Blue Solutions Ltd 7 * 8 * This program is free software; you can redistribute it and/or modify 9 * it under the terms of the GNU General Public License as published by 10 * the Free Software Foundation; either version 2 of the License, or 11 * (at your option) any later version. 12 * 13 * This program is distributed in the hope that it will be useful, 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 * GNU General Public License for more details. 17 * 18 * You should have received a copy of the GNU General Public License 19 * along with this program; if not, write to the Free Software 20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 21 */ 22#include <linux/types.h> 23#include <linux/init.h> 24#include <linux/initrd.h> 25 26#include <mach/hardware.h> 27#include <asm/setup.h> 28#include <asm/mach-types.h> 29 30#include <asm/mach/arch.h> 31 32#include <asm/memory.h> 33 34#include "common.h" 35 36struct meminfo memmap = { 37 .nr_banks = 1, 38 .bank = { 39 { 40 .start = 0xC0000000, 41 .size = 0x01000000, 42 }, 43 }, 44}; 45 46typedef struct tag_IMAGE_PARAMS 47{ 48 int ramdisk_ok; 49 int ramdisk_address; 50 int ramdisk_size; 51 int ram_size; 52 int extra_param_type; 53 int extra_param_ptr; 54 int command_line; 55} IMAGE_PARAMS; 56 57#define IMAGE_PARAMS_PHYS 0xC01F0000 58 59static void __init 60fortunet_fixup(struct machine_desc *desc, struct tag *tags, 61 char **cmdline, struct meminfo *mi) 62{ 63 IMAGE_PARAMS *ip = phys_to_virt(IMAGE_PARAMS_PHYS); 64 *cmdline = phys_to_virt(ip->command_line); 65#ifdef CONFIG_BLK_DEV_INITRD 66 if(ip->ramdisk_ok) 67 { 68 initrd_start = __phys_to_virt(ip->ramdisk_address); 69 initrd_end = initrd_start + ip->ramdisk_size; 70 } 71#endif 72 memmap.bank[0].size = ip->ram_size; 73 *mi = memmap; 74} 75 76MACHINE_START(FORTUNET, "ARM-FortuNet") 77 /* Maintainer: FortuNet Inc. */ 78 .phys_io = 0x80000000, 79 .io_pg_offst = ((0xf0000000) >> 18) & 0xfffc, 80 .boot_params = 0x00000000, 81 .fixup = fortunet_fixup, 82 .map_io = clps711x_map_io, 83 .init_irq = clps711x_init_irq, 84 .timer = &clps711x_timer, 85MACHINE_END 86