Re: [kvm-unit-tests PATCH v4 10/17] powerpc/ppc64: add a boot rom

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Feb 15, 2016 at 02:49:19PM +0100, Andrew Jones wrote:
> Make a one line replacement for SLOF. This bootloader just
> jumps to 0x400000, because we know the kernel will be there.
> 
> Signed-off-by: Andrew Jones <drjones@xxxxxxxxxx>
> Reviewed-by: Thomas Huth <thuth@xxxxxxxxxx>
> Tested-by: Laurent Vivier <lvivier@xxxxxxxxxx>

Reviewed-by: David Gibson <david@xxxxxxxxxxxxxxxxxxxxx>

> ---
>  powerpc/.gitignore      |  1 +
>  powerpc/Makefile.common | 11 +++++++++--
>  powerpc/boot_rom.S      |  5 +++++
>  3 files changed, 15 insertions(+), 2 deletions(-)
>  create mode 100644 powerpc/.gitignore
>  create mode 100644 powerpc/boot_rom.S
> 
> diff --git a/powerpc/.gitignore b/powerpc/.gitignore
> new file mode 100644
> index 0000000000000..2f017a8e61d4b
> --- /dev/null
> +++ b/powerpc/.gitignore
> @@ -0,0 +1 @@
> +boot_rom.bin
> diff --git a/powerpc/Makefile.common b/powerpc/Makefile.common
> index 13b828ab171d6..0c3eaba0d3aab 100644
> --- a/powerpc/Makefile.common
> +++ b/powerpc/Makefile.common
> @@ -11,7 +11,7 @@ endif
>  tests-common = \
>  	$(TEST_DIR)/selftest.elf
>  
> -all: test_cases
> +all: $(TEST_DIR)/boot_rom.bin test_cases
>  
>  ##################################################################
>  phys_base = $(LOADADDR)
> @@ -40,8 +40,15 @@ FLATLIBS = $(libcflat) $(LIBFDT_archive) $(libgcc)
>  		-Wl,-T,powerpc/flat.lds,--build-id=none,-Ttext=$(start_addr) \
>  		$(filter %.o, $^) $(FLATLIBS)
>  
> +$(TEST_DIR)/boot_rom.bin: $(TEST_DIR)/boot_rom.elf
> +	dd if=/dev/zero of=$@ bs=256 count=1
> +	$(OBJCOPY) -O binary $^ >(cat - >>$@)
> +
> +$(TEST_DIR)/boot_rom.elf: $(TEST_DIR)/boot_rom.o
> +	$(LD) -nostdlib -Ttext=0x100 --entry=start --build-id=none -o $@ $<
> +
>  powerpc_clean: libfdt_clean asm_offsets_clean
> -	$(RM) $(TEST_DIR)/*.{o,elf} \
> +	$(RM) $(TEST_DIR)/*.{o,elf} $(TEST_DIR)/boot_rom.bin \
>  	      $(TEST_DIR)/.*.d lib/powerpc/.*.d
>  
>  ##################################################################
> diff --git a/powerpc/boot_rom.S b/powerpc/boot_rom.S
> new file mode 100644
> index 0000000000000..ae2c08ddce3c1
> --- /dev/null
> +++ b/powerpc/boot_rom.S
> @@ -0,0 +1,5 @@
> +#define SPAPR_KERNEL_LOAD_ADDR 0x400000
> +.text
> +.globl start
> +start:
> +	b	SPAPR_KERNEL_LOAD_ADDR - 0x100

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux