^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) * include/asm-xtensa/bootparam.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) * Definition of the Linux/Xtensa boot parameter structure
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) * This file is subject to the terms and conditions of the GNU General Public
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) * License. See the file "COPYING" in the main directory of this archive
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) * for more details.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) * Copyright (C) 2001 - 2005 Tensilica Inc.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) * (Concept borrowed from the 68K port)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) #ifndef _XTENSA_BOOTPARAM_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) #define _XTENSA_BOOTPARAM_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) #define BP_VERSION 0x0001
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) #define BP_TAG_COMMAND_LINE 0x1001 /* command line (0-terminated string)*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) #define BP_TAG_INITRD 0x1002 /* ramdisk addr and size (bp_meminfo) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) #define BP_TAG_MEMORY 0x1003 /* memory addr and size (bp_meminfo) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) #define BP_TAG_SERIAL_BAUDRATE 0x1004 /* baud rate of current console. */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) #define BP_TAG_SERIAL_PORT 0x1005 /* serial device of current console */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) #define BP_TAG_FDT 0x1006 /* flat device tree addr */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) #define BP_TAG_FIRST 0x7B0B /* first tag with a version number */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) #define BP_TAG_LAST 0x7E0B /* last tag */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) #ifndef __ASSEMBLY__
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) /* All records are aligned to 4 bytes */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) typedef struct bp_tag {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) unsigned short id; /* tag id */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) unsigned short size; /* size of this record excluding the structure*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) unsigned long data[0]; /* data */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) } bp_tag_t;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) struct bp_meminfo {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) unsigned long type;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) unsigned long start;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) unsigned long end;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) #define MEMORY_TYPE_CONVENTIONAL 0x1000
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) #define MEMORY_TYPE_NONE 0x2000
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) #endif