1/* 2 * BRIEF MODULE DESCRIPTION 3 * PROM library initialisation code, assuming a version of 4 * pmon is the boot code. 5 * 6 * Copyright 2001 MontaVista Software Inc. 7 * Author: MontaVista Software, Inc. 8 * ahennessy@mvista.com 9 * 10 * Based on arch/mips/au1000/common/prom.c 11 * 12 * This file was derived from Carsten Langgaard's 13 * arch/mips/mips-boards/xx files. 14 * 15 * Carsten Langgaard, carstenl@mips.com 16 * Copyright (C) 1999,2000 MIPS Technologies, Inc. All rights reserved. 17 * 18 * This program is free software; you can redistribute it and/or modify it 19 * under the terms of the GNU General Public License as published by the 20 * Free Software Foundation; either version 2 of the License, or (at your 21 * option) any later version. 22 * 23 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED 24 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 25 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN 26 * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 27 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 28 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF 29 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 30 * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 31 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 32 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 33 * 34 * You should have received a copy of the GNU General Public License along 35 * with this program; if not, write to the Free Software Foundation, Inc., 36 * 675 Mass Ave, Cambridge, MA 02139, USA. 37 */ 38#include <linux/kernel.h> 39#include <linux/init.h> 40#include <linux/string.h> 41 42#include <asm/bootinfo.h> 43 44char * __init prom_getcmdline(void) 45{ 46 return &(arcs_cmdline[0]); 47} 48 49void __init prom_init_cmdline(void) 50{ 51 char *cp; 52 int actr; 53 int prom_argc = fw_arg0; 54 char **prom_argv = (char **) fw_arg1; 55 56 actr = 1; /* Always ignore argv[0] */ 57 58 cp = &(arcs_cmdline[0]); 59 while(actr < prom_argc) { 60 strcpy(cp, prom_argv[actr]); 61 cp += strlen(prom_argv[actr]); 62 *cp++ = ' '; 63 actr++; 64 } 65 if (cp != &(arcs_cmdline[0])) /* get rid of trailing space */ 66 --cp; 67 *cp = '\0'; 68} 69 70void __init prom_free_prom_memory(void) 71{ 72} 73