On 2021/2/25 1:20, Alexandru Elisei wrote:
Hi,
On 2/24/21 2:35 AM, wangyanan (Y) wrote:
Hi Alex,
On 2021/2/23 23:55, Alexandru Elisei wrote:
Hi Yanan,
I wanted to review the patches, but unfortunately I get an error when trying to
apply the first patch in the series:
Applying: KVM: arm64:
Using the RTC device at its legacy I/O address as set by IBM in 1981
was a kludge we used for simplicity on ARM platforms as well.
However this imposes problems due to their missing alignment and overlap
with the PCI I/O address space.
Now that we can switch a device easily between using ioports a
Using the UART devices at their legacy I/O addresses as set by IBM in
1981 was a kludge we used for simplicity on ARM platforms as well.
However this imposes problems due to their missing alignment and overlap
with the PCI I/O address space.
Now that we can switch a device easily between using iop
The hardcoded memory map we expose to a guest is currently described
using a series of partially interconnected preprocessor constants,
which is hard to read and follow.
In preparation for moving the UART and RTC to some different MMIO
region, document the current map with some ASCII art, and clea
Now that all users of the dedicated ioport trap handler interface are
gone, we can retire the code associated with it.
This removes ioport.c and ioport.h, along with removing prototypes from
other header files.
This also transfers the responsibility for port I/O trap handling
entirely into the ne
With the planned retirement of the special ioport emulation code, we
need to provide an emulation function compatible with the MMIO prototype.
Merge the existing _in and _out handlers to adhere to that MMIO
interface, and register these using the new registration function.
Signed-off-by: Andre Pr
With the planned retirement of the special ioport emulation code, we
need to provide an emulation function compatible with the MMIO prototype.
Adjust the existing MMIO callback routine to automatically determine
the region this trap came through, and call the existing I/O handlers.
Register the io
Now that the vfio device has a trap handler adhering to the MMIO fault
handler prototype, let's switch over to the joint registration routine.
This allows us to get rid of the ioport shim routines.
Signed-off-by: Andre Przywara
Reviewed-by: Alexandru Elisei
---
vfio/core.c | 37 ++-
Now that the serial device has a trap handler adhering to the MMIO fault
handler prototype, let's switch over to the joint registration routine.
This allows us to get rid of the ioport shim routines.
Signed-off-by: Andre Przywara
Reviewed-by: Alexandru Elisei
---
hw/serial.c | 31 +++--
With the planned retirement of the special ioport emulation code, we
need to provide an emulation function compatible with the MMIO prototype.
Adjust the I/O port trap handler to use that new function, and provide
shims to implement the old ioport interface, for now.
Signed-off-by: Andre Przywara
With the planned retirement of the special ioport emulation code, we
need to provide an emulation function compatible with the MMIO prototype.
Adjust the trap handler to use that new function, and provide shims to
implement the old ioport interface, for now.
We drop the usage of ioport__read8/wri
To be able to use the VESA device with the new generic I/O trap handler,
we need to use the different MMIO handler callback routine.
Replace the existing dummy in and out handlers with a joint dummy
MMIO handler, and register this using the new registration function.
Signed-off-by: Andre Przywara
Now that the RTC device has a trap handler adhering to the MMIO fault
handler prototype, let's switch over to the joint registration routine.
This allows us to get rid of the ioport shim routines.
Signed-off-by: Andre Przywara
Reviewed-by: Alexandru Elisei
---
hw/rtc.c | 21 ++-
With the planned retirement of the special ioport emulation code, we
need to provide emulation functions compatible with the MMIO prototype.
Merge the two different trap handlers into one function, checking for
read/write and data/index register inside.
Adjust the trap handlers to use that new fun
Now that the x86 I/O ports have trap handlers adhering to the MMIO fault
handler prototype, let's switch over to the joint registration routine.
This allows us to get rid of the ioport shim routines.
Since the debug output was done in ioport.c, we would lose this
functionality when moving over to
With the planned retirement of the special ioport emulation code, we
need to provide emulation functions compatible with the MMIO
prototype.
Adjust the trap handlers to use that new function, and provide shims to
implement the old ioport interface, for now.
Signed-off-by: Andre Przywara
Reviewed
Now that the PC keyboard has a trap handler adhering to the MMIO fault
handler prototype, let's switch over to the joint registration routine.
This allows us to get rid of the ioport shim routines.
Make the kbd_init() function static on the way.
Signed-off-by: Andre Przywara
---
hw/i8042.c
With the planned retirement of the special ioport emulation code, we
need to provide an emulation function compatible with the MMIO
prototype.
Adjust the trap handler to use that new function, and provide shims to
implement the old ioport interface, for now.
Signed-off-by: Andre Przywara
---
hw
The i8042 is clearly an 8-bit era device, so there is little room for
32-bit registers.
Clean up the data types used.
Signed-off-by: Andre Przywara
Reviewed-by: Alexandru Elisei
---
hw/i8042.c | 26 +-
1 file changed, 13 insertions(+), 13 deletions(-)
diff --git a/hw/i8
In their core functionality MMIO and I/O port traps are not really
different, yet we still have two totally separate code paths for
handling them. Devices need to decide on one conduit or need to provide
different handler functions for each of them.
Extend the existing MMIO emulation to also cover
The ioport routines support a special way of registering FDT node
generator functions. There is no reason to have this separate from the
already existing way via the device header.
Now that the only user of this special ioport variety has been
transferred, we can retire this code, to simplify iopo
At the moment we use the .generate_fdt_node member of the ioport ops
structure to store the function pointer for the FDT node generator
function. ioport__register() will then put a wrapper and this pointer
into the device header.
The serial device is the only device making use of this special iopor
Since x86 had a special need for registering tons of special I/O ports,
we had an ioport__setup_arch() callback, to allow each architecture
to do the same. As it turns out no one uses it beside x86, so we remove
that unnecessary abstraction.
The generic function was registered via a device_base_in
Compared to v1 this has a few fixes, as suggested by Alex.
There is a new patch 20/22, which cleans up the ARM memory map
definition and adds some chart to make it more obvious what is going on.
For a changelog, see below.
==
At the moment we use two separate code paths to handle exit
On Wed, 24 Feb 2021 17:21:22 +,
Alexandru Elisei wrote:
>
> Hello,
>
> On 2/8/21 11:22 AM, Yanan Wang wrote:
> > We currently uniformly clean dcache in user_mem_abort() before calling the
> > fault handlers, if we take a translation fault and the pfn is cacheable.
> > But if there are concur
Hello,
On 2/8/21 11:22 AM, Yanan Wang wrote:
> We currently uniformly clean dcache in user_mem_abort() before calling the
> fault handlers, if we take a translation fault and the pfn is cacheable.
> But if there are concurrent translation faults on the same page or block,
> clean of dcache for the
Hi,
On 2/24/21 2:35 AM, wangyanan (Y) wrote:
> Hi Alex,
>
> On 2021/2/23 23:55, Alexandru Elisei wrote:
>> Hi Yanan,
>>
>> I wanted to review the patches, but unfortunately I get an error when trying
>> to
>> apply the first patch in the series:
>>
>> Applying: KVM: arm64: Move the clean of dcac
On Mon, 22 Feb 2021 17:40:36 +
Alexandru Elisei wrote:
Hi Alex,
> On 2/18/21 2:41 PM, Andre Przywara wrote:
> > On Tue, 16 Feb 2021 14:22:05 +
> > Alexandru Elisei wrote:
> >
> >> Hi Andre,
> >>
> >> Patch looks good, nitpicks below.
> >>
> >> On 12/10/20 2:29 PM, Andre Przywara wrote
28 matches
Mail list logo