Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7487a224 authored by Josh Boyer's avatar Josh Boyer Committed by Paul Mackerras
Browse files

[POWERPC] Holly bootwrapper



Add Holly/Hickory bootwrapper

Signed-off-by: default avatarStephen Winiecki <stevewin@us.ibm.com>
Signed-off-by: default avatarJosh Boyer <jwboyer@linux.vnet.ibm.com>
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent d4d19ec4
Loading
Loading
Loading
Loading
+8 −1
Original line number Original line Diff line number Diff line
@@ -43,7 +43,7 @@ $(addprefix $(obj)/,$(zlib) gunzip_util.o main.o): \
src-wlib := string.S crt0.S stdio.c main.c flatdevtree.c flatdevtree_misc.c \
src-wlib := string.S crt0.S stdio.c main.c flatdevtree.c flatdevtree_misc.c \
		ns16550.c serial.c simple_alloc.c div64.S util.S \
		ns16550.c serial.c simple_alloc.c div64.S util.S \
		gunzip_util.c elf_util.c $(zlib) devtree.c
		gunzip_util.c elf_util.c $(zlib) devtree.c
src-plat := of.c cuboot-83xx.c cuboot-85xx.c
src-plat := of.c cuboot-83xx.c cuboot-85xx.c holly.c
src-boot := $(src-wlib) $(src-plat) empty.c
src-boot := $(src-wlib) $(src-plat) empty.c


src-boot := $(addprefix $(obj)/, $(src-boot))
src-boot := $(addprefix $(obj)/, $(src-boot))
@@ -129,6 +129,7 @@ image-$(CONFIG_PPC_CELLEB) += zImage.pseries
image-$(CONFIG_PPC_CHRP)		+= zImage.chrp
image-$(CONFIG_PPC_CHRP)		+= zImage.chrp
image-$(CONFIG_PPC_EFIKA)		+= zImage.chrp
image-$(CONFIG_PPC_EFIKA)		+= zImage.chrp
image-$(CONFIG_PPC_PMAC)		+= zImage.pmac
image-$(CONFIG_PPC_PMAC)		+= zImage.pmac
image-$(CONFIG_PPC_HOLLY)		+= zImage.holly-elf
image-$(CONFIG_DEFAULT_UIMAGE)		+= uImage
image-$(CONFIG_DEFAULT_UIMAGE)		+= uImage


ifneq ($(CONFIG_DEVICE_TREE),"")
ifneq ($(CONFIG_DEVICE_TREE),"")
@@ -164,6 +165,12 @@ $(obj)/zImage.ps3: vmlinux
$(obj)/zImage.initrd.ps3: vmlinux
$(obj)/zImage.initrd.ps3: vmlinux
	@echo "  WARNING zImage.initrd.ps3 not supported (yet)"
	@echo "  WARNING zImage.initrd.ps3 not supported (yet)"


$(obj)/zImage.holly-elf: vmlinux $(wrapperbits)
	$(call if_changed,wrap,holly,$(obj)/dts/holly.dts,,)

$(obj)/zImage.initrd.holly-elf: vmlinux $(wrapperbits) $(obj)/ramdisk.image.gz
	$(call if_changed,wrap,holly,$(obj)/dts/holly.dts,,$(obj)/ramdisk.image.gz)

$(obj)/uImage: vmlinux $(wrapperbits)
$(obj)/uImage: vmlinux $(wrapperbits)
	$(call if_changed,wrap,uboot)
	$(call if_changed,wrap,uboot)


+38 −0
Original line number Original line Diff line number Diff line
/*
 * Copyright 2007 IBM Corporation
 *
 * Stephen Winiecki <stevewin@us.ibm.com>
 * Josh Boyer <jwboyer@linux.vnet.ibm.com>
 *
 * Based on earlier code:
 * Copyright (C) Paul Mackerras 1997.
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * version 2 as published by the Free Software Foundation.
 */
#include <stdarg.h>
#include <stddef.h>
#include "types.h"
#include "elf.h"
#include "string.h"
#include "stdio.h"
#include "page.h"
#include "ops.h"
#include "io.h"

extern char _start[];
extern char _end[];
extern char _dtb_start[];
extern char _dtb_end[];

BSS_STACK(4096);

void platform_init(unsigned long r3, unsigned long r4, unsigned long r5)
{
	u32 heapsize = 0x8000000 - (u32)_end; /* 128M */

	simple_alloc_init(_end, heapsize, 32, 64);
	ft_init(_dtb_start, 0, 4);
	serial_console_init();
}