On 12/10/18 5:16 AM, David Gibson wrote: > 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).
OK. No problem for me to do it afterwards. It's a bit of pain to maintain a pile of 30/40 patches and changing stuff in the first ones. C.