| 5e2183da | 14-Jan-2014 |
Julien Grall <[email protected]> |
xen/intr: move sys/x86/xen/xen_intr.c to sys/dev/xen/bus/
The event channel source code or equivalent is needed on all architectures. Since much of this is viable to share, get this moved out of x8
xen/intr: move sys/x86/xen/xen_intr.c to sys/dev/xen/bus/
The event channel source code or equivalent is needed on all architectures. Since much of this is viable to share, get this moved out of x86-land. Each interrupt interface then needs a distinct back-end implementation.
Reviewed by: royger Submitted by: Elliott Mitchell <[email protected]> Original implementation: Julien Grall <[email protected]>, 2014-01-13 17:41:04 Differential Revision: https://reviews.freebsd.org/D30236
show more ...
|
| 6699c22c | 14-May-2021 |
Elliott Mitchell <[email protected]> |
xen/intr: move interrupt allocation/release to architecture
Simply moving the interrupt allocation and release functions into files which belong to the architecture. Since x86 interrupt handling is
xen/intr: move interrupt allocation/release to architecture
Simply moving the interrupt allocation and release functions into files which belong to the architecture. Since x86 interrupt handling is quite distinct from other architectures, this is a crucial necessary step.
Identifying the border between x86 and architecture-independent is actually quite tricky. Similarly, getting the prototypes for the border right is also quite tricky.
Inspired by the work of Julien Grall <[email protected]>, 2015-10-20 09:14:56, but heavily adjusted.
Reviewed by: royger Differential Revision: https://reviews.freebsd.org/D30936
show more ...
|
| 2d795ab1 | 20-Oct-2015 |
Julien Grall <[email protected]> |
xen/intr: move x86 PIC interface to xen_arch_intr.c, introduce wrappers
The x86 PIC interface is very much x86-specific and not used by other architectures. Since most of xen_intr.c can be shared w
xen/intr: move x86 PIC interface to xen_arch_intr.c, introduce wrappers
The x86 PIC interface is very much x86-specific and not used by other architectures. Since most of xen_intr.c can be shared with other architectures, the PIC interface needs to be broken off.
Introduce wrappers for calls into the architecture-dependent interrupt layer. All architectures need roughly the same functionality, but the interface is slightly different between architectures. Due to the wrappers being so thin, all of them are implemented as inline in arch-intr.h.
The original implementation was done by Julien Grall in 2015, but this has required major updating.
Removal of PVHv1 meant substantial portions disappeared. The original implementation took care of moving interrupt allocation to xen_arch_intr.c, but this has required massive rework and was broken off.
In the original implementation the wrappers were normal functions. Some had empty stubs in xen_intr.c and were removed.
Reviewed by: royger Submitted by: Elliott Mitchell <[email protected]> Original implementation: Julien Grall <[email protected]>, 2015-10-20 09:14:56 Differential Revision: https://reviews.freebsd.org/D30909
show more ...
|
| d32d6527 | 08-Nov-2021 |
Elliott Mitchell <[email protected]> |
xen/intr: move evtchn_type to intr-internal.h
The evtchn_type enum is only touched by the Xen interrupt code. Other event channel uses no longer need the value, so that has been moved to restrict i
xen/intr: move evtchn_type to intr-internal.h
The evtchn_type enum is only touched by the Xen interrupt code. Other event channel uses no longer need the value, so that has been moved to restrict its use.
Copyright note. The current evtchn_type was introduced at 76acc41fb7c7 by Justin T. Gibbs. This in turn appears to have been heavily inspired by 30d1eefe3937 done by Kip Macy.
Reviewed by: royger
show more ...
|
| b6ff9345 | 06-Apr-2021 |
Elliott Mitchell <[email protected]> |
xen: create VM_MEMATTR_XEN for Xen memory mappings
The requirements for pages shared with Xen/other VMs may vary from architecture to architecture. As such create a macro which various architecture
xen: create VM_MEMATTR_XEN for Xen memory mappings
The requirements for pages shared with Xen/other VMs may vary from architecture to architecture. As such create a macro which various architectures can use.
Remove a use of PAT_WRITE_BACK in xenstore.c. This is a x86-ism which shouldn't have been present in a common area.
Original idea: Julien Grall <[email protected]>, 2014-01-14 06:44:08 Approach suggested by: royger Reviewed by: royger, mhorne Differential Revision: https://reviews.freebsd.org/D29351
show more ...
|