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