summaryrefslogtreecommitdiffstats
path: root/pc-bios
Commit message (Collapse)AuthorAgeFilesLines
...
* Update OpenBIOS images to 7e5b89e4 built from submodule.Mark Cave-Ayland2019-10-283-0/+0
| | | | Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
* Merge commit 'df84f17' into HEADPaolo Bonzini2019-10-261-0/+0
|\ | | | | | | | | | | This merge fixes a semantic conflict with the trivial tree. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
| * roms: add microvm-bios (qboot) as binary and git submoduleSergio Lopez2019-10-221-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | qboot is a minimalist x86 firmware for booting Linux kernels. It does the mininum amount of work required for the task, and it's able to boot both PVH images and bzImages without relying on option roms. This characteristics make it an ideal companion for the microvm machine type. Signed-off-by: Sergio Lopez <slp@redhat.com> Reviewed-by: Stefano Garzarella <sgarzare@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
* | pseries: Update SLOF firmware imageAlexey Kardashevskiy2019-10-242-1/+1
|/ | | | | | | | | This aims v4.2 and fixes: 1. full FDT rendering; 2. gcc9 -Waddress-of-packed-member. Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
* Update OpenBIOS images to f28e16f9 built from submodule.Mark Cave-Ayland2019-10-123-0/+0
| | | | Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
* pseries: Update SLOF firmware imageAlexey Kardashevskiy2019-10-042-1/+1
| | | | | | | | This fixes USB host bus adapter name in the device tree to match QEMU's one. Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
* spapr: Stop providing RTAS blobAlexey Kardashevskiy2019-10-043-64/+0Star
| | | | | | | | | | SLOF implements one itself so let's remove it from QEMU. It is one less image and simpler setup as the RTAS blob never stays in its initial place anyway as the guest OS always decides where to put it. Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> Reviewed-by: Greg Kurz <groug@kaod.org> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
* Merge tag 's390-ccw-bios-2019-09-18' of https://gitlab.com/huth/qemu into ↵Christian Borntraeger2019-09-233-1/+2
|\ | | | | | | | | | | s390-next Small fixes for the s390-ccw firmware
| * pc-bios/s390-ccw: Rebuild the s390-netboot.img firmware imageThomas Huth2019-09-181-0/+0
| | | | | | | | | | | | | | The new image now contains the "pc-bios/s390-ccw/net: fix a possible memory leak in get_uuid()" patch. Signed-off-by: Thomas Huth <thuth@redhat.com>
| * pc-bios/s390-ccw/net: fix a possible memory leak in get_uuid()Yifan Luo2019-09-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | There is a possible memory leak in get_uuid(). Should free allocated mem before return NULL. Signed-off-by: Yifan Luo <luoyifan@cmss.chinamobile.com> Message-Id: <02cf01d55267$86cf2850$946d78f0$@cmss.chinamobile.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
| * pc-bios/s390-ccw: Do not pre-initialize empty arrayThomas Huth2019-09-181-1/+1
| | | | | | | | | | | | | | | | | | Since commit 339686a358b11a231aa5b6d1424e7a1460d7f277 ("pc-bios/s390-ccw: zero out bss section"), we are clearing now the BSS in start.S, so there is no need to pre-initialize the loadparm_str array with zeroes anymore. Reviewed-by: Cornelia Huck <cohuck@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
* | riscv: roms: Update default bios for sifive_u machineBin Meng2019-09-171-0/+0
| | | | | | | | | | | | | | | | | | | | With the support of heterogeneous harts and PRCI model, it's now possible to use the OpenSBI image (PLATFORM=sifive/fu540) built for the real hardware. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
* | riscv: roms: Remove executable attribute of opensbi imagesBin Meng2019-09-173-0/+0
|/ | | | | | | | | Like other binary files, the executable attribute of opensbi images should not be set. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
* pseries: Update SLOF firmware imageAlexey Kardashevskiy2019-08-292-1/+1
| | | | | | | | | | | | | This allocates space for FWNMI log in RTAS and fixes phandles at the ibm,client-architecture-support stage. The full list is: * libnet: Fix the check of the argument lengths of the "ping" command * fdt: Update phandles after H_CAS * rtas: Reserve space for FWNMI log Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
* ppc/pnv: update skiboot to v6.4Joel Stanley2019-08-291-0/+0
| | | | | | | | | | | | | | | | | | | | | Currently we fail to boot a qemu powernv machine with a Power9 processor: PLAT: Detected generic platform PLAT: Detected BMC platform generic CPU: All 1 processors called in... CHIPTOD: Unknown TOD type ! CHIPTOD: Failed ChipTOD detection ! Aborting! With v6.4 we can boot both a Power8 and Power9 powernv machine. Built from submodule with powerpc64le-linux-gnu-gcc (Debian 8.3.0-2). Signed-off-by: Joel Stanley <joel@jms.id.au> Message-Id: <20190718054218.9581-1-joel@jms.id.au> Reviewed-by: Cédric Le Goater <clg@kaod.org> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
* pseries: Update SLOF firmware imageAlexey Kardashevskiy2019-08-212-1/+1
| | | | | | | | | The only change that SLOF does not rely on QEMU providing an RTAS blob and provides one itself: https://git.qemu.org/?p=SLOF.git;a=commitdiff;h=5e4ed1fd0f39e Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
* roms: Add OpenSBI version 0.4Alistair Francis2019-07-184-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add OpenSBI version 0.4 as a git submodule and as a prebult binary. OpenSBI (https://github.com/riscv/opensbi) aims to provide an open-source reference implementation of the RISC-V Supervisor Binary Interface (SBI) specifications for platform-specific firmwares executing in M-mode. For all supported platforms, OpenSBI provides several runtime firmware examples. These example firmwares can be used to replace the legacy riscv-pk bootloader and enable the use of well-known bootloaders such as U-Boot. OpenSBI is distributed under the terms of the BSD 2-clause license ("Simplified BSD License" or "FreeBSD License", SPDX: BSD-2-Clause). OpenSBI source code also contains code reused from other projects desribed here: https://github.com/riscv/opensbi/blob/master/ThirdPartyNotices.md. In this case all of the code we are using from OpenSBI is BSD 2-clause as we aren't using the Kendryte code (Apache-2.0) with QEMU and libfdt is dual licensed as BSD 2-clause (and GPL-2.0+). OpenSBI isn't being linked with QEMU either it is just being included with QEMU. Signed-off-by: Alistair Francis <alistair.francis@wdc.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Guenter Roeck <linux@roeck-us.net> Tested-by: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
* pseries: Update SLOF firmware imageAlexey Kardashevskiy2019-07-122-1/+1
| | | | | | | This only has a fix for ipv4-after-ipv6 booting problem. Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
* Merge remote-tracking branch 'remotes/dgibson/tags/ppc-for-4.1-20190702' ↵Peter Maydell2019-07-021-1/+4
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into staging ppc patch queue 2019-07-2 Here's my next pull request for qemu-4.1. I'm not sure if this will squeak in just before the soft freeze, or just after. I don't think it really matters - most of this is bugfixes anyway. There's some cleanups which aren't stictly bugfixes, but which I think are safe enough improvements to go in the soft freeze. There's no true feature work. Unfortunately, I wasn't able to complete a few of my standard battery of pre-pull tests, due to some failures that appear to also be in master. I'm hoping that hasn't missed anything important in here. Highlights are: * A number of fixe and cleanups for the XIVE implementation * Cleanups to the XICS interrupt controller to fit better with the new XIVE code * Numerous fixes and improvements to TCG handling of ppc vector instructions * Remove a number of unnnecessary #ifdef CONFIG_KVM guards * Fix some errors in the PCI hotplug paths * Assorted other fixes # gpg: Signature made Tue 02 Jul 2019 07:07:15 BST # gpg: using RSA key 75F46586AE61A66CC44E87DC6C38CACA20D9B392 # gpg: Good signature from "David Gibson <david@gibson.dropbear.id.au>" [full] # gpg: aka "David Gibson (Red Hat) <dgibson@redhat.com>" [full] # gpg: aka "David Gibson (ozlabs.org) <dgibson@ozlabs.org>" [full] # gpg: aka "David Gibson (kernel.org) <dwg@kernel.org>" [unknown] # Primary key fingerprint: 75F4 6586 AE61 A66C C44E 87DC 6C38 CACA 20D9 B392 * remotes/dgibson/tags/ppc-for-4.1-20190702: (49 commits) spapr/xive: Add proper rollback to kvmppc_xive_connect() ppc/xive: Fix TM_PULL_POOL_CTX special operation ppc/pnv: Rework cache watch model of PnvXIVE ppc/xive: Make the PIPR register readonly ppc/xive: Force the Physical CAM line value to group mode spapr/xive: simplify spapr_irq_init_device() to remove the emulated init spapr/xive: rework the mapping the KVM memory regions spapr_pci: Unregister listeners before destroying the IOMMU address space target/ppc: improve VSX_FMADD with new GEN_VSX_HELPER_VSX_MADD macro target/ppc: decode target register in VSX_EXTRACT_INSERT at translation time target/ppc: decode target register in VSX_VECTOR_LOAD_STORE_LENGTH at translation time target/ppc: introduce GEN_VSX_HELPER_R2_AB macro to fpu_helper.c target/ppc: introduce GEN_VSX_HELPER_R2 macro to fpu_helper.c target/ppc: introduce GEN_VSX_HELPER_R3 macro to fpu_helper.c target/ppc: introduce GEN_VSX_HELPER_X1 macro to fpu_helper.c target/ppc: introduce GEN_VSX_HELPER_X2_AB macro to fpu_helper.c target/ppc: introduce GEN_VSX_HELPER_X2 macro to fpu_helper.c target/ppc: introduce separate generator and helper for xscvqpdp target/ppc: introduce GEN_VSX_HELPER_X3 macro to fpu_helper.c target/ppc: introduce separate VSX_CMP macro for xvcmp* instructions ... Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * spapr/rtas: Force big endian compile for rtasAlexey Kardashevskiy2019-07-021-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | At the moment the rtas's Makefile uses generic QEMU rules which means that when QEMU is compiled on a little endian system, the spapr-rtas.bin is compiled as little endian too which is incorrect as it is always executed in big endian mode. This enforces -mbig by defining %.o:%.S rule as spapr-rtas.bin is a standalone guest binary which should not depend on QEMU flags anyway. Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> Message-Id: <20190612020723.96802-1-aik@ozlabs.ru> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
* | Merge remote-tracking branch 'remotes/mcayland/tags/qemu-openbios-20190701' ↵Peter Maydell2019-07-023-0/+0
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into staging qemu-openbios queue # gpg: Signature made Mon 01 Jul 2019 18:47:32 BST # gpg: using RSA key CC621AB98E82200D915CC9C45BC2C56FAE0F321F # gpg: issuer "mark.cave-ayland@ilande.co.uk" # gpg: Good signature from "Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>" [full] # Primary key fingerprint: CC62 1AB9 8E82 200D 915C C9C4 5BC2 C56F AE0F 321F * remotes/mcayland/tags/qemu-openbios-20190701: Update OpenBIOS images to c79e0ec built from submodule. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * | Update OpenBIOS images to c79e0ec built from submodule.Mark Cave-Ayland2019-07-013-0/+0
| |/ | | | | | | Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
* / seabios: add ati vgabios binaryGerd Hoffmann2019-06-281-0/+0
|/ | | | | | | | | | | | | | Built from master (commit 6e56ed129c9782ba050a5fbfbf4ac12335b230f7), which has ati vgabios support merged (checkout master branch in roms/seabios submodule, then run "make -C roms seavgabios-ati"). Temporary exception until the next seabios major version is released (probably 1.13, fall 2019). Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Tested-by: BALATON Zoltan <balaton@eik.bme.hu> Message-id: 20190620151104.2678-3-kraxel@redhat.com Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
* pc-bios: update the README file with edk2-stable201905 informationLaszlo Ersek2019-06-141-6/+8
| | | | | | | | | | | | Refresh the "pc-bios/README" file with edk2, OpenSSL, and Berkeley SoftFloat release info, matching the edk2-stable201905 firmware images added in the previous patch. Cc: Philippe Mathieu-Daudé <philmd@redhat.com> Ref: https://bugs.launchpad.net/qemu/+bug/1831477 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
* pc-bios: refresh edk2 build artifacts for edk2-stable201905Laszlo Ersek2019-06-147-59/+693
| | | | | | | | | | | Rebuild the pc-bios/edk2-*.fd.bz2 binaries, and regenerate pc-bios/edk2-licenses.txt, based on the edk2-stable201905 release. Cc: Philippe Mathieu-Daudé <philmd@redhat.com> Ref: https://bugs.launchpad.net/qemu/+bug/1831477 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
* pc-bios/s390: Update firmware image with "Skip bootmap signature entries" fixThomas Huth2019-05-081-0/+0
| | | | | | | Firmware now skips the unsupported signature entries instead of aborting the boot process. Signed-off-by: Thomas Huth <thuth@redhat.com>
* s390-bios: Skip bootmap signature entriesJason J. Herne2019-05-082-6/+23
| | | | | | | | | | | | Newer versions of zipl have the ability to write signature entries to the boot script for secure boot. We don't yet support secure boot, but we need to skip over signature entries while reading the boot script in order to maintain our ability to boot guest operating systems that have a secure bootloader. Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com> Reviewed-by: Farhan Ali <alifm@linux.ibm.com> Message-Id: <1556543381-12671-1-git-send-email-jjherne@linux.ibm.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
* pc-bios/s390-ccw: Clean up harmless misuse of isdigit()Markus Armbruster2019-05-082-2/+2
| | | | | | | | | | | | | | atoui() and get_index() pass char values to isdigit(). With a standard isdigit(), we'd get undefined behavior when the value is negative. Can't happen as char is unsigned on s390x. Even if it ould, we're actually using isdigit() from pc-bios/s390-ccw/libc.h here, which works fine for negative values. Clean up anyway, just to avoid setting a bad example. Signed-off-by: Markus Armbruster <armbru@redhat.com> Message-Id: <20190418145355.21100-6-armbru@redhat.com> [thuth: updated the commit message] Signed-off-by: Thomas Huth <thuth@redhat.com>
* Merge tag 's390-ccw-bios-2019-04-12' into s390-next-stagingCornelia Huck2019-04-2516-182/+1223
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support for booting from a vfio-ccw passthrough dasd device # gpg: Signature made Fri 12 Apr 2019 01:17:03 PM CEST # gpg: using RSA key 2ED9D774FE702DB5 # gpg: Good signature from "Thomas Huth <th.huth@gmx.de>" [full] # gpg: aka "Thomas Huth <thuth@redhat.com>" [undefined] # gpg: aka "Thomas Huth <huth@tuxfamily.org>" [undefined] # gpg: aka "Thomas Huth <th.huth@posteo.de>" [unknown] * tag 's390-ccw-bios-2019-04-12': pc-bios/s390: Update firmware images s390-bios: Use control unit type to find bootable devices s390-bios: Support booting from real dasd device s390-bios: Add channel command codes/structs needed for dasd-ipl s390-bios: Use control unit type to determine boot method s390-bios: Refactor virtio to run channel programs via cio s390-bios: Factor finding boot device out of virtio code path s390-bios: Extend find_dev() for non-virtio devices s390-bios: cio error handling s390-bios: Support for running format-0/1 channel programs s390-bios: ptr2u32 and u32toptr s390-bios: Map low core memory s390-bios: Decouple channel i/o logic from virtio s390-bios: Clean up cio.h s390-bios: decouple common boot logic from virtio s390-bios: decouple cio setup from virtio s390 vfio-ccw: Add bootindex property and IPLB data Signed-off-by: Cornelia Huck <cohuck@redhat.com>
| * pc-bios/s390: Update firmware imagesThomas Huth2019-04-122-0/+0
| | | | | | | | | | | | | | | | s390-ccw.img contains support for booting from vfio-ccw dasd passthrough devices now, and s390-netboot.img is updated since there were changes to the code that is shared between s390-ccw.img and s390-netboot.img. Signed-off-by: Thomas Huth <thuth@redhat.com>
| * s390-bios: Use control unit type to find bootable devicesJason J. Herne2019-04-121-10/+35
| | | | | | | | | | | | | | | | | | | | | | | | When the user does not specify which device to boot from then we end up guessing. Instead of simply grabbing the first available device let's be a little bit smarter and only choose devices that might be bootable like disk, and not console devices. Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com> Message-Id: <1554388475-18329-17-git-send-email-jjherne@linux.ibm.com> [thuth: Added fix for virtio_is_supported() not being called anymore] Signed-off-by: Thomas Huth <thuth@redhat.com>
| * s390-bios: Support booting from real dasd deviceJason J. Herne2019-04-125-1/+270
| | | | | | | | | | | | | | | | | | Allows guest to boot from a vfio configured real dasd device. Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Message-Id: <1554388475-18329-16-git-send-email-jjherne@linux.ibm.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
| * s390-bios: Add channel command codes/structs needed for dasd-iplJason J. Herne2019-04-121-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | The dasd IPL procedure needs to execute a few previously unused channel commands. Let's define them and their associated data structures. Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com> Acked-by: Cornelia Huck <cohuck@redhat.com> Acked-by: Thomas Huth <thuth@redhat.com> Message-Id: <1554388475-18329-15-git-send-email-jjherne@linux.ibm.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
| * s390-bios: Use control unit type to determine boot methodJason J. Herne2019-04-123-3/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The boot method is different depending on which device type we are booting from. Let's examine the control unit type to determine if we're a virtio device. We'll eventually add a case to check for a real dasd device here as well. Since we have to call enable_subchannel() in main now, might as well remove that call from virtio.c : run_ccw(). This requires adding some additional enable_subchannel calls to not break calls to virtio_is_supported(). Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Message-Id: <1554388475-18329-14-git-send-email-jjherne@linux.ibm.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
| * s390-bios: Refactor virtio to run channel programs via cioJason J. Herne2019-04-121-30/+27Star
| | | | | | | | | | | | | | | | | | | | | | Now that we have a Channel I/O library let's modify virtio boot code to make use of it for running channel programs. Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Acked-by: Thomas Huth <thuth@redhat.com> Message-Id: <1554388475-18329-13-git-send-email-jjherne@linux.ibm.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
| * s390-bios: Factor finding boot device out of virtio code pathJason J. Herne2019-04-121-39/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make a new routine find_boot_device to locate the boot device for all cases, not just virtio. The error message for the case where no boot device has been specified and a suitable boot device cannot be auto detected was specific to virtio devices. We update this message to remove virtio specific wording. Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com> Reviewed-by: Farhan Ali <alifm@linux.ibm.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Message-Id: <1554388475-18329-12-git-send-email-jjherne@linux.ibm.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
| * s390-bios: Extend find_dev() for non-virtio devicesJason J. Herne2019-04-121-5/+11
| | | | | | | | | | | | | | | | | | | | | | | | We need a method for finding the subchannel of a dasd device. Let's modify find_dev to handle this since it mostly does what we need. Up to this point find_dev has been specific to only virtio devices. Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com> Acked-by: Halil Pasic <pasic@linux.vnet.ibm.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Message-Id: <1554388475-18329-11-git-send-email-jjherne@linux.ibm.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
| * s390-bios: cio error handlingJason J. Herne2019-04-122-0/+246
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add verbose error output for when unexpected i/o errors happen. This eases the burden of debugging and reporting i/o errors. No error information is printed in the success case, here is an example of what is output on error: cio device error ssid : 0x0000000000000000 cssid : 0x0000000000000000 sch_no: 0x0000000000000000 Interrupt Response Block Data: Function Ctrl : [Start] Activity Ctrl : [Start-Pending] Status Ctrl : [Alert] [Primary] [Secondary] [Status-Pending] Device Status : [Unit-Check] Channel Status : cpa=: 0x000000007f8d6038 prev_ccw=: 0x0000000000000000 this_ccw=: 0x0000000000000000 Eckd Dasd Sense Data (fmt 32-bytes): Sense Condition Flags : Residual Count =: 0x0000000000000000 Phys Drive ID =: 0x000000000000009e low cyl address =: 0x0000000000000000 head addr & hi cyl =: 0x0000000000000000 format/message =: 0x0000000000000008 fmt-dependent[0-7] =: 0x0000000000000004 fmt-dependent[8-15]=: 0xe561282305082fff prog action code =: 0x0000000000000016 Configuration info =: 0x00000000000040e0 mcode / hi-cyl =: 0x0000000000000000 cyl & head addr [0]=: 0x0000000000000000 cyl & head addr [1]=: 0x0000000000000000 cyl & head addr [2]=: 0x0000000000000000 The Sense Data section is currently only printed for ECKD DASD. Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Message-Id: <1554388475-18329-10-git-send-email-jjherne@linux.ibm.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
| * s390-bios: Support for running format-0/1 channel programsJason J. Herne2019-04-124-3/+301
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce a library function for executing format-0 and format-1 channel programs and waiting for their completion before continuing execution. Add cu_type() to channel io library. This will be used to query control unit type which is used to determine if we are booting a virtio device or a real dasd device. Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Reviewed-by: Farhan Ali <alifm@linux.ibm.com> Message-Id: <1554388475-18329-9-git-send-email-jjherne@linux.ibm.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
| * s390-bios: ptr2u32 and u32toptrJason J. Herne2019-04-121-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | Introduce inline functions to convert between pointers and unsigned 32-bit ints. These are used to hide the ugliness required to avoid compiler warnings. Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com> Acked-by: Cornelia Huck <cohuck@redhat.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Message-Id: <1554388475-18329-8-git-send-email-jjherne@linux.ibm.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
| * s390-bios: Map low core memoryJason J. Herne2019-04-122-0/+92
| | | | | | | | | | | | | | | | | | | | | | | | Create a new header for basic architecture specific definitions and add a mapping of low core memory. This mapping will be used by the real dasd boot process. Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com> Acked-by: Cornelia Huck <cohuck@redhat.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Message-Id: <1554388475-18329-7-git-send-email-jjherne@linux.ibm.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
| * s390-bios: Decouple channel i/o logic from virtioJason J. Herne2019-04-128-28/+53
| | | | | | | | | | | | | | | | | | | | | | | | Create a separate library for channel i/o related code. This decouples channel i/o operations from virtio and allows us to make use of them for the real dasd boot path. Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Message-Id: <1554388475-18329-6-git-send-email-jjherne@linux.ibm.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
| * s390-bios: Clean up cio.hJason J. Herne2019-04-122-65/+57Star
| | | | | | | | | | | | | | | | | | | | | | | | | | Add proper typedefs to all structs and modify all bit fields to use consistent formatting. Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com> Reviewed-by: Collin Walling <walling@linux.ibm.com> Reviewed-by: Farhan Ali <alifm@linux.ibm.com> Acked-by: Cornelia Huck <cohuck@redhat.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Message-Id: <1554388475-18329-5-git-send-email-jjherne@linux.ibm.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
| * s390-bios: decouple common boot logic from virtioJason J. Herne2019-04-121-8/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Create a boot_setup function to handle getting boot information from the machine/hypervisor. This decouples common boot logic from the virtio code path and allows us to make use of it for the real dasd boot scenario. Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com> Acked-by: Halil Pasic <pasic@linux.vnet.ibm.com> Reviewed-by: Collin Walling <walling@linux.ibm.com Reviewed-by: Thomas Huth <thuth@redhat.com> Reviewed-by: Farhan Ali <alifm@linux.ibm.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Message-Id: <1554388475-18329-4-git-send-email-jjherne@linux.ibm.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
| * s390-bios: decouple cio setup from virtioJason J. Herne2019-04-121-7/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move channel i/o setup code out to a separate function. This decouples cio setup from the virtio code path and allows us to make use of it for booting dasd devices. Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com> Acked-by: Halil Pasic <pasic@linux.vnet.ibm.com> Reviewed-by: Collin Walling <walling@linux.ibm.com> Reviewed-by: Farhan Ali <alifm@linux.ibm.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Message-Id: <1554388475-18329-3-git-send-email-jjherne@linux.ibm.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
* | pc-bios: document the edk2 firmware images; add firmware descriptorsLaszlo Ersek2019-04-177-0/+209
| | | | | | | | | | | | | | | | | | | | | | | | | | Update the README file with information on the images added previously, and provide firmware descriptor documents that conform to "docs/interop/firmware.json". Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Michal Privoznik <mprivozn@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Tested-by: Igor Mammedov <imammedo@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Igor Mammedov <imammedo@redhat.com>
* | pc-bios: add edk2 firmware binaries and variable store templatesLaszlo Ersek2019-04-179-0/+209
|/ | | | | | | | | | | | Add the files built by the last patch: (compressed) binaries, and the cumulative license text that covers them. Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Michal Privoznik <mprivozn@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Igor Mammedov <imammedo@redhat.com>
* pc-bios: Update palcode-clipperRichard Henderson2019-03-251-0/+0
| | | | | | | Report machine checks to the kernel. It is now using these for probing missing devices. Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
* ppc/pnv: update skiboot to commit 261ca8e779e5.Cédric Le Goater2019-03-191-0/+0
| | | | | | | | | | | | It includes better support for POWER9 processor and the QEMU platform. DD1.0 workarounds have been removed which simplifies a bit the XIVE PowerNV model. Built from submodule. Signed-off-by: Cédric Le Goater <clg@kaod.org> Message-Id: <20190310175338.22266-1-clg@kaod.org> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
* Merge remote-tracking branch ↵Peter Maydell2019-03-1810-0/+0
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'remotes/kraxel/tags/seabios-1.12.1-20190318-pull-request' into staging seabios update for 4.0 # gpg: Signature made Mon 18 Mar 2019 13:07:53 GMT # gpg: using RSA key 4CB6D8EED3E87138 # gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>" [full] # gpg: aka "Gerd Hoffmann <gerd@kraxel.org>" [full] # gpg: aka "Gerd Hoffmann (private) <kraxel@gmail.com>" [full] # Primary key fingerprint: A032 8CFF B93A 17A7 9901 FE7D 4CB6 D8EE D3E8 7138 * remotes/kraxel/tags/seabios-1.12.1-20190318-pull-request: seabios: update binaries to 1.12.1 seabios: turn off CONFIG_ATA_DMA seabios: update submodule to 1.12.1 Signed-off-by: Peter Maydell <peter.maydell@linaro.org>