qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 74ad2d: S390: Make IPL reset address dynamic


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 74ad2d: S390: Make IPL reset address dynamic
Date: Fri, 26 Apr 2013 13:30:12 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 74ad2d22c1f6e2b24412f6b2adea7d6f9a719047
      
https://github.com/qemu/qemu/commit/74ad2d22c1f6e2b24412f6b2adea7d6f9a719047
  Author: Alexander Graf <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    M hw/s390x/ipl.c

  Log Message:
  -----------
  S390: Make IPL reset address dynamic

We can have different load addresses for different blobs we boot with.
Make the reset IP dynamic, so that we can handle things more flexibly.

Signed-off-by: Alexander Graf <address@hidden>


  Commit: 3325995640e0a598c4c350a1a02357b422e90973
      
https://github.com/qemu/qemu/commit/3325995640e0a598c4c350a1a02357b422e90973
  Author: Alexander Graf <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    M hw/s390x/ipl.c

  Log Message:
  -----------
  S390: IPL: Support ELF firmware

Our firmware blob is always a raw file that we load at a fixed address today.
Support loading an ELF blob instead that we can map high up in memory.

This way we don't have to be so conscious about size constraints.

Signed-off-by: Alexander Graf <address@hidden>


  Commit: d0249ce5a8d11564958262fd567d1ea770358134
      
https://github.com/qemu/qemu/commit/d0249ce5a8d11564958262fd567d1ea770358134
  Author: Alexander Graf <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    M hw/s390x/ipl.c
    M hw/s390x/s390-virtio-ccw.c
    M hw/s390x/s390-virtio.c
    M hw/s390x/s390-virtio.h

  Log Message:
  -----------
  S390: IPL: Use different firmware for different machines

We have a virtio-s390 and a virtio-ccw machine in QEMU. Both use vastly
different ways to do I/O. Having the same firmware blob for both doesn't
really make any sense.

Instead, let's parametrize the firmware file name, so that we can have
different blobs for different machines.

Signed-off-by: Alexander Graf <address@hidden>


  Commit: 80fea6e8930384d7d8adae0eb1a00acb7647f7ec
      
https://github.com/qemu/qemu/commit/80fea6e8930384d7d8adae0eb1a00acb7647f7ec
  Author: Alexander Graf <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    A pc-bios/s390-ccw/start.S

  Log Message:
  -----------
  S390: ccw firmware: Add start assembly

We want to write most of our code in C, so add a small assembly
stub that jumps straight into C code for us to continue booting.

Signed-off-by: Alexander Graf <address@hidden>


  Commit: 92f2ca38b01578075208799dd2f060fcc3638ed4
      
https://github.com/qemu/qemu/commit/92f2ca38b01578075208799dd2f060fcc3638ed4
  Author: Alexander Graf <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    A pc-bios/s390-ccw/main.c

  Log Message:
  -----------
  S390: ccw firmware: Add main program

This C file is the main driving piece of the s390 ccw firmware. It
provides a search for a workable block device, sets it as the default
to boot off of and boots from it.

Signed-off-by: Alexander Graf <address@hidden>


  Commit: 0369b2eb0707970c5f031b3ece84ccda953a8375
      
https://github.com/qemu/qemu/commit/0369b2eb0707970c5f031b3ece84ccda953a8375
  Author: Alexander Graf <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    A pc-bios/s390-ccw/sclp-ascii.c
    A pc-bios/s390-ccw/sclp.h

  Log Message:
  -----------
  S390: ccw firmware: Add sclp output

In order to communicate with the user, we need an I/O mechanism that he
can read. Implement SCLP ASCII support, which happens to be the default
in the s390 ccw machine.

This file is missing read support for now. It can only print messages.

Signed-off-by: Alexander Graf <address@hidden>


  Commit: 1e17c2c15b354a1e6c1d1ad41bb17f7bf146e9ba
      
https://github.com/qemu/qemu/commit/1e17c2c15b354a1e6c1d1ad41bb17f7bf146e9ba
  Author: Alexander Graf <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    A pc-bios/s390-ccw/cio.h
    A pc-bios/s390-ccw/virtio.c
    A pc-bios/s390-ccw/virtio.h

  Log Message:
  -----------
  S390: ccw firmware: Add virtio device drivers

In order to boot, we need to be able to access a virtio-blk device through
the CCW bus. Implement support for this.

Signed-off-by: Alexander Graf <address@hidden>


  Commit: c9c39d3b5ea870073703141ba04813c7a8779b02
      
https://github.com/qemu/qemu/commit/c9c39d3b5ea870073703141ba04813c7a8779b02
  Author: Alexander Graf <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    A pc-bios/s390-ccw/s390-ccw.h

  Log Message:
  -----------
  S390: ccw firmware: Add glue header

Like all great programs, we have to call between different functions in
different object files. And all of them need a common ground of defines.

Provide a file that provides these defines.

Signed-off-by: Alexander Graf <address@hidden>


  Commit: 685d49a63e0665f609973ffe4ba34f06981e1b03
      
