qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] e5a815: hw/gpio: Add the emulation of gpio_ke


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] e5a815: hw/gpio: Add the emulation of gpio_key
Date: Wed, 30 Mar 2016 11:30:08 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: e5a8152c9bfd3d40c37711ba5b704f277cbc0c54
      
https://github.com/qemu/qemu/commit/e5a8152c9bfd3d40c37711ba5b704f277cbc0c54
  Author: Shannon Zhao <address@hidden>
  Date:   2016-03-30 (Wed, 30 Mar 2016)

  Changed paths:
    M default-configs/arm-softmmu.mak
    M hw/gpio/Makefile.objs
    A hw/gpio/gpio_key.c

  Log Message:
  -----------
  hw/gpio: Add the emulation of gpio_key

This will be used by ARM virt machine as a power button.

Signed-off-by: Shannon Zhao <address@hidden>
Message-id: address@hidden
[PMM: Use hyphen rather than underscore in type names;
 add a comment briefly describing what the device does]
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Peter Maydell <address@hidden>


  Commit: 94f02c5ea9430be935088b2574f72f2dcf902997
      
https://github.com/qemu/qemu/commit/94f02c5ea9430be935088b2574f72f2dcf902997
  Author: Shannon Zhao <address@hidden>
  Date:   2016-03-30 (Wed, 30 Mar 2016)

  Changed paths:
    M hw/arm/virt.c

  Log Message:
  -----------
  ARM: Virt: Use gpio_key for power button

There is a problem for power button that it will not work if an early
system_powerdown request happens before guest gpio driver loads.

Fix this problem by using gpio_key.

Signed-off-by: Shannon Zhao <address@hidden>
Message-id: address@hidden
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Peter Maydell <address@hidden>


  Commit: e8710c2293c0f4652090b1434603715f2d9a410f
      
https://github.com/qemu/qemu/commit/e8710c2293c0f4652090b1434603715f2d9a410f
  Author: Marcin Krzeminski <address@hidden>
  Date:   2016-03-30 (Wed, 30 Mar 2016)

  Changed paths:
    M hw/block/m25p80.c

  Log Message:
  -----------
  block: m25p80: Removed unused variable

Signed-off-by: Marcin Krzeminski <address@hidden>
Reviewed-by: Peter Crosthwaite <address@hidden>
Message-id: address@hidden
Signed-off-by: Peter Maydell <address@hidden>


  Commit: 187c26364c6fda3321a04535a1dd28eca879a8e3
      
https://github.com/qemu/qemu/commit/187c26364c6fda3321a04535a1dd28eca879a8e3
  Author: Marcin Krzeminski <address@hidden>
  Date:   2016-03-30 (Wed, 30 Mar 2016)

  Changed paths:
    M hw/block/m25p80.c

  Log Message:
  -----------
  block: m25p80: RESET_ENABLE and RESET_MEMORY commands

Signed-off-by: Marcin Krzeminski <address@hidden>
Reviewed-by: Peter Crosthwaite <address@hidden>
Message-id: address@hidden
Signed-off-by: Peter Maydell <address@hidden>


  Commit: 76e872695a09fa59ac3bdb4900320e47808c139a
      
https://github.com/qemu/qemu/commit/76e872695a09fa59ac3bdb4900320e47808c139a
  Author: Marcin Krzeminski <address@hidden>
  Date:   2016-03-30 (Wed, 30 Mar 2016)

  Changed paths:
    M hw/block/m25p80.c

  Log Message:
  -----------
  block: m25p80: Widen flags variable

Extend the width of the flags variable to support the already existing
(but unused) WR_1 flag, which is above the range of 8 bits.
This allows support of EEPROM emulation which requires the WR_1 feature.

Signed-off-by: Marcin Krzeminski <address@hidden>
Reviewed-by: Peter Crosthwaite <address@hidden>
Message-id: address@hidden
Signed-off-by: Peter Maydell <address@hidden>


  Commit: d8a29a7a894de1aa0cbbd36d056af8d44f52e359
      
https://github.com/qemu/qemu/commit/d8a29a7a894de1aa0cbbd36d056af8d44f52e359
  Author: Marcin Krzeminski <address@hidden>
  Date:   2016-03-30 (Wed, 30 Mar 2016)

  Changed paths:
    M hw/block/m25p80.c

  Log Message:
  -----------
  block: m25p80: Extend address mode

