9bde7f0674
hw/arm/smmuv3: Implement translate callback
...
This patch implements the IOMMU Memory Region translate()
callback. Most of the code relates to the translation
configuration decoding and check (STE, CD).
Signed-off-by: Eric Auger <eric.auger@redhat.com >
Signed-off-by: Prem Mallappa <prem.mallappa@broadcom.com >
Message-id: 1524665762-31355-10-git-send-email-eric.auger@redhat.com
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-04 18:51:25 +01:00
bb981004ea
hw/arm/smmuv3: Event queue recording helper
...
Let's introduce a helper function aiming at recording an
event in the event queue.
Signed-off-by: Eric Auger <eric.auger@redhat.com >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Message-id: 1524665762-31355-9-git-send-email-eric.auger@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-04 18:51:23 +01:00
fae4be38b3
hw/arm/smmuv3: Implement MMIO write operations
...
Now we have relevant helpers for queue and irq
management, let's implement MMIO write operations.
Signed-off-by: Eric Auger <eric.auger@redhat.com >
Signed-off-by: Prem Mallappa <prem.mallappa@broadcom.com >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Message-id: 1524665762-31355-8-git-send-email-eric.auger@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-04 18:49:48 +01:00
dadd1a0809
hw/arm/smmuv3: Queue helpers
...
We introduce helpers to read/write into the command and event
circular queues.
smmuv3_write_eventq and smmuv3_cmq_consume will become static
in subsequent patches.
Invalidation commands are not yet dealt with. We do not cache
data that need to be invalidated. This will change with vhost
integration.
Signed-off-by: Eric Auger <eric.auger@redhat.com >
Signed-off-by: Prem Mallappa <prem.mallappa@broadcom.com >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Message-id: 1524665762-31355-7-git-send-email-eric.auger@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-04 18:49:21 +01:00
6a736033d3
hw/arm/smmuv3: Wired IRQ and GERROR helpers
...
We introduce some helpers to handle wired IRQs and especially
GERROR interrupt. SMMU writes GERROR register on GERROR event
and SW acks GERROR interrupts by setting GERRORn.
The Wired interrupts are edge sensitive hence the pulse usage.
Signed-off-by: Eric Auger <eric.auger@redhat.com >
Signed-off-by: Prem Mallappa <prem.mallappa@broadcom.com >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Message-id: 1524665762-31355-6-git-send-email-eric.auger@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-04 18:49:18 +01:00
10a83cb988
hw/arm/smmuv3: Skeleton
...
This patch implements a skeleton for the smmuv3 device.
Datatypes and register definitions are introduced. The MMIO
region, the interrupts and the queue are initialized.
Only the MMIO read operation is implemented here.
Signed-off-by: Prem Mallappa <prem.mallappa@broadcom.com >
Signed-off-by: Eric Auger <eric.auger@redhat.com >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Message-id: 1524665762-31355-5-git-send-email-eric.auger@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-04 18:49:10 +01:00
93641948d4
hw/arm/smmu-common: VMSAv8-64 page table walk
...
This patch implements the page table walk for VMSAv8-64.
Signed-off-by: Eric Auger <eric.auger@redhat.com >
Signed-off-by: Prem Mallappa <prem.mallappa@broadcom.com >
Message-id: 1524665762-31355-4-git-send-email-eric.auger@redhat.com
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-04 18:05:51 +01:00
cac994ef43
hw/arm/smmu-common: IOMMU memory region and address space setup
...
We set up the infrastructure to enumerate all the PCI devices
attached to the SMMU and create an associated IOMMU memory
region and address space.
Those info are stored in SMMUDevice objects. The devices are
grouped according to the PCIBus they belong to. A hash table
indexed by the PCIBus pointer is used. Also an array indexed by
the bus number allows to find the list of SMMUDevices.
Signed-off-by: Eric Auger <eric.auger@redhat.com >
Signed-off-by: Prem Mallappa <prem.mallappa@broadcom.com >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Message-id: 1524665762-31355-3-git-send-email-eric.auger@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2018-05-04 18:05:51 +01:00
87e0331c5a
docs: fix broken paths to docs/devel/tracing.txt
...
With the move of some docs/ to docs/devel/ on ac06724a71
,
no references were updated.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com >
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru >
2017-07-31 13:12:53 +03:00
e723b87103
trace-events: fix first line comment in trace-events
...
Documentation is docs/tracing.txt instead of docs/trace-events.txt.
find . -name trace-events -exec \
sed -i "s?See docs/trace-events.txt for syntax documentation.?See docs/tracing.txt for syntax documentation.?" \
{} \;
Signed-off-by: Laurent Vivier <lvivier@redhat.com >
Message-id: 1470669081-17860-1-git-send-email-lvivier@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-08-12 10:36:01 +01:00
0b8276d644
trace: split out trace events for hw/arm/ directory
...
Move all trace-events for files in the hw/arm/ directory to
their own file.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com >
Message-id: 1466066426-16657-32-git-send-email-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com >
2016-06-20 17:22:16 +01:00