To ease transition to the new XIVE interrupt controller on POWER9 systems, IBM
added a XICS emulation mode, using OPAL calls in place of physical device
accesses. Add this capability to the existing XICS/XICP driver as a stopgap
measure before writing a full XIVE native driver.
Details
- Reviewers
nwhitehorn breno.leitao_gmail.com
In progress. Not yet sure if this is a complete implementation, no
external interrupts are currently generated, possibly due to PCI configuration
issues, to resolve separately.
Diff Detail
- Repository
- rS FreeBSD src repository - subversion
- Lint
Lint Passed - Unit
No Test Coverage - Build Status
Buildable 16456 Build 16375: arc lint + arc unit
Event Timeline
Tested with extra printfs last night, and saw no dispatches on IPI, but IPI sends. Something's not quite right yet, so more work is needed.
Hi Justin,
I put some comments regarding OPAL_ definition I was not able to find in this patch and even on the FreeBSD HEAD repository.
sys/powerpc/pseries/xics.c | ||
---|---|---|
221 | Justin, I am not able to find the declaration of OPAL_XIVE_RESET. I just rebased my tree, and I still do not find this declaration. The same thing seems to happen with OPAL_INT_GET_XIRR, OPAL_INT_EOI , OPAL_INT_SET_MFRR and OPAL_INT_SET_CPPR. Where did these definitions come from? |
Add the OPAL definitions. There's also some printf debugging in here, which will go away when I figure out what's going wrong.