Extend address mode allows to switch flash 16 MiB banks,
allowing user to access all flash sectors.
This access mode is used by u-boot.

Signed-off-by: Marcin Krzeminski <address@hidden>
Reviewed-by: Peter Crosthwaite <address@hidden>
Message-id: address@hidden
Signed-off-by: Peter Maydell <address@hidden>


  Commit: c0f3f6754a120abc3451ebf7a7c703fbaf7b29e7
      
https://github.com/qemu/qemu/commit/c0f3f6754a120abc3451ebf7a7c703fbaf7b29e7
  Author: Marcin Krzeminski <address@hidden>
  Date:   2016-03-30 (Wed, 30 Mar 2016)

  Changed paths:
    M hw/block/m25p80.c

  Log Message:
  -----------
  block: m25p80: 4byte address mode

This patch adds only 4byte address mode (does not cover dummy cycles).
This mode is needed to access more than 16 MiB of flash.

Signed-off-by: Marcin Krzeminski <address@hidden>
Reviewed-by: Peter Crosthwaite <address@hidden>
Message-id: address@hidden
Signed-off-by: Peter Maydell <address@hidden>


  Commit: cb475951c0e109ba70ecebbf2853dfad5ff20cbb
      
https://github.com/qemu/qemu/commit/cb475951c0e109ba70ecebbf2853dfad5ff20cbb
  Author: Marcin Krzeminski <address@hidden>
  Date:   2016-03-30 (Wed, 30 Mar 2016)

  Changed paths:
    M hw/block/m25p80.c

  Log Message:
  -----------
  block: m25p80: Add configuration registers

This patch adds both volatile and non volatile configuration registers
and commands to allow modify them. It is needed for proper handling
dummy cycles. Initialization of those registers and flash state
has been included as well.
Some of this registers are used by kernel.

Signed-off-by: Marcin Krzeminski <address@hidden>
Acked-by: Peter Crosthwaite <address@hidden>
Message-id: address@hidden
Signed-off-by: Peter Maydell <address@hidden>


  Commit: aeb83edbf3d67b737b6cfd198b1b0cfcbb7327e8
      
https://github.com/qemu/qemu/commit/aeb83edbf3d67b737b6cfd198b1b0cfcbb7327e8
  Author: Marcin Krzeminski <address@hidden>
  Date:   2016-03-30 (Wed, 30 Mar 2016)

  Changed paths:
    M hw/block/m25p80.c

  Log Message:
  -----------
  block: m25p80: Dummy cycles for N25Q256/512

Use the setting from the volatile cfg register to correctly
set the number of dummy cycles.

Signed-off-by: Marcin Krzeminski <address@hidden>
Reviewed-by: Peter Crosthwaite <address@hidden>
Message-id: address@hidden
Signed-off-by: Peter Maydell <address@hidden>


  Commit: 63e47f6f72cf0490447c3e08b62c8040680367fe
      
https://github.com/qemu/qemu/commit/63e47f6f72cf0490447c3e08b62c8040680367fe
  Author: Marcin Krzeminski <address@hidden>
  Date:   2016-03-30 (Wed, 30 Mar 2016)

  Changed paths:
    M hw/block/m25p80.c

  Log Message:
  -----------
  block: m25p80: Fast read and 4bytes commands

Adds fast read and 4bytes commands family.
This work is based on Pawel Lenkow patch from v1.

Signed-off-by: Marcin Krzeminski <address@hidden>
Reviewed-by: Peter Crosthwaite <address@hidden>
Message-id: address@hidden
Signed-off-by: Peter Maydell <address@hidden>


  Commit: 9fbaa364775a4a7a97526f41d17e4361e8280d55
      
https://github.com/qemu/qemu/commit/9fbaa364775a4a7a97526f41d17e4361e8280d55
  Author: Marcin Krzeminski <address@hidden>
  Date:   2016-03-30 (Wed, 30 Mar 2016)

  Changed paths:
    M hw/block/m25p80.c

  Log Message:
  -----------
  block: m25p80: Implemented FSR register

Implements FSR register, it is used for busy waits.

Signed-off-by: Marcin Krzeminski <address@hidden>
Reviewed-by: Peter Crosthwaite <address@hidden>
Message-id: address@hidden
Signed-off-by: Peter Maydell <address@hidden>


  Commit: d31912bd7eabae09cf2e69becb17e6773c3794ef
      
