On Sun, Dec 09, 2018 at 08:45:52PM +0100, Cédric Le Goater wrote: > The Event Notification Descriptor (END) XIVE structure also contains > two Event State Buffers providing further coalescing of interrupts, > one for the notification event (ESn) and one for the escalation events > (ESe). A MMIO page is assigned for each to control the EOI through > loads only. Stores are not allowed. > > The END ESBs are modeled through an object resembling the 'XiveSource' > It is stateless as the END state bits are backed into the XiveEND > structure under the XiveRouter and the MMIO accesses follow the same > rules as for the XiveSource ESBs. > > END ESBs are not supported by the Linux drivers neither on OPAL nor on > sPAPR. Nevetherless, it provides a mean to study the question in the > future and validates a bit more the XIVE model. > > Signed-off-by: Cédric Le Goater <c...@kaod.org> > --- > > Changes since v6: > > - removed the 'chip-id' field from XiveRouter > - introduced a 'block-id' field in XiveENDSource to lookup the XIVE > END structure when doing a load in the MMIO ESB > - removed reset XiveENDSource handler > > include/hw/ppc/xive.h | 21 ++++++ > hw/intc/xive.c | 160 +++++++++++++++++++++++++++++++++++++++++- > 2 files changed, 179 insertions(+), 2 deletions(-)
Applied to ppc-for-4.0. I had some thoughts about maybe-nicer arrangements of things here, but nothing important enough to delay this (the things I'm mulling over wouldn't break migration, so it's fixable later). -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson
signature.asc
Description: PGP signature