ppc/pnv: fix StoreEOI activation
commite1a9b7d1fcc1f41c917c0306bd1f2adf0d5d8e1e
authorCédric Le Goater <clg@kaod.org>
Wed, 12 Jun 2019 16:23:57 +0000 (12 18:23 +0200)
committerDavid Gibson <david@gibson.dropbear.id.au>
Mon, 1 Jul 2019 23:43:58 +0000 (2 09:43 +1000)
treea23c17677459ae9561044efae4da4a6bed0339a3
parentb87a0100cde349a977a19969660660bcb84720be
ppc/pnv: fix StoreEOI activation

The firmware (skiboot) of the PowerNV machines can configure the XIVE
interrupt controller to activate StoreEOI on the ESB pages of the
interrupts. This feature lets software do an EOI with a store instead
of a load. It is not activated today on P9 for rare race condition
issues but it should be on future processors.

Nevertheless, QEMU has a model for StoreEOI which can be used today by
experimental firmwares. But, the use of object_property_set_int() in
the PnvXive model is incorrect and crashes QEMU. Replace it with a
direct access to the ESB flags of the XiveSource object modeling the
internal sources of the interrupt controller.

Signed-off-by: Cédric Le Goater <clg@kaod.org>
Message-Id: <20190612162357.29566-1-clg@kaod.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
hw/intc/pnv_xive.c