https://github.com/qemu/qemu/commit/685d49a63e0665f609973ffe4ba34f06981e1b03
  Author: Alexander Graf <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    A pc-bios/s390-ccw/bootmap.c

  Log Message:
  -----------
  S390: ccw firmware: Add bootmap interpreter

On s390, there is an architected boot map format that we can read to
boot a certain entry off the disk. Implement a simple reader for this
that always boots the first (default) entry.

Signed-off-by: Alexander Graf <address@hidden>


  Commit: b462fcd57c0949e4dfd457fafa91db17e0e99113
      
https://github.com/qemu/qemu/commit/b462fcd57c0949e4dfd457fafa91db17e0e99113
  Author: Alexander Graf <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    M .gitignore
    A pc-bios/s390-ccw/Makefile

  Log Message:
  -----------
  S390: ccw firmware: Add Makefile

This patch adds a makefile, so we can build our ccw firmware. Also
add the resulting binaries to .gitignore, so that nobody is annoyed
they might be in the tree.

Signed-off-by: Alexander Graf <address@hidden>


  Commit: 7f61cbc108dd16df9a53649d53f26143ad506fe1
      
https://github.com/qemu/qemu/commit/7f61cbc108dd16df9a53649d53f26143ad506fe1
  Author: Christian Borntraeger <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    M pc-bios/s390-ccw/main.c
    M pc-bios/s390-ccw/s390-ccw.h
    M pc-bios/s390-ccw/start.S

  Log Message:
  -----------
  s390-ccw.img: replace while loop with a disabled wait on s390 bios

dont waste cpu power on an error condition. Lets stop the guest
with a disabled wait.

Signed-off-by: Christian Borntraeger <address@hidden>
Signed-off-by: Alexander Graf <address@hidden>


  Commit: 9933c30509f97e04be0a348659f38b5f53c1ad5c
      
https://github.com/qemu/qemu/commit/9933c30509f97e04be0a348659f38b5f53c1ad5c
  Author: Christian Borntraeger <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    M configure

  Log Message:
  -----------
  s390-ccw.img: build s390-ccw rom on s3900 system by default

Lets build the s390-ccw rom if on s390. Also fix the separate build
folder case.

Signed-off-by: Christian Borntraeger <address@hidden>
Signed-off-by: Alexander Graf <address@hidden>


  Commit: 6328801f19b08302377e812c454fd2b837f669e3
      
https://github.com/qemu/qemu/commit/6328801f19b08302377e812c454fd2b837f669e3
  Author: Christian Borntraeger <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    M pc-bios/s390-ccw/Makefile

  Log Message:
  -----------
  s390-ccw.img: Take care of the elf->img transition

We have to call strip with s390-ccw.elf as input and
s390-ccw.img as output

Signed-off-by: Christian Borntraeger <address@hidden>
Signed-off-by: Alexander Graf <address@hidden>


  Commit: dc03640b5851d3115448493f0eee2b7f539de81a
      
https://github.com/qemu/qemu/commit/dc03640b5851d3115448493f0eee2b7f539de81a
  Author: Christian Borntraeger <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    M pc-bios/s390-ccw/virtio.c

  Log Message:
  -----------
  s390-ccw.img: Fix compile warning in s390 ccw virtio code

Lets fix this gcc warning:

virtio.c: In function ‘vring_send_buf’:
virtio.c:125:35: error: operation on ‘vr->next_idx’ may be undefined
[-Werror=sequence-point]

Signed-off-by: Christian Borntraeger <address@hidden>
Signed-off-by: Alexander Graf <address@hidden>


  Commit: 22d67ab55aad82383a0e5628b902a1a0556b2fc9
      
https://github.com/qemu/qemu/commit/22d67ab55aad82383a0e5628b902a1a0556b2fc9
  Author: Cornelia Huck <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    M pc-bios/s390-ccw/main.c

  Log Message:
  -----------
  s390-ccw.img: Detect devices with stsch.

stsch is the canonical way to detect devices. As a bonus, we can
abort the loop if we get cc 3, and we need to check only the valid
devices (dnv set).

Signed-off-by: Cornelia Huck <address@hidden>
Signed-off-by: Alexander Graf <address@hidden>


  Commit: 776e7f0f215dd11dde85277723408fae3d319143
      
https://github.com/qemu/qemu/commit/776e7f0f215dd11dde85277723408fae3d319143
  Author: Cornelia Huck <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    M pc-bios/s390-ccw/virtio.c

  Log Message:
  -----------
  s390-ccw.img: Enhance drain_irqs().

- Use tpi + tsch to get interrupts.
- Return an error if the irb indicates problems.

Signed-off-by: Cornelia Huck <address@hidden>
Signed-off-by: Alexander Graf <address@hidden>


  Commit: 0f3f1f302fd2021a5ce6cb170321d0a0d35bdec5
      
https://github.com/qemu/qemu/commit/0f3f1f302fd2021a5ce6cb170321d0a0d35bdec5
  Author: Cornelia Huck <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    M pc-bios/s390-ccw/virtio.c

  Log Message:
  -----------
  s390-ccw.img: Rudimentary error checking.