https://github.com/qemu/qemu/commit/d31912bd7eabae09cf2e69becb17e6773c3794ef
  Author: Marcin Krzeminski <address@hidden>
  Date:   2016-03-30 (Wed, 30 Mar 2016)

  Changed paths:
    M hw/block/m25p80.c

  Log Message:
  -----------
  block: m25p80: n25q256a/n25q512a models

Signed-off-by: Marcin Krzeminski <address@hidden>
Reviewed-by: Peter Crosthwaite <address@hidden>
Message-id: address@hidden
Signed-off-by: Peter Maydell <address@hidden>


  Commit: 1435bcd6122d490a135c86cafefdccee3fb7c634
      
https://github.com/qemu/qemu/commit/1435bcd6122d490a135c86cafefdccee3fb7c634
  Author: Marcin Krzeminski <address@hidden>
  Date:   2016-03-30 (Wed, 30 Mar 2016)

  Changed paths:
    M hw/block/m25p80.c

  Log Message:
  -----------
  block: m25p80: at25128a/at25256a models

Signed-off-by: Marcin Krzeminski <address@hidden>
Reviewed-by: Peter Crosthwaite <address@hidden>
Message-id: address@hidden
Signed-off-by: Peter Maydell <address@hidden>


  Commit: ae50a7702c871638c5b650f501325031dfc511cb
      
https://github.com/qemu/qemu/commit/ae50a7702c871638c5b650f501325031dfc511cb
  Author: Peter Xu <address@hidden>
  Date:   2016-03-30 (Wed, 30 Mar 2016)

  Changed paths:
    M monitor.c
    M qapi-schema.json
    M qmp-commands.hx
    M target-arm/Makefile.objs
    A target-arm/monitor.c

  Log Message:
  -----------
  arm: qmp: add query-gic-capabilities interface

This patch add "query-gic-capabilities" but does not implement it. The
command is ARM-only. The command will return a list of GICCapability
structs that describes all GIC versions that current QEMU and system
support.

Libvirt is possibly the first consumer of this new command.

Before this patch, a libvirt user can successfully configure all kinds
of GIC devices for ARM guests, no matter whether current QEMU/kernel
supports them. If the specified GIC version/type is not supported, the
user will get an ambiguous "QEMU boot failure" error when trying to start
the VM. This is not user-friendly.

With this patch, libvirt should be able to query which type (and which
version) of GIC device is supported. Using this information, libvirt
can warn the user during configuration of guests when specified GIC
device type is not supported. Or better, we can just list those versions
that we support, and filter out the unsupported ones.

For example, if we got the query result:

{"return": [{"emulated": false, "version": 3, "kernel": true},
      {"emulated": true, "version": 2, "kernel": false}]}

then it means that we support emulated GIC version 2 using:

  qemu-system-aarch64 -M virt,accel=tcg,gic-version=2 ...

or KVM-accelerated GIC version 3 using:

  qemu-system-aarch64 -M virt,accel=kvm,gic-version=3 ...

If we specify other explicit GIC versions rather than the above, QEMU
will not be able to boot.

The community is working on a more generic way to query these kinds of
information about valid values of machine properties. However, due to
the importance of supporting this specific use case, weecided to first
implement this ad-hoc one; then when the generic method is ready, we
can move on to that one smoothly.

Signed-off-by: Peter Xu <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-id: address@hidden
[PMM: tweaked commit message a bit; monitor.o is CONFIG_SOFTMMU only]
Signed-off-by: Peter Maydell <address@hidden>


  Commit: 2f340e9c24e3af17ad376d27a41830387999c285
      
https://github.com/qemu/qemu/commit/2f340e9c24e3af17ad376d27a41830387999c285
  Author: Peter Xu <address@hidden>
  Date:   2016-03-30 (Wed, 30 Mar 2016)

  Changed paths:
    M target-arm/kvm.c
    M target-arm/kvm_arm.h

  Log Message:
  -----------
  arm: enhance kvm_arm_create_scratch_host_vcpu

Support passing NULL for the first parameter (with the same effect
as passing an empty array) and for the third parameter (meaning
that we should not attempt to init the vcpu).

