From: Magnus Damm <damm+rene...@opensource.se>
Update the IPMMU DT binding documentation to include the compat strings
for the IPMMU devices included in the R-Car V3H and E3 SoCs.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Developed on top of renesas-drivers-2018
From: Magnus Damm <damm+rene...@opensource.se>
Update the IPMMU DT binding documentation to include the r8a77965 compat
string for the IPMMU devices included in the R-Car M3-N SoC.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Documentation/devicetree/bindings/iommu/r
Hi Robin,
On Tue, Jun 20, 2017 at 2:19 AM, Robin Murphy <robin.mur...@arm.com> wrote:
> On 19/06/17 10:14, Magnus Damm wrote:
>> From: Magnus Damm <damm+rene...@opensource.se>
>>
>> Add root device handling to the IPMMU driver by allowing certa
From: Magnus Damm <damm+rene...@opensource.se>
Introduce a feature to allow opt-out of setting up
IMBUSCR. The default case is unchanged.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Changes since V4:
- Use leaf node mmu instead of root
Changes since V3:
- No
From: Magnus Damm <damm+rene...@opensource.se>
Tie in r8a7795 features and update the IOMMU_OF_DECLARE
compat string to include the updated compat string.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Changes since V4:
- Got rid of root device availability chec
From: Magnus Damm <damm+rene...@opensource.se>
Introduce support for two bit SL0 bitfield in IMTTBCR
by using a separate feature flag.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Changes since V4:
- Use leaf node mmu instead of root
Changes since V3:
- None
C
From: Magnus Damm <damm+rene...@opensource.se>
Write IMCTR both in the root device and the leaf node.
To allow access of IMCTR introduce the following function:
- ipmmu_ctx_write_all()
While at it also rename context functions:
- ipmmu_ctx_read() -> ipmmu_ctx_read_root()
- ipmmu_
From: Magnus Damm <damm+rene...@opensource.se>
The r8a7795 IPMMU supports 40-bit bus mastering. Both
the coherent DMA mask and the streaming DMA mask are
set to unlock the 40-bit address space for coherent
allocations and streaming operations.
Signed-off-by: Magnus Damm <
From: Magnus Damm <damm+rene...@opensource.se>
Hook up IOMMU_OF_DECLARE() support in case CONFIG_IOMMU_DMA
is enabled. The only current supported case for 32-bit ARM
is disabled, however for 64-bit ARM usage of OF is required.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
-
From: Magnus Damm <damm+rene...@opensource.se>
Add root device handling to the IPMMU driver by allowing certain
DT compat strings to enable has_cache_leaf_nodes that in turn will
support both root devices with interrupts and leaf devices that
face the actual IPMMU consumer devices.
Sign
From: Magnus Damm <damm+rene...@opensource.se>
Add support for up to 8 contexts. Each context is mapped to one
domain. One domain is assigned one or more slave devices. Contexts
are allocated dynamically and slave devices are grouped together
based on which IPMMU device they are con
From: Magnus Damm <damm+rene...@opensource.se>
Introduce struct ipmmu_features to track various hardware
and software implementation changes inside the driver for
different kinds of IPMMU hardware. Add use_ns_alias_offset
as a first example of a feature to control if the secure
registe
-bit ARM update V2
- Reworked root device handling to make use of driver_for_each_device()
- Added deferred probing to make sure root device always is present
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Developed on top of next-20171013
Also applies to renesas-drivers
From: Magnus Damm <damm+rene...@opensource.se>
Update the IPMMU DT binding documentation to include the r8a7796 compat
string for the IPMMU devices included in the R-Car M3-W SoC.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
Acked-by: Laurent Pinchart &l
From: Magnus Damm <damm+rene...@opensource.se>
Update the IPMMU DT binding documentation to include the r8a77970 compat
string for the IPMMU devices included in the R-Car V3M SoC.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Documentation/devicetree/bindings/iommu/r
From: Magnus Damm <damm+rene...@opensource.se>
Update the IPMMU DT binding documentation to include the r8a77995 compat
string for the IPMMU devices included in the R-Car D3 SoC.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Documentation/devicetree/bindings/iommu/r
for the following SoCs:
- R-Car M3-W - R8A7796
- R-Car V3M - R8A77970
- R-Car D3 - R8A77995
Patch 1/3 is ready for upstream merge and includes the following tags:
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
Acked-by: Laurent Pinchart <laurent.pinch...@ideasonboard.com>
A
From: Magnus Damm <damm+rene...@opensource.se>
Extend the driver to make use of iommu_device_sysfs_add()/remove()
functions to hook up initial sysfs support.
Suggested-by: Joerg Roedel <jroe...@suse.de>
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Applies on to
Signed-off-by: Robin Murphy <robin.mur...@arm.com>
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Change since V1:
- New patch
drivers/iommu/ipmmu-vmsa.c | 12
1 file changed, 12 deletions(-)
--- 0008/drivers/iommu/ipmmu-vmsa.c
+++ work/drivers/iommu/ipmmu-
From: Magnus Damm <damm+rene...@opensource.se>
Now when both 32-bit and 64-bit code inside the driver is using
fwspec it is possible to replace the utlb handling with fwspec ids
that get populated from ->of_xlate().
Suggested-by: Robin Murphy <robin.mur...@arm.com>
Signed-off-
ed-off-by: Robin Murphy <robin.mur...@arm.com>
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Changes since V1:
- Rebased to apply on top of earlier changes in series
drivers/iommu/ipmmu-vmsa.c | 21 +++--
1 file changed, 3 insertions(+), 18 deletions(-)
---
From: Magnus Damm <damm+rene...@opensource.se>
The 32-bit ARM code gets updated to make use of ->of_xlate() and the
code is shared between 64-bit and 32-bit ARM. The of_device_is_available()
check gets dropped since it is included in of_iommu_xlate().
Suggested-by: Robin Murphy &
From: Magnus Damm <damm+rene...@opensource.se>
Extend the driver to make use of iommu_device_register()/unregister()
functions together with iommu_device_set_ops() and iommu_set_fwnode().
These used to be part of the earlier posted 64-bit ARM (r8a7795) series but
it turns out that thes
ted-by: Robin Murphy <robin.mur...@arm.com> (Patch 2 and 4)
Signed-off-by: Robin Murphy <robin.mur...@arm.com> (Patch 3 and 5)
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Changes since V1:
- Minor changes to patch 1 and 2 - thanks Robin and Geert!
- Added patch
From: Magnus Damm <damm+rene...@opensource.se>
Support the r8a7796 IPMMU by sharing feature flags between
r8a7795 and r8a7796. Also update IOMMU_OF_DECLARE to hook
up the updated compat string.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
Reviewed-by: Geert Uytterhoeven
for upstream merge and includes the following tags:
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
Acked-by: Laurent Pinchart <laurent.pinch...@ideasonboard.com>
Acked-by: Rob Herring <r...@kernel.org>
Acked-by: Simon Horman <horms+rene...@verge.net.au>
Acked-by: Geert
From: Magnus Damm <damm+rene...@opensource.se>
Update the IPMMU DT binding documentation to include the r8a7796 compat
string for R-Car M3-W.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
Acked-by: Laurent Pinchart <laurent.pinch...@ideasonboard.com>
Acked-
From: Magnus Damm <damm+rene...@opensource.se>
Bump up the maximum numbers of micro-TLBS to 48.
Each IPMMU device instance get micro-TLB assignment via
the "iommus" property in DT. Older SoCs tend to use a
maximum number of 32 micro-TLBs per IPMMU instance however
newer SoCs such
From: Magnus Damm <damm+rene...@opensource.se>
Tie in r8a7795 features and update the IOMMU_OF_DECLARE
compat string to include the updated compat string.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Changes since V3:
- Rebased code on top of
[PATCH 00/04] iomm
From: Magnus Damm <damm+rene...@opensource.se>
Introduce support for two bit SL0 bitfield in IMTTBCR
by using a separate feature flag.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Changes since V3:
- None
Changes since V2:
- None
Changes since V1:
- None
d
From: Magnus Damm <damm+rene...@opensource.se>
Write IMCTR both in the root device and the leaf node.
To allow access of IMCTR introduce the following function:
- ipmmu_ctx_write_all()
While at it also rename context functions:
- ipmmu_ctx_read() -> ipmmu_ctx_read_root()
- ipmmu_
From: Magnus Damm <damm+rene...@opensource.se>
Introduce a feature to allow opt-out of setting up
IMBUSCR. The default case is unchanged.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Changes since V3:
- None
Changes since V2:
- None
Changes since V1:
- Update
From: Magnus Damm <damm+rene...@opensource.se>
Add support for up to 8 contexts. Each context is mapped to one
domain. One domain is assigned one or more slave devices. Contexts
are allocated dynamically and slave devices are grouped together
based on which IPMMU device they are con
From: Magnus Damm <damm+rene...@opensource.se>
Hook up IOMMU_OF_DECLARE() support in case CONFIG_IOMMU_DMA
is enabled. The only current supported case for 32-bit ARM
is disabled, however for 64-bit ARM usage of OF is required.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
-
se of iommu_device_* functions
- Patch 5/9 sets the mask to 40 bits instead of 64 bits
- Patch 9/9 implements white list handling via ->xlate() and fixes a bug
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Developed on top of next-20170614 with the following series applied
[PA
From: Magnus Damm <damm+rene...@opensource.se>
Introduce struct ipmmu_features to track various hardware
and software implementation changes inside the driver for
different kinds of IPMMU hardware. Add use_ns_alias_offset
as a first example of a feature to control if the secure
registe
From: Magnus Damm <damm+rene...@opensource.se>
Add root device handling to the IPMMU driver by allowing certain
DT compat strings to enable has_cache_leaf_nodes that in turn will
support both root devices with interrupts and leaf devices that
face the actual IPMMU consumer devices.
Sign
Hi Geert,
On Fri, Jun 16, 2017 at 4:18 PM, Geert Uytterhoeven
<ge...@linux-m68k.org> wrote:
> Hi Magnus,
>
> On Thu, Jun 15, 2017 at 12:29 PM, Magnus Damm <magnus.d...@gmail.com> wrote:
>> Now when both 32-bit and 64-bit code inside the driver is using
>> fwspec i
From: Magnus Damm <damm+rene...@opensource.se>
Now when both 32-bit and 64-bit code inside the driver is using
fwspec it is possible to replace the utlb handling with fwspec ids
that get populated from ->of_xlate().
Suggested-by: Robin Murphy <robin.mur...@arm.com>
Signed-off-
From: Magnus Damm <damm+rene...@opensource.se>
The 32-bit ARM code gets updated to make use of ->of_xlate() and the
code is shared between 64-bit and 32-bit ARM. The of_device_is_available()
check gets dropped since it is included in of_iommu_xlate().
Suggested-by: Robin Murphy &
ed-off-by: Robin Murphy <robin.mur...@arm.com>
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
drivers/iommu/ipmmu-vmsa.c | 21 +++--
1 file changed, 3 insertions(+), 18 deletions(-)
--- 0010/drivers/iommu/ipmmu-vmsa.c
+++ work/drivers/iommu/ipmmu-vmsa.c
From: Magnus Damm <damm+rene...@opensource.se>
Extend the driver to make use of iommu_device_register()/unregister()
functions together with iommu_device_set_ops() and iommu_set_fwnode().
These used to be part of the earlier posted 64-bit ARM (r8a7795) series but
it turns out that thes
by: Robin Murphy <robin.mur...@arm.com> (Patch 3)
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Developed on renesas-drivers-2017-06-13-v4.12-rc5 and rebased to next-20170614
drivers/iommu/ipmmu-vmsa.c | 186 +++-
1 file c
Hi Joerg,
On Wed, May 17, 2017 at 10:18 PM, Joerg Roedel <j...@8bytes.org> wrote:
> On Wed, May 17, 2017 at 07:29:12PM +0900, Magnus Damm wrote:
>> From: Magnus Damm <damm+rene...@opensource.se>
>>
>> Checkpatch dislikes the type unsigned, so update the iommu
&g
Hi Robin,
On Wed, May 17, 2017 at 11:29 PM, Robin Murphy <robin.mur...@arm.com> wrote:
> Hi Magnus,
>
> On 17/05/17 11:07, Magnus Damm wrote:
>> From: Magnus Damm <damm+rene...@opensource.se>
>>
>> Convert from archdata to iommu_priv via iommu_fwspec on AR
From: Magnus Damm <damm+rene...@opensource.se>
Checkpatch dislikes the type unsigned, so update the iommu
domain type and consumers to use unsigned int to reduce noise.
$ ./scripts/checkpatch.pl
../linux-v4.13-pre-drivers-iommu-ipmmu-dma-ops-20170517b.patch
WARNING: Prefer 'unsign
From: Magnus Damm <damm+rene...@opensource.se>
Neither the ARM page table code enabled by IOMMU_IO_PGTABLE_LPAE
nor the IPMMU_VMSA driver actually depends on ARM_LPAE, so get
rid of the dependency.
Tested with ipmmu-vmsa on r8a7794 ALT and a kernel config using:
# CONFIG_ARM_LPAE is n
From: Magnus Damm <damm+rene...@opensource.se>
Fix comma-instead-of-semicolon typo error present
in the latest version of the IPMMU driver.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Earlier posted as:
[PATCH] iommu/ipmmu-vmsa: Fix pgsize_bitmap semicolon typo
d
From: Magnus Damm <damm+rene...@opensource.se>
Convert from archdata to iommu_priv via iommu_fwspec on ARM64 but
let 32-bit ARM keep on using archdata for now.
Once the 32-bit ARM code and the IPMMU driver is able to move over
to CONFIG_IOMMU_DMA=y then coverting to fwspec via ->
From: Magnus Damm <damm+rene...@opensource.se>
Break out the domain allocation code into a separate function.
This is preparation for future code sharing.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
Reviewed-by: Joerg Roedel <jroe...@suse.de>
Reviewed-by: Geert U
From: Magnus Damm <damm+rene...@opensource.se>
The IPMMU driver is using DT these days, and platform data is no longer
used by the driver. Remove unused code.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
Reviewed-by: Laurent Pinchart <laurent.pinch...@ideasonboar
ial series
- Updated bitmap code locking and also used lighter bitop functions
- Updated the Kconfig bits to apply on top of ARCH_RENESAS
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Developed on top of a95cfad (v4.12-rc1 + fixes):
Compile tested on 32-bit and 64-bit ARM
From: Magnus Damm <damm+rene...@opensource.se>
Introduce a bitmap for context handing and convert the
interrupt routine to handle all registered contexts.
At this point the number of contexts are still limited.
Also remove the use of the ARM specific mapping variable
from ipmmu_irq() to
From: Magnus Damm <damm+rene...@opensource.se>
Introduce an alternative set of iommu_ops suitable for 64-bit ARM
as well as 32-bit ARM when CONFIG_IOMMU_DMA=y. Also adjust the
Kconfig to depend on ARM or IOMMU_DMA. Initialize the device
from ->xlate() when CONFIG_IOMMU_DMA=y.
S
From: Magnus Damm <damm+rene...@opensource.se>
Break out the utlb parsing code and dev_data allocation into a
separate function. This is preparation for future code sharing.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
Reviewed-by: Joerg Roedel <jroe...@suse.de>
---
Hi Geert, everyone,
On Fri, May 5, 2017 at 10:23 PM, Geert Uytterhoeven
wrote:
> Hi Sricharan, Robin,
>
> On Wed, May 3, 2017 at 12:24 PM, Sricharan R wrote:
>> On 5/3/2017 3:24 PM, Robin Murphy wrote:
>>> On 02/05/17 19:35, Geert Uytterhoeven
From: Magnus Damm <damm+rene...@opensource.se>
Fix comman-instead-of-semicolon typo error present
in the latest version of the IPMMU driver.
Will in the future be rolled into next driver update.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Applies on top of renesas-
From: Magnus Damm <damm+rene...@opensource.se>
Bump up the maximum numbers of micro-TLBS to 48.
Each IPMMU device instance get micro-TLB assignment via
the "iommus" property in DT. Older SoCs tend to use a
maximum number of 32 micro-TLBs per IPMMU instance however
newer SoCs such
From: Magnus Damm <damm+rene...@opensource.se>
Support the r8a7796 IPMMU by sharing feature flags between
r8a7795 and r8a7796. Also update IOMMU_OF_DECLARE to hook
up the updated compat string.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Changes since V2:
- Update
Changes since V1:
- Patch 1/3 updated with more Acked-by tags
- Patch 2/3 updated with high I/O register range support
Patch 1/3 is ready for upstream merge and includes the following tags:
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
Acked-by: Laurent Pinchart <laur
From: Magnus Damm <damm+rene...@opensource.se>
Update the IPMMU DT binding documentation to include the r8a7796 compat
string for R-Car M3-W.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
Acked-by: Laurent Pinchart <laurent.pinch...@ideasonboard.com>
Acked-
Hi Geert,
On Wed, Mar 8, 2017 at 10:47 PM, Geert Uytterhoeven
<ge...@linux-m68k.org> wrote:
> Hi Magnus,
>
> On Wed, Mar 8, 2017 at 12:01 PM, Magnus Damm <magnus.d...@gmail.com> wrote:
>> From: Magnus Damm <damm+rene...@opensource.se>
>>
>> Add root de
Hi Geert,
On Wed, Mar 8, 2017 at 10:58 PM, Geert Uytterhoeven
<ge...@linux-m68k.org> wrote:
> Hi Magnus,
>
> On Wed, Mar 8, 2017 at 12:02 PM, Magnus Damm <magnus.d...@gmail.com> wrote:
>> From: Magnus Damm <damm+rene...@opensource.se>
>>
>> Tie in r8a
Hi Robin,
Thanks for your feedback!
On Wed, Mar 8, 2017 at 9:21 PM, Robin Murphy <robin.mur...@arm.com> wrote:
> On 08/03/17 11:01, Magnus Damm wrote:
>> From: Magnus Damm <damm+rene...@opensource.se>
>>
>> Add support for up to 8 contexts. Each context is ma
Hi Robin,
On Wed, Mar 8, 2017 at 8:53 PM, Robin Murphy <robin.mur...@arm.com> wrote:
> Hi Magnus,
>
> On 08/03/17 11:01, Magnus Damm wrote:
>> From: Magnus Damm <damm+rene...@opensource.se>
>>
>> Introduce struct ipmmu_features to track various hardware
Hi Robin,
On Wed, Mar 8, 2017 at 9:34 PM, Robin Murphy <robin.mur...@arm.com> wrote:
> On 08/03/17 11:02, Magnus Damm wrote:
>> From: Magnus Damm <damm+rene...@opensource.se>
>>
>> Write IMCTR both in the root device and the leaf node.
>>
>> Signed-of
Hi Geert,
On Wed, Mar 8, 2017 at 10:52 PM, Geert Uytterhoeven
<ge...@linux-m68k.org> wrote:
> Hi Magnus,
>
> On Wed, Mar 8, 2017 at 12:02 PM, Magnus Damm <magnus.d...@gmail.com> wrote:
>> From: Magnus Damm <damm+rene...@opensource.se>
>>
>&g
Hi Robin,
On Wed, Mar 8, 2017 at 9:48 PM, Robin Murphy <robin.mur...@arm.com> wrote:
> On 07/03/17 03:17, Magnus Damm wrote:
>> From: Magnus Damm <damm+rene...@opensource.se>
>>
>> Not all architectures have an iommu member in their archdata, so
>> use
From: Magnus Damm <damm+rene...@opensource.se>
Introduce support for two bit SL0 bitfield in IMTTBCR
by using a separate feature flag.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Changes since V2:
- None
Changes since V1:
- None
drivers/iommu/ipmmu-v
From: Magnus Damm <damm+rene...@opensource.se>
Tie in r8a7795 features and update the IOMMU_OF_DECLARE
compat string to include the updated compat string.
TODO:
- Consider making use of iommu_fwspec_add_ids() for uTLB handling
Needed to coexist with non-OF R-Car Gen2 somehow...
-
From: Magnus Damm <damm+rene...@opensource.se>
Introduce a feature to allow opt-out of setting up
IMBUSCR. The default case is unchanged.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Changes since V2:
- None
Changes since V1:
- Updated the commit message
- Re
From: Magnus Damm <damm+rene...@opensource.se>
Write IMCTR both in the root device and the leaf node.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Changes since V2:
- None
Changes since V1:
- None
drivers/iommu/ipmmu-vmsa.c | 17 ++---
1 file
From: Magnus Damm <damm+rene...@opensource.se>
The r8a7795 IPMMU supports 40-bit bus mastering. Both
the coherent DMA mask and the streaming DMA mask are
set to unlock the 40-bit address space for coherent
allocations and streaming operations.
Signed-off-by: Magnus Damm <
From: Magnus Damm <damm+rene...@opensource.se>
Hook up IOMMU_OF_DECLARE() support in case CONFIG_IOMMU_DMA
is enabled. The only current supported case for 32-bit ARM
is disabled, however for 64-bit ARM usage of OF is required.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
-
From: Magnus Damm <damm+rene...@opensource.se>
Add support for up to 8 contexts. Each context is mapped to one
domain. One domain is assigned one or more slave devices. Contexts
are allocated dynamically and slave devices are grouped together
based on which IPMMU device they are con
From: Magnus Damm <damm+rene...@opensource.se>
Add root device handling to the IPMMU driver by allowing certain
DT compat strings to enable has_cache_leaf_nodes that in turn will
support both root devices with interrupts and leaf devices that
face the actual IPMMU consumer devices.
Sign
multi-arch update V7
Changes since V2:
- Patch 2/9 has been updated with a bug fix and to supply __ipmmu_find_root()
- Patch 4/9 now makes use of iommu_device_* functions
- Patch 5/9 sets the mask to 40 bits instead of 64 bits
- Patch 9/9 implements white list handling via ->xlate() and fixes
From: Magnus Damm <damm+rene...@opensource.se>
Neither the ARM page table code enabled by IOMMU_IO_PGTABLE_LPAE
nor the IPMMU_VMSA driver actually depends on ARM_LPAE, so get
rid of the dependency.
Tested with ipmmu-vmsa on r8a7794 ALT and a kernel config using:
# CONFIG_ARM_LPAE is n
From: Magnus Damm <damm+rene...@opensource.se>
Introduce an alternative set of iommu_ops suitable for 64-bit ARM
as well as 32-bit ARM when CONFIG_IOMMU_DMA=y. Also adjust the
Kconfig to depend on ARM or IOMMU_DMA. Initialize the device
from ->xlate() when CONFIG_IOMMU_DMA=y.
S
From: Magnus Damm <damm+rene...@opensource.se>
Not all architectures have an iommu member in their archdata, so
use #ifdefs support build with COMPILE_TEST on any architecture.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
Reviewed-by: Joerg Roedel <jroe...@suse.de>
From: Magnus Damm <damm+rene...@opensource.se>
Introduce a bitmap for context handing and convert the
interrupt routine to handle all registered contexts.
At this point the number of contexts are still limited.
Also remove the use of the ARM specific mapping variable
from ipmmu_irq() to
From: Magnus Damm <damm+rene...@opensource.se>
Break out the domain allocation code into a separate function.
This is preparation for future code sharing.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
Reviewed-by: Joerg Roedel <jroe...@suse.de>
---
Changes since V6:
From: Magnus Damm <damm+rene...@opensource.se>
Break out the utlb parsing code and dev_data allocation into a
separate function. This is preparation for future code sharing.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
Reviewed-by: Joerg Roedel <jroe...@suse.de>
---
ial series
- Updated bitmap code locking and also used lighter bitop functions
- Updated the Kconfig bits to apply on top of ARCH_RENESAS
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Built on top v4.11-rc1:
drivers/iommu/Kconfig |2
drivers/iommu/ipmmu-vmsa
From: Magnus Damm <damm+rene...@opensource.se>
The IPMMU driver is using DT these days, and platform data is no longer
used by the driver. Remove unused code.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
Reviewed-by: Laurent Pinchart <laurent.pinch...@ideasonboar
On Fri, Jan 27, 2017 at 3:14 PM, Magnus Damm <magnus.d...@gmail.com> wrote:
> iommu/ipmmu-vmsa: IPMMU slave device whitelist V2
>
> [PATCH/RFC v2 1/4] iommu/of: Skip IOMMU devices disabled in DT
> [PATCH/RFC v2 2/4] iommu/ipmmu-vmsa: Get rid of disabled device check
> [PA
Hi Joerg,
On Fri, Jan 27, 2017 at 8:47 PM, Joerg Roedel <j...@8bytes.org> wrote:
> On Mon, Jan 23, 2017 at 08:40:29PM +0900, Magnus Damm wrote:
>> From: Magnus Damm <damm+rene...@opensource.se>
>>
>> Bump up the maximum numbers of micro-TLBS to 48.
>>
>
From: Magnus Damm <damm+rene...@opensource.se>
Introduce the flag "no_size_align" to allow disabling size-alignment
on a per-domain basis. This follows the suggestion by the comment
in the code, however a per-device control may be preferred?
Needed to make virtual space contig
From: Magnus Damm <damm+rene...@opensource.se>
Match on r8a7795 ES2 and enable a certain DMA controller.
In other cases the IPMMU driver remains disabled.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Changes since V1:
- Perform white list check in ->
From: Magnus Damm <damm+rene...@opensource.se>
Extend the shared IOMMU code to skip over ->xlate() in case the
IOMMU device pointed to by a slave device has been disabled in DT.
Difficult to trigger in case a single IOMMU device is used, however
when multiple IOMMUs are used and som
From: Magnus Damm <damm+rene...@opensource.se>
Rework the IPMMU code to validate devices in ->xlate() instead of
accepting all devices in xlate() and instead validating devices
in ->add_device(). This makes it possible for the IPMMU device
driver to reject slave devices based on sof
From: Magnus Damm <damm+rene...@opensource.se>
Since of_iommu_configure() now skips over disabled devices
we can simply drop this check in the IPMMU driver.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
drivers/iommu/ipmmu-vmsa.c |7 ---
1 file changed,
he future if agreed on be rolled into the IPMMU driver series.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
Developed on top of renesas-drivers-2017-01-24-v4.10-rc5
drivers/iommu/ipmmu-vmsa.c | 59 +++-
drivers/iommu/of_iommu.c |2 -
Hi Geert,
On Thu, Jan 26, 2017 at 6:53 PM, Geert Uytterhoeven
wrote:
> Currently, the IPMMU/VMSA driver supports 32-bit I/O Virtual Addresses
> only, and thus sets io_pgtable_cfg.ias = 32. However, it doesn't force
> a 32-bit IOVA space through the IOMMU Domain
Hi Robin, Shimoda-san, everyone,
Thanks for your feedback!
On Thu, Jan 26, 2017 at 1:38 AM, Robin Murphy <robin.mur...@arm.com> wrote:
> On 25/01/17 12:54, Yoshihiro Shimoda wrote:
>> From: Magnus Damm <damm+rene...@opensource.se>
>>
>> To add a workaround code
Hi Robin, Shimoda-san, everyone,
On Thu, Jan 26, 2017 at 1:27 AM, Robin Murphy <robin.mur...@arm.com> wrote:
> On 25/01/17 12:53, Yoshihiro Shimoda wrote:
>> From: Magnus Damm <damm+rene...@opensource.se>
>>
>> To track mapped iova for a workaround code in the fu
Hi Robin,
On Mon, Jan 23, 2017 at 9:34 PM, Robin Murphy <robin.mur...@arm.com> wrote:
> Hi Magnus,
>
> On 23/01/17 12:12, Magnus Damm wrote:
>> From: Magnus Damm <damm+rene...@opensource.se>
>>
>> Consider failure of iommu_get_domain_for_dev() as non
Hi Geert,
On Mon, Jan 23, 2017 at 9:50 PM, Geert Uytterhoeven
<ge...@linux-m68k.org> wrote:
> Hi Magnus,
>
> On Mon, Jan 23, 2017 at 1:12 PM, Magnus Damm <magnus.d...@gmail.com> wrote:
>> From: Magnus Damm <damm+rene...@opensource.se>
>>
>> Match on r8
From: Magnus Damm <damm+rene...@opensource.se>
Match on r8a7795 ES2 and enable a certain DMA controller.
In other cases the IPMMU driver remains disabled.
Signed-off-by: Magnus Damm <damm+rene...@opensource.se>
---
drivers/iommu/ipmmu-vmsa.c | 24
1 file
From: Magnus Damm <damm+rene...@opensource.se>
Consider failure of iommu_get_domain_for_dev() as non-critical and
get rid of the warning printout. This allows IOMMU properties to be
included in the DTB even though the kernel is configured with
CONFIG_IOMMU_API=n or in case a particular
1 - 100 of 201 matches
Mail list logo