setup.h (1465B)
1/* SPDX-License-Identifier: GPL-2.0-only */ 2#ifndef __ALPHA_SETUP_H 3#define __ALPHA_SETUP_H 4 5#include <uapi/asm/setup.h> 6 7/* 8 * We leave one page for the initial stack page, and one page for 9 * the initial process structure. Also, the console eats 3 MB for 10 * the initial bootloader (one of which we can reclaim later). 11 */ 12#define BOOT_PCB 0x20000000 13#define BOOT_ADDR 0x20000000 14/* Remove when official MILO sources have ELF support: */ 15#define BOOT_SIZE (16*1024) 16 17#ifdef CONFIG_ALPHA_LEGACY_START_ADDRESS 18#define KERNEL_START_PHYS 0x300000 /* Old bootloaders hardcoded this. */ 19#else 20#define KERNEL_START_PHYS 0x1000000 /* required: Wildfire/Titan/Marvel */ 21#endif 22 23#define KERNEL_START (PAGE_OFFSET+KERNEL_START_PHYS) 24#define SWAPPER_PGD KERNEL_START 25#define INIT_STACK (PAGE_OFFSET+KERNEL_START_PHYS+0x02000) 26#define EMPTY_PGT (PAGE_OFFSET+KERNEL_START_PHYS+0x04000) 27#define EMPTY_PGE (PAGE_OFFSET+KERNEL_START_PHYS+0x08000) 28#define ZERO_PGE (PAGE_OFFSET+KERNEL_START_PHYS+0x0A000) 29 30#define START_ADDR (PAGE_OFFSET+KERNEL_START_PHYS+0x10000) 31 32/* 33 * This is setup by the secondary bootstrap loader. Because 34 * the zero page is zeroed out as soon as the vm system is 35 * initialized, we need to copy things out into a more permanent 36 * place. 37 */ 38#define PARAM ZERO_PGE 39#define COMMAND_LINE ((char *)(absolute_pointer(PARAM + 0x0000))) 40#define INITRD_START (*(unsigned long *) (PARAM+0x100)) 41#define INITRD_SIZE (*(unsigned long *) (PARAM+0x108)) 42 43#endif