linux/arch/powerpc/boot
Oliver O'Halloran 656ad58ef1 powerpc/boot: Add OPAL console to epapr wrappers
This patch adds an OPAL console backend to the powerpc boot wrapper so
that decompression failures inside the wrapper can be reported to the
user. This is important since it typically indicates data corruption in
the firmware and other nasty things.

Currently this only works when building a little endian kernel. When
compiling a 64 bit BE kernel the wrapper is always build 32 bit to be
compatible with some 32 bit firmwares. BE support will be added at a
later date. Another limitation of this is that only the "raw" type of
OPAL console is supported, however machines that provide a hvsi console
also provide a raw console so this is not an issue in practice.

Actually-written-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
[mpe: Move #ifdef __powerpc64__ to avoid warnings on 32-bit]
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2016-07-05 23:58:54 +10:00
..
dts Merge branch 'for-4.7-dw' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata 2016-05-23 18:19:21 -07:00
.gitignore powerpc/boot: Ignore .dtb files. 2013-12-02 14:06:57 +11:00
4xx.c powerpc/44x: Fix UART clocks on 440SPe 2010-05-12 07:48:49 -04:00
4xx.h powerpc/405ex: provide necessary fixup function to support cuImage 2009-08-31 09:20:55 -04:00
44x.h [POWERPC] cuimage for Bamboo board 2007-09-19 21:13:16 -05:00
Makefile powerpc/boot: Add OPAL console to epapr wrappers 2016-07-05 23:58:54 +10:00
README
addnote.c powerpc/boot: Add 64bit and little endian support to addnote 2014-04-28 17:36:00 +10:00
bamboo.c [POWERPC] Start removing linux,network-index in favour of aliases 2008-03-26 07:19:16 -05:00
cpm-serial.c [POWERPC] cpm-serial: Relocate CPM buffer descriptors and SMC parameter ram. 2008-04-17 01:01:37 -05:00
crt0.S powerpc/boot: don't clobber r6 and r7 in epapr boot 2015-03-16 18:58:35 +11:00
crtsavres.S [POWERPC] Fix bootwrapper builds with newer gcc versions 2008-06-16 15:00:52 +10:00
cuboot-8xx.c [POWERPC] Use embedded libfdt in the bootwrapper 2007-12-11 13:46:14 +11:00
cuboot-52xx.c powerpc/52xx: Make cuImage more robust in locating immr node. 2008-10-15 11:09:59 -06:00
cuboot-83xx.c [POWERPC] bootwrapper: convert cuboot-8{3,5}xx to dt_fixup_mac_address_by_alias 2008-01-23 19:32:47 -06:00
cuboot-85xx-cpm2.c [POWERPC] Add a cuboot wrapper for 85xx with CPM2 2008-01-27 14:10:36 -06:00
cuboot-85xx.c powerpc/85xx: cuboot - Fix up ethernet3 MAC address on MPC85xx 2009-06-15 21:45:32 -05:00
cuboot-824x.c [POWERPC] Add initial iomega StorCenter board port. 2008-01-23 19:54:36 -06:00
cuboot-acadia.c powerpc/40x: Add cuboot wrapper for Acadia board 2008-10-17 10:31:19 -04:00
cuboot-amigaone.c powerpc/amigaone: Bootwrapper and serial console support for AmigaOne 2009-02-11 16:00:09 +11:00
cuboot-bamboo.c [POWERPC] 4xx: Use correct board info structure in cuboot wrappers 2008-02-28 08:16:27 -06:00
cuboot-c2k.c powerpc: Boot code for the C2K 2008-06-09 13:42:25 +10:00
cuboot-ebony.c [POWERPC] 4xx: Use correct board info structure in cuboot wrappers 2008-02-28 08:16:27 -06:00
cuboot-hotfoot.c powerpc/40x: Add support for the ESTeem 195E (PPC405EP) SBC 2009-08-31 09:15:51 -04:00
cuboot-katmai.c [POWERPC] 4xx: Use correct board info structure in cuboot wrappers 2008-02-28 08:16:27 -06:00
cuboot-kilauea.c powerpc/405ex: support cuImage via included dtb 2009-08-31 09:23:22 -04:00
cuboot-mpc7448hpc2.c [POWERPC] bootwrapper: Build multiple cuImages 2008-02-07 11:40:19 +11:00
cuboot-pq2.c [POWERPC] cuboot-pq2: PCI fixes 2008-04-17 01:01:40 -05:00
cuboot-rainier.c [POWERPC] Start removing linux,network-index in favour of aliases 2008-03-26 07:19:16 -05:00
cuboot-sam440ep.c powerpc/4xx: Sam440ep support 2008-06-11 08:32:49 -04:00
cuboot-sequoia.c [POWERPC] Start removing linux,network-index in favour of aliases 2008-03-26 07:19:16 -05:00
cuboot-taishan.c [POWERPC] Start removing linux,network-index in favour of aliases 2008-03-26 07:19:16 -05:00
cuboot-warp.c powerpc/44x: Warp patches for the new NDFC driver 2009-01-20 08:17:21 -05:00
cuboot-yosemite.c [POWERPC] 4xx: Add bootwrapper for AMCC Yosemite board 2008-03-26 07:19:17 -05:00
cuboot.c [POWERPC] bootwrapper: Move linker symbols into ops.h 2007-08-22 15:27:28 +10:00
cuboot.h [POWERPC] Consolidate cuboot initialization code 2007-06-14 22:30:16 +10:00
dcr.h IBM Akebono: Add the Akebono platform 2014-05-01 08:26:26 +10:00
devtree.c powerpc/bootwrapper: Use the child-bus #address-cells to decide which range entry to use 2008-12-21 14:21:17 +11:00
div64.S powerpc/boot: Add extended precision shifts to the boot wrapper. 2011-12-09 07:49:27 -05:00
dummy.c
ebony.c [POWERPC] Start removing linux,network-index in favour of aliases 2008-03-26 07:19:16 -05:00
elf.h [POWERPC] Move bootwrapper ELF parsing routines to a file 2007-04-13 03:55:16 +10:00
elf_util.c powerpc/boot: Add little endian support to elf utils 2014-04-28 17:36:04 +10:00
ep88xc.c [POWERPC] Use embedded libfdt in the bootwrapper 2007-12-11 13:46:14 +11:00
ep405.c [POWERPC] 4xx: EP405 boards support for arch/powerpc 2007-12-23 13:13:14 -06:00
ep8248e.c [POWERPC] 82xx: Embedded Planet EP8248E support 2008-01-23 19:34:43 -06:00
epapr-wrapper.c powerpc/zImage: make the "OF" wrapper support ePAPR boot 2013-09-25 14:18:44 +10:00
epapr.c powerpc/zImage: make the "OF" wrapper support ePAPR boot 2013-09-25 14:18:44 +10:00
fixed-head.S [POWERPC] 8xx/wrapper: Embedded Planet EP88xC support 2007-10-04 11:02:40 -05:00
fsl-soc.c [POWERPC] bootwrapper: Add fsl_get_immr() and 8xx/pq2 clock functions. 2007-10-03 20:36:35 -05:00
fsl-soc.h [POWERPC] bootwrapper: Add fsl_get_immr() and 8xx/pq2 clock functions. 2007-10-03 20:36:35 -05:00
gamecube-head.S powerpc: gamecube: bootwrapper bits 2009-12-12 22:24:26 -07:00
gamecube.c powerpc: gamecube: bootwrapper bits 2009-12-12 22:24:26 -07:00
gunzip_util.c powerpc/boot: Use correct zlib types for comparison 2014-08-13 15:13:45 +10:00
gunzip_util.h [POWERPC] Add documentation for the zImage's gunzip convenience functions 2007-03-16 16:38:19 +11:00
hack-coff.c
holly.c [POWERPC] Use embedded libfdt in the bootwrapper 2007-12-11 13:46:14 +11:00
install.sh kbuild: use INSTALLKERNEL to select customized installkernel script 2009-09-20 12:18:14 +02:00
io.h powerpc: Fix wrong defintion in boot/io.h 2014-08-05 15:41:03 +10:00
libfdt-wrapper.c powerpc/boot/fdt: Use unsigned long for pointer casts 2015-03-16 18:58:30 +11:00
libfdt_env.h libfdt: add fdt type definitions 2015-04-29 17:17:17 -05:00
main.c powerpc/boot: Parse chosen/cmdline-timeout parameter 2014-11-10 09:59:30 +11:00
mktree.c powerpc: use consistent types in mktree 2009-08-20 10:29:30 +10:00
mpc8xx.c [POWERPC] bootwrapper: Add fsl_get_immr() and 8xx/pq2 clock functions. 2007-10-03 20:36:35 -05:00
mpc8xx.h [POWERPC] bootwrapper: Add fsl_get_immr() and 8xx/pq2 clock functions. 2007-10-03 20:36:35 -05:00
mpc52xx-psc.c [POWERPC] Add bootwrapper function to get virtual reg from the device tree. 2008-04-17 01:01:37 -05:00
mpsc.c [POWERPC] prpmc2800: Clean up dts properties 2008-04-15 21:21:24 +10:00
mv64x60.c [POWERPC] mv64x60: Remove device tree absolute path references 2008-04-15 21:21:24 +10:00
mv64x60.h [POWERPC] Add bootwrapper support for Marvell/mv64x60 hostbridge 2007-05-12 11:32:49 +10:00
mv64x60_i2c.c [POWERPC] mv64x60: Remove device tree absolute path references 2008-04-15 21:21:24 +10:00
mvme5100.c powerpc/embedded6xx: Add support for Motorola/Emerson MVME5100 2014-01-09 17:52:20 -06:00
ns16550.c [POWERPC] Xilinx: boot support for Xilinx uart 16550. 2008-04-24 13:32:46 -05:00
of.c powerpc/boot: Rework of_claim() to make it 64bit friendly 2014-04-28 17:35:43 +10:00
of.h libfdt: add fdt type definitions 2015-04-29 17:17:17 -05:00
ofconsole.c powerpc/boot: Add byteswapping routines in oflib 2014-04-28 17:35:35 +10:00
oflib.c powerpc/boot: Define a routine to enter prom 2014-04-28 17:36:08 +10:00
opal-calls.S powerpc/boot: Add OPAL console to epapr wrappers 2016-07-05 23:58:54 +10:00
opal.c powerpc/boot: Add OPAL console to epapr wrappers 2016-07-05 23:58:54 +10:00
ops.h powerpc/boot: Add OPAL console to epapr wrappers 2016-07-05 23:58:54 +10:00
page.h powerpc: Fix _ALIGN_* errors due to type difference. 2015-10-09 08:02:25 +11:00
planetcore.c powerpc/boot: drop planetcore_set_serial_speed 2015-03-16 18:50:17 +11:00
planetcore.h powerpc/boot: drop planetcore_set_serial_speed 2015-03-16 18:50:17 +11:00
ppc_asm.h powerpc/boot: Add OPAL console to epapr wrappers 2016-07-05 23:58:54 +10:00
ppcboot-hotfoot.h powerpc/40x: Add support for the ESTeem 195E (PPC405EP) SBC 2009-08-31 09:15:51 -04:00
ppcboot.h [POWERPC] bootwrapper: Add TARGET_HAS_ETHn tests to ppcboot.h 2007-08-22 15:21:48 +10:00
pq2.c [POWERPC] bootwrapper: Add fsl_get_immr() and 8xx/pq2 clock functions. 2007-10-03 20:36:35 -05:00
pq2.h [POWERPC] bootwrapper: Add fsl_get_immr() and 8xx/pq2 clock functions. 2007-10-03 20:36:35 -05:00
ps3-head.S [POWERPC] PS3: Bootwrapper improvements 2008-04-01 20:43:07 +11:00
ps3-hvcall.S [POWERPC] PS3: Fix bootwrapper hang bug 2008-02-14 22:11:01 +11:00
ps3.c powerpc: Rename duplicate COMMAND_LINE_SIZE define 2014-04-28 16:31:54 +10:00
pseries-head.S powerpc/boot: Add support for 64bit little endian wrapper 2014-04-28 17:36:21 +10:00
redboot-8xx.c [POWERPC] 8xx: Analogue & Micro Adder875 board support. 2008-01-23 19:34:40 -06:00
redboot-83xx.c [POWERPC] 83xx: Add support for Analogue & Micro ASP837E board 2008-06-02 14:44:25 -05:00
redboot.h [POWERPC] 8xx: Analogue & Micro Adder875 board support. 2008-01-23 19:34:40 -06:00
reg.h [POWERPC] 4xx: Add mfspr/mtspr inline macros to 4xx bootwrapper 2007-12-23 13:14:22 -06:00
rs6000.h powerpc: Fix misspellings in comments. 2016-03-01 19:27:20 +11:00
serial.c powerpc/boot: Add OPAL console to epapr wrappers 2016-07-05 23:58:54 +10:00
simple_alloc.c [POWERPC] bootwrapper: Use `unsigned long' for malloc sizes 2007-04-24 22:06:54 +10:00
simpleboot.c powerpc/simpleboot: fix comment 2014-08-26 09:35:57 +02:00
stdio.c powerpc/boot: Fix do_div for 64bit wrapper 2014-04-28 17:35:22 +10:00
stdio.h [POWERPC] Add gcc format warnings to zImage printf() 2007-03-26 15:11:20 +10:00
stdlib.c [POWERPC] bootwrapper: Add strtoull() 2007-09-14 01:33:23 +10:00
stdlib.h [POWERPC] bootwrapper: Add strtoull() 2007-09-14 01:33:23 +10:00
string.S powerpc: Fix boot wrapper memcmp() called with zero length argument 2008-10-21 15:17:48 +11:00
string.h [POWERPC] Add memchr() to the bootwrapper 2007-10-12 14:13:44 +10:00
swab.h powerpc/boot: Define byteswapping routines for little endian 2014-04-28 17:35:56 +10:00
treeboot-akebono.c powerpc: Fix misspellings in comments. 2016-03-01 19:27:20 +11:00
treeboot-bamboo.c [POWERPC] cuimage for Bamboo board 2007-09-19 21:13:16 -05:00
treeboot-currituck.c powerpc: Fix misspellings in comments. 2016-03-01 19:27:20 +11:00
treeboot-ebony.c [POWERPC] bootwrapper: Move linker symbols into ops.h 2007-08-22 15:27:28 +10:00
treeboot-iss4xx.c powerpc: Fix misspellings in comments. 2016-03-01 19:27:20 +11:00
treeboot-walnut.c [POWERPC] Start removing linux,network-index in favour of aliases 2008-03-26 07:19:16 -05:00
types.h powerpc/boot: Add OPAL console to epapr wrappers 2016-07-05 23:58:54 +10:00
uartlite.c [POWERPC] Uartlite: bootwrapper bug fix, getc loops forever 2007-10-10 09:14:35 -06:00
ugecon.c powerpc/gamecube/wii: Fix off-by-one error in ugecon/usbgecko_udbg 2009-12-18 15:13:57 +11:00
ugecon.h powerpc: gamecube/wii: usbgecko bootwrapper console support 2009-12-12 22:24:26 -07:00
util.S powerpc: No need to use dot symbols when branching to a function 2014-04-23 10:05:16 +10:00
virtex.c powerpc/virtex: Fix booting of Xilinx FPGAs with 16550 for 405 and 440 2008-07-04 00:58:59 -06:00
virtex405-head.S [POWERPC] bootwrapper: Add a firmware-independent simpleboot target. 2008-04-02 20:36:11 -05:00
wii-head.S powerpc: wii: bootwrapper bits 2009-12-12 22:24:29 -07:00
wii.c wii: bootwrapper: add fixup to calc useable mem2 2009-12-12 22:24:31 -07:00
wrapper powerpc/boot: allow wrapper to work on non-english system 2015-11-26 22:11:16 +11:00
zImage.coff.lds.S powerpc/boot: Allow building the zImage wrapper as a relocatable ET_DYN 2011-04-20 16:59:20 +10:00
zImage.lds.S powerpc/boot: Add support for 64bit little endian wrapper 2014-04-28 17:36:21 +10:00
zImage.ps3.lds.S [POWERPC] PS3: Bootwrapper support. 2007-07-10 21:56:40 +10:00

README

To extract the kernel vmlinux, System.map, .config or initrd from the zImage binary:

objcopy -j .kernel:vmlinux -O binary zImage vmlinux.gz
objcopy -j .kernel:System.map -O binary zImage System.map.gz
objcopy -j .kernel:.config -O binary zImage config.gz
objcopy -j .kernel:initrd -O binary zImage.initrd initrd.gz


	Peter