Signed-off-by: Peter Xu <address@hidden>
Acked-by: Sergey Fedorov <address@hidden>
Message-id: address@hidden
[PMM: tweaked commit message, comment]
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Peter Maydell <address@hidden>


  Commit: 29039acf585615c6c37f8a1863a0a318ddd455cc
      
https://github.com/qemu/qemu/commit/29039acf585615c6c37f8a1863a0a318ddd455cc
  Author: Peter Xu <address@hidden>
  Date:   2016-03-30 (Wed, 30 Mar 2016)

  Changed paths:
    M include/sysemu/kvm.h
    M kvm-all.c

  Log Message:
  -----------
  kvm: add kvm_device_supported() helper function

This can be used when probing whether KVM support specific device. Here,
a raw vmfd is used.

Signed-off-by: Peter Xu <address@hidden>
Acked-by: Sergey Fedorov <address@hidden>
Message-id: address@hidden
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Peter Maydell <address@hidden>


  Commit: db31e49a565fc4c165fd98201721b313c3412c1f
      
https://github.com/qemu/qemu/commit/db31e49a565fc4c165fd98201721b313c3412c1f
  Author: Peter Xu <address@hidden>
  Date:   2016-03-30 (Wed, 30 Mar 2016)

  Changed paths:
    M target-arm/monitor.c

  Log Message:
  -----------
  arm: implement query-gic-capabilities

For emulated GIC capabilities, currently only gicv2 is supported. We
need to add gicv3 in when emulated gicv3 ready. For KVM accelerated ARM
VM, we detect the capability bits by creating a scratch VM.

Signed-off-by: Peter Xu <address@hidden>
Acked-by: Sergey Fedorov <address@hidden>
Message-id: address@hidden
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Peter Maydell <address@hidden>


  Commit: 4468d4e0f383f09c7a4df2480a2bf87fafcbe20b
      
https://github.com/qemu/qemu/commit/4468d4e0f383f09c7a4df2480a2bf87fafcbe20b
  Author: Peter Maydell <address@hidden>
  Date:   2016-03-30 (Wed, 30 Mar 2016)

  Changed paths:
    M default-configs/arm-softmmu.mak
    M hw/arm/virt.c
    M hw/block/m25p80.c
    M hw/gpio/Makefile.objs
    A hw/gpio/gpio_key.c
    M include/sysemu/kvm.h
    M kvm-all.c
    M monitor.c
    M qapi-schema.json
    M qmp-commands.hx
    M target-arm/Makefile.objs
    M target-arm/kvm.c
    M target-arm/kvm_arm.h
    A target-arm/monitor.c

  Log Message:
  -----------
  Merge remote-tracking branch 
'remotes/pmaydell/tags/pull-target-arm-20160330-1' into staging

target-arm queue:
 * virt: fix the virtual power button by adding a modelled
   "key press for 100ms" device
 * various improvements to m25p80 flash devices
 * implement new QMP query-gic-capability command to let the
   management layer know what versions of GIC we support

# gpg: Signature made Wed 30 Mar 2016 17:30:51 BST using RSA key ID 14360CDE
# gpg: Good signature from "Peter Maydell <address@hidden>"
# gpg:                 aka "Peter Maydell <address@hidden>"
# gpg:                 aka "Peter Maydell <address@hidden>"

* remotes/pmaydell/tags/pull-target-arm-20160330-1:
  arm: implement query-gic-capabilities
  kvm: add kvm_device_supported() helper function
  arm: enhance kvm_arm_create_scratch_host_vcpu
  arm: qmp: add query-gic-capabilities interface
  block: m25p80: at25128a/at25256a models
  block: m25p80: n25q256a/n25q512a models
  block: m25p80: Implemented FSR register
  block: m25p80: Fast read and 4bytes commands
  block: m25p80: Dummy cycles for N25Q256/512
  block: m25p80: Add configuration registers
  block: m25p80: 4byte address mode
  block: m25p80: Extend address mode
  block: m25p80: Widen flags variable
  block: m25p80: RESET_ENABLE and RESET_MEMORY commands
  block: m25p80: Removed unused variable
  ARM: Virt: Use gpio_key for power button
  hw/gpio: Add the emulation of gpio_key

Signed-off-by: Peter Maydell <address@hidden>


Compare: https://github.com/qemu/qemu/compare/489ef4c81003...4468d4e0f383

reply via email to

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