1367b8112SChris Zankel /* 2367b8112SChris Zankel * include/asm-xtensa/bootparam.h 3367b8112SChris Zankel * 4367b8112SChris Zankel * Definition of the Linux/Xtensa boot parameter structure 5367b8112SChris Zankel * 6367b8112SChris Zankel * This file is subject to the terms and conditions of the GNU General Public 7367b8112SChris Zankel * License. See the file "COPYING" in the main directory of this archive 8367b8112SChris Zankel * for more details. 9367b8112SChris Zankel * 10367b8112SChris Zankel * Copyright (C) 2001 - 2005 Tensilica Inc. 11367b8112SChris Zankel * 12367b8112SChris Zankel * (Concept borrowed from the 68K port) 13367b8112SChris Zankel */ 14367b8112SChris Zankel 15367b8112SChris Zankel #ifndef _XTENSA_BOOTPARAM_H 16367b8112SChris Zankel #define _XTENSA_BOOTPARAM_H 17367b8112SChris Zankel 18367b8112SChris Zankel #define BP_VERSION 0x0001 19367b8112SChris Zankel 20367b8112SChris Zankel #define BP_TAG_COMMAND_LINE 0x1001 /* command line (0-terminated string)*/ 21367b8112SChris Zankel #define BP_TAG_INITRD 0x1002 /* ramdisk addr and size (bp_meminfo) */ 22367b8112SChris Zankel #define BP_TAG_MEMORY 0x1003 /* memory addr and size (bp_meminfo) */ 23661b40b0SBaruch Siach #define BP_TAG_SERIAL_BAUDRATE 0x1004 /* baud rate of current console. */ 24367b8112SChris Zankel #define BP_TAG_SERIAL_PORT 0x1005 /* serial device of current console */ 25da844a81SMax Filippov #define BP_TAG_FDT 0x1006 /* flat device tree addr */ 26367b8112SChris Zankel 27367b8112SChris Zankel #define BP_TAG_FIRST 0x7B0B /* first tag with a version number */ 28367b8112SChris Zankel #define BP_TAG_LAST 0x7E0B /* last tag */ 29367b8112SChris Zankel 30367b8112SChris Zankel #ifndef __ASSEMBLY__ 31367b8112SChris Zankel 32367b8112SChris Zankel /* All records are aligned to 4 bytes */ 33367b8112SChris Zankel 34367b8112SChris Zankel typedef struct bp_tag { 35367b8112SChris Zankel unsigned short id; /* tag id */ 36367b8112SChris Zankel unsigned short size; /* size of this record excluding the structure*/ 37*5224f790SGustavo A. R. Silva unsigned long data[]; /* data */ 38367b8112SChris Zankel } bp_tag_t; 39367b8112SChris Zankel 409ba067f9SMax Filippov struct bp_meminfo { 41367b8112SChris Zankel unsigned long type; 42367b8112SChris Zankel unsigned long start; 43367b8112SChris Zankel unsigned long end; 449ba067f9SMax Filippov }; 45367b8112SChris Zankel 46367b8112SChris Zankel #define MEMORY_TYPE_CONVENTIONAL 0x1000 47367b8112SChris Zankel #define MEMORY_TYPE_NONE 0x2000 48367b8112SChris Zankel 49367b8112SChris Zankel #endif 50367b8112SChris Zankel #endif 51