# git rev-parse -q --verify 085f09d2a34c52c76170c949cdbc01d1693dbeea^{commit} 085f09d2a34c52c76170c949cdbc01d1693dbeea already have revision, skipping fetch # git checkout -q -f -B kisskb 085f09d2a34c52c76170c949cdbc01d1693dbeea # git clean -qxdf # git log -1 commit 085f09d2a34c52c76170c949cdbc01d1693dbeea Author: Oliver O'Halloran Date: Fri Jul 1 00:34:37 2016 +1000 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 Signed-off-by: Oliver O'Halloran Signed-off-by: Michael Ellerman # < /opt/cross/kisskb/gcc-5.3.0-nolibc/powerpc-linux/bin/powerpc-linux-gcc --version # < git log --format=%s --max-count=1 085f09d2a34c52c76170c949cdbc01d1693dbeea # < make -j 48 ARCH=powerpc O=/home/kisskb/slave/build/powerpc-next_powerpc-allnoconfig_powerpc-5.3 CROSS_COMPILE=/opt/cross/kisskb/gcc-5.3.0-nolibc/powerpc-linux/bin/powerpc-linux- allnoconfig # make -j 48 ARCH=powerpc O=/home/kisskb/slave/build/powerpc-next_powerpc-allnoconfig_powerpc-5.3 CROSS_COMPILE=/opt/cross/kisskb/gcc-5.3.0-nolibc/powerpc-linux/bin/powerpc-linux- make[1]: Entering directory '/home/kisskb/slave/build/powerpc-next_powerpc-allnoconfig_powerpc-5.3' GEN ./Makefile scripts/kconfig/conf --silentoldconfig Kconfig CHK include/config/kernel.release GEN ./Makefile UPD include/config/kernel.release WRAP arch/powerpc/include/generated/asm/clkdev.h WRAP arch/powerpc/include/generated/asm/div64.h WRAP arch/powerpc/include/generated/asm/irq_regs.h WRAP arch/powerpc/include/generated/asm/irq_work.h WRAP arch/powerpc/include/generated/asm/local64.h WRAP arch/powerpc/include/generated/asm/mcs_spinlock.h WRAP arch/powerpc/include/generated/asm/preempt.h WRAP arch/powerpc/include/generated/asm/rwsem.h WRAP arch/powerpc/include/generated/asm/vtime.h CHK include/generated/uapi/linux/version.h UPD include/generated/uapi/linux/version.h CHK include/generated/utsrelease.h UPD include/generated/utsrelease.h Using /home/kisskb/slave/src as source for kernel HOSTCC scripts/dtc/dtc.o HOSTCC scripts/dtc/flattree.o CC scripts/mod/empty.o HOSTCC scripts/dtc/fstree.o HOSTCC scripts/mod/mk_elfconfig HOSTCC scripts/dtc/data.o HOSTCC scripts/dtc/livetree.o CC scripts/mod/devicetable-offsets.s HOSTCC scripts/dtc/treesource.o HOSTCC scripts/dtc/srcpos.o HOSTCC scripts/dtc/checks.o HOSTCC scripts/dtc/util.o SHIPPED scripts/dtc/dtc-lexer.lex.c SHIPPED scripts/dtc/dtc-parser.tab.h SHIPPED scripts/dtc/dtc-parser.tab.c HOSTCC scripts/dtc/dtc-parser.tab.o HOSTCC scripts/dtc/dtc-lexer.lex.o GEN scripts/mod/devicetable-offsets.h MKELF scripts/mod/elfconfig.h HOSTCC scripts/mod/modpost.o HOSTCC scripts/mod/file2alias.o HOSTCC scripts/mod/sumversion.o HOSTLD scripts/dtc/dtc HOSTLD scripts/mod/modpost CHK include/generated/timeconst.h CC kernel/bounds.s UPD include/generated/timeconst.h CHK include/generated/bounds.h UPD include/generated/bounds.h CC arch/powerpc/kernel/asm-offsets.s CHK include/generated/asm-offsets.h UPD include/generated/asm-offsets.h CALL /home/kisskb/slave/src/scripts/checksyscalls.sh CC init/main.o CHK include/generated/compile.h LD usr/built-in.o CC init/do_mounts.o CC init/noinitramfs.o CC init/init_task.o UPD include/generated/compile.h CC arch/powerpc/mm/fault.o CC init/version.o LD arch/powerpc/sysdev/built-in.o CC arch/powerpc/mm/mem.o AS arch/powerpc/lib/string.o CC arch/powerpc/lib/alloc.o AS arch/powerpc/lib/crtsavres.o CC arch/powerpc/mm/pgtable.o LD arch/powerpc/platforms/built-in.o CC arch/powerpc/mm/init_32.o CC arch/powerpc/mm/pgtable_32.o CC arch/powerpc/lib/code-patching.o CC arch/powerpc/mm/ppc_mmu_32.o AS arch/powerpc/mm/hash_low_32.o AS arch/powerpc/lib/div64.o CC arch/powerpc/mm/mmu_context_hash32.o AS arch/powerpc/lib/checksum_32.o CC arch/powerpc/mm/tlb_hash32.o AS arch/powerpc/lib/copy_32.o CC arch/powerpc/lib/checksum_wrappers.o CC arch/powerpc/lib/ppc_ksyms.o CC arch/powerpc/mm/mmap.o CC arch/powerpc/lib/feature-fixups.o CC arch/powerpc/mm/hugetlbpage.o CC arch/powerpc/kernel/cputable.o CC arch/powerpc/kernel/syscalls.o CC arch/powerpc/kernel/irq.o LD arch/powerpc/math-emu/built-in.o CC arch/powerpc/kernel/pmc.o CC arch/powerpc/kernel/signal_32.o CC arch/powerpc/kernel/align.o CC arch/powerpc/kernel/ptrace.o CC arch/powerpc/kernel/prom.o CC arch/powerpc/kernel/vdso.o CC arch/powerpc/kernel/cacheinfo.o CC arch/powerpc/kernel/time.o CC arch/powerpc/kernel/process.o CPP arch/powerpc/kernel/systbl_chk.i CC arch/powerpc/kernel/sysfs.o CC arch/powerpc/kernel/idle.o CC arch/powerpc/kernel/udbg.o CC arch/powerpc/kernel/signal.o CC arch/powerpc/kernel/setup-common.o CC arch/powerpc/kernel/traps.o AS arch/powerpc/kernel/misc.o CC arch/powerpc/kernel/io.o CC arch/powerpc/kernel/dma.o AS arch/powerpc/kernel/misc_32.o LD arch/powerpc/crypto/built-in.o CC arch/powerpc/kernel/of_platform.o CC arch/powerpc/kernel/prom_parse.o AS arch/powerpc/kernel/idle_6xx.o AS arch/powerpc/kernel/l2cr_6xx.o AS arch/powerpc/kernel/cpu_setup_6xx.o AS arch/powerpc/kernel/entry_32.o LD arch/powerpc/net/built-in.o CC arch/powerpc/kernel/setup_32.o CC arch/powerpc/kernel/pci_32.o CC arch/powerpc/kernel/pci-common.o LDS arch/powerpc/kernel/vdso32/vdso32.lds AS arch/powerpc/kernel/head_32.o CC arch/powerpc/kernel/iomap.o CC arch/powerpc/kernel/pci_of_scan.o AS arch/powerpc/kernel/fpu.o LDS arch/powerpc/kernel/vmlinux.lds VDSO32A arch/powerpc/kernel/vdso32/sigtramp.o CALL /home/kisskb/slave/src/arch/powerpc/kernel/systbl_chk.sh VDSO32A arch/powerpc/kernel/vdso32/gettimeofday.o VDSO32A arch/powerpc/kernel/vdso32/datapage.o VDSO32A arch/powerpc/kernel/vdso32/cacheflush.o AS arch/powerpc/kernel/systbl.o VDSO32A arch/powerpc/kernel/vdso32/note.o LD certs/built-in.o LD arch/powerpc/lib/built-in.o VDSO32L arch/powerpc/kernel/vdso32/vdso32.so.dbg CC kernel/resource.o CC kernel/panic.o CC kernel/exit.o CC kernel/cpu.o CC kernel/sysctl.o CC kernel/exec_domain.o CC kernel/softirq.o CC kernel/fork.o CC kernel/sysctl_binary.o CC kernel/user.o CC kernel/ptrace.o CC kernel/capability.o OBJCOPY arch/powerpc/kernel/vdso32/vdso32.so CC kernel/signal.o AS arch/powerpc/kernel/vdso32/vdso32_wrapper.o CC kernel/sys.o CC kernel/workqueue.o CC kernel/kmod.o CC kernel/pid.o CC kernel/task_work.o LD ipc/built-in.o CC kernel/extable.o CC kernel/params.o LD arch/powerpc/kernel/vdso32/built-in.o CC kernel/kthread.o CC mm/filemap.o CC mm/mempool.o LD arch/powerpc/mm/built-in.o CC kernel/sys_ni.o CC security/commoncap.o LD crypto/built-in.o CC security/min_addr.o CC kernel/nsproxy.o CC kernel/notifier.o CC mm/oom_kill.o CC mm/maccess.o CC kernel/ksysfs.o LD block/built-in.o CC mm/page_alloc.o CC kernel/reboot.o CC kernel/cred.o CC mm/page-writeback.o CC kernel/async.o CC kernel/range.o CC kernel/smpboot.o CC mm/readahead.o CC mm/swap.o LD kernel/livepatch/built-in.o LD sound/built-in.o CC fs/open.o CC kernel/power/qos.o CC fs/read_write.o CC kernel/printk/printk.o CC kernel/locking/mutex.o CC kernel/irq/irqdesc.o LD init/mounts.o CC kernel/rcu/update.o LD init/built-in.o LD firmware/built-in.o CC kernel/dma.o LD net/built-in.o CC kernel/sched/core.o CC kernel/up.o CC kernel/memremap.o CC kernel/elfcore.o CC kernel/locking/semaphore.o CC kernel/locking/rwsem.o CC kernel/time/timer.o CC kernel/time/time.o CC kernel/locking/percpu-rwsem.o CC kernel/locking/rwsem-xadd.o CC kernel/irq/handle.o CC kernel/rcu/sync.o CC kernel/irq/manage.o CC kernel/rcu/tiny.o LD arch/powerpc/kernel/built-in.o CC mm/truncate.o CC mm/vmscan.o CC kernel/irq/spurious.o CC mm/shmem.o CC kernel/irq/resend.o CC kernel/time/hrtimer.o LD virt/lib/built-in.o CC mm/util.o LD drivers/amba/built-in.o LD drivers/auxdisplay/built-in.o LD virt/built-in.o CC kernel/irq/chip.o CC fs/file_table.o CC fs/super.o LD drivers/block/built-in.o LD drivers/bus/built-in.o LD drivers/cdrom/built-in.o CC kernel/sched/loadavg.o CC kernel/sched/clock.o LD drivers/firewire/built-in.o LD drivers/clocksource/built-in.o LD security/built-in.o CC drivers/char/mem.o CC kernel/sched/cputime.o LD drivers/gpio/built-in.o CC mm/mmzone.o CC kernel/sched/idle_task.o CC mm/vmstat.o CC kernel/sched/fair.o LD kernel/printk/built-in.o LD drivers/clk/bcm/built-in.o LD drivers/hwtracing/intel_th/built-in.o CC mm/backing-dev.o CC kernel/irq/dummychip.o CC kernel/irq/devres.o LD drivers/clk/mvebu/built-in.o CC drivers/base/component.o CC kernel/irq/irqdomain.o LD drivers/hsi/clients/built-in.o LD drivers/firmware/broadcom/built-in.o CC lib/lockref.o LD drivers/firmware/built-in.o LD drivers/clk/ti/built-in.o LD drivers/hsi/controllers/built-in.o LD drivers/i2c/algos/built-in.o LD drivers/hsi/built-in.o LD kernel/power/built-in.o LD drivers/idle/built-in.o LD drivers/clk/built-in.o LD drivers/lguest/built-in.o LD drivers/leds/built-in.o LD kernel/locking/built-in.o LD drivers/gpu/drm/bridge/built-in.o CC drivers/irqchip/irqchip.o LD drivers/gpu/drm/hisilicon/built-in.o LD drivers/i2c/busses/built-in.o LD drivers/mfd/built-in.o CC kernel/sched/rt.o LD drivers/macintosh/built-in.o CC kernel/time/itimer.o CC mm/mm_init.o LD kernel/rcu/built-in.o LD drivers/gpu/drm/i2c/built-in.o LD drivers/i2c/muxes/built-in.o CC mm/mmu_context.o CC mm/percpu.o CC lib/bcd.o CC kernel/sched/deadline.o LD drivers/net/built-in.o LD drivers/mmc/built-in.o CC mm/slab_common.o LD drivers/gpu/drm/omapdrm/displays/built-in.o LD drivers/gpu/drm/panel/built-in.o LD drivers/gpu/drm/tilcdc/built-in.o LD drivers/misc/cb710/built-in.o LD drivers/i2c/built-in.o CC mm/compaction.o CC kernel/sched/stop_task.o CC fs/char_dev.o LD drivers/nfc/built-in.o CC kernel/sched/wait.o CC fs/stat.o CC kernel/sched/swait.o CC lib/div64.o LD drivers/gpu/drm/omapdrm/dss/built-in.o LD drivers/misc/eeprom/built-in.o LD drivers/nvme/host/built-in.o LD drivers/gpu/drm/omapdrm/built-in.o LD drivers/platform/built-in.o CC fs/exec.o CC fs/pipe.o LD drivers/nvme/built-in.o LD drivers/misc/lis3lv02d/built-in.o CC fs/namei.o CC mm/vmacache.o CC kernel/time/posix-timers.o CC kernel/time/posix-cpu-timers.o LD drivers/gpu/drm/built-in.o LD drivers/power/built-in.o LD drivers/pwm/built-in.o CC mm/interval_tree.o CC drivers/of/base.o LD drivers/misc/mic/bus/built-in.o CC kernel/sched/completion.o LD drivers/misc/mic/built-in.o CC mm/list_lru.o CC kernel/time/timekeeping.o LD drivers/irqchip/built-in.o CC mm/workingset.o LD drivers/soc/bcm/built-in.o CC drivers/char/random.o LD drivers/gpu/vga/built-in.o LD drivers/usb/host/built-in.o LD drivers/soc/fsl/built-in.o LD drivers/soc/built-in.o LD drivers/gpu/built-in.o LD drivers/misc/ti-st/built-in.o CC drivers/pci/access.o LD drivers/usb/built-in.o LD drivers/media/common/b2c2/built-in.o CC mm/debug.o LD drivers/tty/ipwireless/built-in.o CC kernel/time/ntp.o CC kernel/time/clocksource.o CC mm/gup.o LD drivers/misc/built-in.o CC fs/fcntl.o LD kernel/irq/built-in.o CC fs/ioctl.o LD drivers/video/backlight/built-in.o CC fs/readdir.o LD drivers/media/common/saa7146/built-in.o LD drivers/tty/serial/built-in.o LD drivers/tty/vt/built-in.o CC mm/highmem.o CC fs/select.o CC mm/memory.o CC drivers/base/core.o LD drivers/tty/built-in.o LD drivers/media/common/siano/built-in.o CC kernel/sched/idle.o CC kernel/time/jiffies.o CC mm/mincore.o CC fs/inode.o CC fs/dcache.o CC fs/attr.o LD drivers/video/fbdev/omap2/omapfb/displays/built-in.o CC mm/mlock.o CC fs/bad_inode.o LD drivers/video/fbdev/core/built-in.o CC mm/mmap.o LD drivers/video/fbdev/omap2/omapfb/dss/built-in.o CC mm/mprotect.o CC drivers/base/bus.o CC lib/sort.o LD drivers/media/common/v4l2-tpg/built-in.o CC mm/mremap.o CC mm/msync.o LD drivers/media/common/built-in.o LD drivers/video/fbdev/omap2/omapfb/built-in.o CC kernel/time/timer_list.o LD drivers/video/fbdev/omap2/built-in.o LD drivers/media/firewire/built-in.o LD drivers/video/fbdev/built-in.o CC lib/parser.o CC kernel/time/timeconv.o LD drivers/video/built-in.o LD drivers/media/i2c/soc_camera/built-in.o LD drivers/media/mmc/siano/built-in.o LD drivers/media/i2c/built-in.o LD drivers/media/mmc/built-in.o CC mm/rmap.o CC kernel/time/timecounter.o CC mm/vmalloc.o CC mm/pagewalk.o CC mm/pgtable-generic.o CC fs/file.o CC mm/init-mm.o LD drivers/media/platform/omap/built-in.o CC fs/filesystems.o LD drivers/media/platform/built-in.o CC mm/nobootmem.o CC kernel/time/posix-clock.o CC mm/memblock.o CC kernel/time/alarmtimer.o CC kernel/time/clockevents.o CC fs/namespace.o CC kernel/time/tick-common.o CC fs/seq_file.o CC mm/dmapool.o LD drivers/media/rc/keymaps/built-in.o CC lib/halfmd4.o CC drivers/char/misc.o CC mm/slub.o CC fs/xattr.o LD drivers/media/rc/built-in.o CC fs/libfs.o LD kernel/sched/built-in.o CC fs/fs-writeback.o CC fs/pnode.o LD drivers/media/pci/b2c2/built-in.o LD drivers/media/tuners/built-in.o CC drivers/of/device.o CC lib/debug_locks.o CC lib/random32.o LD drivers/media/pci/ddbridge/built-in.o CC lib/bust_spinlocks.o LD drivers/media/pci/dm1105/built-in.o CC fs/splice.o CC lib/kasprintf.o LD drivers/media/pci/mantis/built-in.o LD drivers/media/pci/netup_unidvb/built-in.o CC fs/sync.o LD drivers/media/pci/pluto2/built-in.o LD drivers/media/pci/ngene/built-in.o LD drivers/media/pci/pt1/built-in.o LD drivers/char/agp/built-in.o CC drivers/pci/bus.o LD drivers/media/pci/pt3/built-in.o CC drivers/pci/probe.o LD drivers/media/pci/saa7146/built-in.o LD drivers/media/usb/b2c2/built-in.o CC lib/bitmap.o LD drivers/media/pci/smipcie/built-in.o LD drivers/media/pci/ttpci/built-in.o CC drivers/base/dd.o LD drivers/char/built-in.o CC lib/scatterlist.o CC drivers/of/platform.o CC lib/gcd.o CC lib/lcm.o CC drivers/of/fdt_address.o CC drivers/of/fdt.o LD drivers/media/usb/dvb-usb/built-in.o LD drivers/media/pci/built-in.o CC fs/utimes.o LD drivers/media/usb/dvb-usb-v2/built-in.o CC drivers/base/syscore.o CC drivers/of/address.o CC lib/list_sort.o CC lib/uuid.o LD drivers/media/usb/s2255/built-in.o CC lib/flex_array.o CC lib/iov_iter.o LD drivers/media/usb/siano/built-in.o CC drivers/base/driver.o CC fs/stack.o CC lib/clz_ctz.o CC lib/bsearch.o CC drivers/of/irq.o LD drivers/media/usb/stkwebcam/built-in.o CC lib/find_bit.o CC lib/llist.o CC drivers/of/of_pci.o CC drivers/of/of_pci_irq.o CC fs/fs_struct.o CC fs/statfs.o LD drivers/media/usb/ttusb-budget/built-in.o CC drivers/of/of_reserved_mem.o CC lib/memweight.o CC lib/kfifo.o CC lib/percpu-refcount.o CC lib/percpu_ida.o CC lib/rhashtable.o LD drivers/media/usb/ttusb-dec/built-in.o CC fs/fs_pin.o CC fs/nsfs.o CC lib/reciprocal_div.o CC fs/no-block.o CC lib/once.o LD drivers/media/usb/zr364xx/built-in.o CC drivers/base/class.o CC lib/string_helpers.o LD fs/exofs/built-in.o LD fs/devpts/built-in.o LD drivers/media/usb/built-in.o LD fs/notify/dnotify/built-in.o LD kernel/time/built-in.o CC lib/hexdump.o CC lib/kstrtox.o LD fs/quota/built-in.o LD drivers/media/built-in.o CC drivers/base/platform.o LD kernel/built-in.o CC lib/pci_iomap.o LD fs/notify/inotify/built-in.o LD fs/notify/fanotify/built-in.o CC fs/binfmt_elf.o CC drivers/base/cpu.o CC fs/ramfs/inode.o CC fs/ramfs/file-mmu.o CC lib/devres.o CC drivers/pci/host-bridge.o CC drivers/pci/remove.o LD fs/notify/built-in.o CC lib/iomap_copy.o CC drivers/base/firmware.o CC drivers/base/init.o CC drivers/pci/pci.o CC drivers/pci/pci-driver.o CC lib/hweight.o CC lib/bitrev.o HOSTCC lib/gen_crc32table CC drivers/base/map.o CC lib/atomic64.o CC lib/syscall.o CC lib/strncpy_from_user.o CC drivers/base/devres.o CC lib/strnlen_user.o CC drivers/pci/search.o CC lib/argv_split.o CC drivers/pci/pci-sysfs.o CC lib/cmdline.o CC drivers/pci/rom.o CC lib/ctype.o CC drivers/pci/setup-res.o CC lib/dec_and_lock.o CC lib/decompress.o CC drivers/pci/irq.o CC drivers/pci/vpd.o CC lib/dma-noop.o CC lib/dump_stack.o CC drivers/base/attribute_container.o CC drivers/base/transport_class.o CC lib/earlycpio.o CC drivers/pci/setup-bus.o CC lib/extable.o CC lib/fdt.o CC lib/fdt_empty_tree.o CC lib/fdt_rw.o CC lib/fdt_ro.o CC drivers/base/container.o CC drivers/base/topology.o CC lib/fdt_strerror.o CC drivers/pci/vc.o CC lib/fdt_sw.o CC lib/fdt_wip.o LD drivers/of/built-in.o CC lib/flex_proportions.o CC drivers/pci/syscall.o CC lib/idr.o CC drivers/base/property.o CC lib/int_sqrt.o CC drivers/base/cacheinfo.o CC lib/irq_regs.o CC lib/ioremap.o CC drivers/pci/of.o CC lib/is_single_threaded.o CC lib/klist.o CC lib/md5.o CC lib/kobject_uevent.o CC lib/kobject.o LD drivers/base/power/built-in.o LD fs/ramfs/ramfs.o CC lib/nodemask.o CC lib/nmi_backtrace.o CC drivers/base/dma-mapping.o LD mm/built-in.o CC lib/plist.o LD fs/ramfs/built-in.o LD drivers/pci/host/built-in.o CC lib/radix-tree.o CC lib/ratelimit.o CC lib/rbtree.o CC lib/seq_buf.o CC lib/sha1.o CC lib/show_mem.o CC lib/string.o CC lib/timerqueue.o GEN lib/crc32table.h CC lib/vsprintf.o CC lib/crc32.o LD fs/built-in.o LD lib/built-in.o LD drivers/base/built-in.o LD drivers/pci/built-in.o LD drivers/built-in.o AR lib/lib.a LINK vmlinux LD vmlinux.o MODPOST vmlinux.o GEN .version CHK include/generated/compile.h UPD include/generated/compile.h CC init/version.o LD init/built-in.o LD vmlinux SYSMAP System.map /opt/cross/kisskb/gcc-5.3.0-nolibc/powerpc-linux/bin/powerpc-linux-strip -s -R .comment vmlinux -o arch/powerpc/boot/vmlinux.strip make[1]: Leaving directory '/home/kisskb/slave/build/powerpc-next_powerpc-allnoconfig_powerpc-5.3' Completed OK # rm -rf /home/kisskb/slave/build/powerpc-next_powerpc-allnoconfig_powerpc-5.3 # Build took: 0:00:13.032646