Try to handle at least some of the errors that may happen.

Signed-off-by: Cornelia Huck <address@hidden>
Signed-off-by: Alexander Graf <address@hidden>


  Commit: abbbe3de4aea92319f77cc9d402e983513d08539
      
https://github.com/qemu/qemu/commit/abbbe3de4aea92319f77cc9d402e983513d08539
  Author: Cornelia Huck <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    M pc-bios/s390-ccw/virtio.c
    M pc-bios/s390-ccw/virtio.h

  Log Message:
  -----------
  s390-ccw.img: Get queue config from host.

Ask the host about the configuration instead of guessing it.

Signed-off-by: Cornelia Huck <address@hidden>
Signed-off-by: Alexander Graf <address@hidden>


  Commit: 0c1fecdd5234ba4bb0406362d38f8806a5be8fcc
      
https://github.com/qemu/qemu/commit/0c1fecdd5234ba4bb0406362d38f8806a5be8fcc
  Author: Alexander Graf <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    M Makefile
    A pc-bios/s390-ccw.img

  Log Message:
  -----------
  S390: ccw firmware: Add compiled blob

Now that we have all the source code ready, add a compiled blob into
the QEMU source tree, so that people without access to an s390 compiler
can run the s390-ccw firmware.

Signed-off-by: Alexander Graf <address@hidden>


  Commit: ba747cc8f31a1de7e0a20e7f0cf97965be338e70
      
https://github.com/qemu/qemu/commit/ba747cc8f31a1de7e0a20e7f0cf97965be338e70
  Author: Alexander Graf <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    M hw/s390x/s390-virtio-ccw.c

  Log Message:
  -----------
  S390: CCW: Use new, working firmware by default

Since we now have working firmware for s390-ccw in the tree, we can
default to it on our s390-ccw machine, rendering it more useful.

Signed-off-by: Alexander Graf <address@hidden>


  Commit: 7dc5af5545bb72e1343cc959b3f0e5cdd8758f1f
      
https://github.com/qemu/qemu/commit/7dc5af5545bb72e1343cc959b3f0e5cdd8758f1f
  Author: Dominik Dingel <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    M include/sysemu/sysemu.h
    M vl.c

  Log Message:
  -----------
  Common: Add quick access to first boot device

Instead of manually parsing the boot_list as character stream,
we can access the nth boot device, specified by the position in the
boot order.

Signed-off-by: Dominik Dingel <address@hidden>
Reviewed-by: Anthony Liguori <address@hidden>
Signed-off-by: Alexander Graf <address@hidden>


  Commit: 420840e58b85f7f4e5493dca3f273566f261090a
      
https://github.com/qemu/qemu/commit/420840e58b85f7f4e5493dca3f273566f261090a
  Author: Jason J. Herne <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    M target-s390x/cpu.h
    M target-s390x/kvm.c

  Log Message:
  -----------
  Allow selective runtime register synchronization

We want to avoid expensive register synchronization IOCTL's on the hot path so
a new kvm_s390_get_registers_partial() is introduced as a compliment to
kvm_arch_get_registers().  The new function is called on the hot path, and
kvm_arch_get_registers() is called when we need the complete runtime register
state.

kvm_arch_put_registers() is updated to only sync the partial runtime set when
we've only dirtied the partial runtime set.  This is to avoid sending bad data
back to KVM if we've only partially synced the runtime register set.

Signed-off-by: Jason J. Herne <address@hidden>
Reviewed-by: Christian Borntraeger <address@hidden>
Signed-off-by: Alexander Graf <address@hidden>


  Commit: 3474b679486caa8f6448bae974e131370f360c13
      
https://github.com/qemu/qemu/commit/3474b679486caa8f6448bae974e131370f360c13
  Author: Jason J. Herne <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    M target-s390x/kvm.c

  Log Message:
  -----------
  Utilize selective runtime reg sync for hot code paths

Make use of new kvm_s390_get_registers_partial() for kvm_handle_css_inst() and
handle_hypercall() since they only need registers from the partial set and they
are called quite frequently.

Signed-off-by: Jason J. Herne <address@hidden>
Signed-off-by: Alexander Graf <address@hidden>


  Commit: 75f6e8b0f121beeee6a95eb9e35d88ec1f01824f
      
https://github.com/qemu/qemu/commit/75f6e8b0f121beeee6a95eb9e35d88ec1f01824f
  Author: KONRAD Frederic <address@hidden>
  Date:   2013-04-26 (Fri, 26 Apr 2013)

  Changed paths:
    M hw/s390x/s390-virtio-bus.c

  Log Message:
  -----------
  virtio-rng-s390: add properties.

I don't see any reason why these properties are missing.

Signed-off-by: KONRAD Frederic <address@hidden>

Note: Need to apply virtio-rng-refactoring first!
Acked-by: Cornelia Huck <address@hidden>
Signed-off-by: Alexander Graf <address@hidden>


Compare: https://github.com/qemu/qemu/compare/bf9b255f484f...75f6e8b0f121

reply via email to

[Prev in Thread] Current Thread [Next in Thread]