Hi Geert,
On Wed, Mar 8, 2017 at 10:47 PM, Geert Uytterhoeven
wrote:
> Hi Magnus,
>
> On Wed, Mar 8, 2017 at 12:01 PM, Magnus Damm wrote:
>> From: Magnus Damm
>>
>> Add root device handling to the IPMMU driver by allowing certain
>> DT compat strings to enable
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
Acked-by: Laurent Pinchart
Acked-by: Rob Herring
Acked-by: Simon Horman
From: Magnus Damm
Update the IPMMU DT binding documentation to include the r8a7796 compat
string for R-Car M3-W.
Signed-off-by: Magnus Damm
Acked-by: Laurent Pinchart
Acked-by: Rob Herring
Acked-by: Simon Horman
Acked-by: Geert Uytterhoeven
---
Changes since V2:
- None
Changes since
From: Magnus Damm
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 as r8a7796 make use of up to 48
From: Magnus Damm
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
---
Changes since V2:
- Updated to include white list suppport
Changes since V1:
- None
From: Magnus Damm
This experimental slow mode support code simply extends the MID/RID value
to allow encoding a 4-bit value in bit 8-11 to specify the SLM bit value.
With this value set the channel associated with the device will be processed
slower by the hardware. The idea is that the slow
From: Magnus Damm
The priority handling uses MID/RID values to determine if channels
below to RX or TX sides. The case of RX is unchanged and as low channel
number as possible is used to ensure high priority. New with this code
is that TX is allocated with highest channel number first to force
From: Magnus Damm
Experimental code to enable slow mode on r8a7795 for SCIF2 TX.
Not-Yet-Signed-off-by: Magnus Damm
---
arch/arm64/boot/dts/renesas/r8a7795.dtsi |2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- 0001/arch/arm64/boot/dts/renesas/r8a7795.dtsi
+++ work/arch/arm64
patch
These patches probably need a bit more effort to be beaten into shape
for upstream merge. So simply treat these as experimental test code.
Not-Yet-Signed-off-by: Magnus Damm
---
Developed on top of renesas-drivers-2017-02-21-v4.10
arch/arm64/boot/dts/renesas/r8a7795.dtsi |2
drivers
From: Magnus Damm
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.
Signed-off-by: Magnus Damm
---
Changes si
From: Magnus Damm
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 allow compile on ARM64.
Signed-off
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
---
Built on top v4.11-rc1:
drivers/iommu/Kconfig |2
drivers/iommu/ipmmu-vmsa.c |
From: Magnus Damm
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
Reviewed-by: Laurent Pinchart
Reviewed-by: Joerg Roedel
---
Changes since V6:
- None
drivers/iommu/ipmmu-vmsa.c |5 -
1
From: Magnus Damm
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
Reviewed-by: Joerg Roedel
---
Changes since V6:
- None
drivers/iommu/ipmmu-vmsa.c | 58
From: Magnus Damm
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 not set
Signed-off-by: Magnus Damm
From: Magnus Damm
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
Reviewed-by: Joerg Roedel
---
Changes since V6:
- Updated patch to handle newly introduced functions in:
[PATCH
From: Magnus Damm
Break out the domain allocation code into a separate function.
This is preparation for future code sharing.
Signed-off-by: Magnus Damm
Reviewed-by: Joerg Roedel
---
Changes since V6:
- None
drivers/iommu/ipmmu-vmsa.c | 13 +
1 file changed, 9 insertions
) Micro-TLB assignment
DT binding extension and change number 3 above are part of this patch
series. Other changes will be part of DT integration code that will be
submitted separately.
Signed-off-by: Magnus Damm
---
Developed on top of next-20160602 and:
[PATCH v3 00/06] iommu/ipmmu-vmsa
From: Magnus Damm
Update the IPMMU DT binding documentation to include the r8a7796 compat
string for R-Car M3-W.
Signed-off-by: Magnus Damm
---
Documentation/devicetree/bindings/iommu/renesas,ipmmu-vmsa.txt |1 +
1 file changed, 1 insertion(+)
--- 0001/Documentation/devicetree/bindings
From: Magnus Damm
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
---
drivers/iommu/ipmmu-vmsa.c |9 +++--
1 file changed, 7 insertions(+), 2 deletions
From: Magnus Damm
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-TLBd per IPMMU instance however
newer SoCs such as r8a7796 make use of up to 48
From: Magnus Damm
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
Reviewed-by: Laurent Pinchart
---
Changes since V3:
- None
Changes since V2:
- None
Changes since V1:
- Added Reviewed-by from
From: Magnus Damm
Break out the domain allocation code into a separate function.
This is preparation for future code sharing.
Signed-off-by: Magnus Damm
---
Changes since V3:
- None
Changes since V2:
- Included this new patch as-is from the following series:
[PATCH 00/04] iommu/ipmmu
From: Magnus Damm
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 allow compile on ARM64.
Signed-off
From: Magnus Damm
Not all architectures have an iommu member in their archdata, so
use #ifdefs support build wit COMPILE_TEST on any architecture.
Signed-off-by: Magnus Damm
---
Changes since V3:
- New patch
drivers/iommu/ipmmu-vmsa.c | 37 +++--
1 file
From: Magnus Damm
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 not set
Signed-off-by: Magnus Damm
From: Magnus Damm
Introduce an alternative set of iommu_ops suitable for 64-bit ARM
as well as 32-bit ARM when CONFIG_IOMMU_DMA=y.
Signed-off-by: Magnus Damm
---
Changes since V3:
- Removed group parameter from ipmmu_init_platform_device()
Changes since V2:
- Included this new patch from
From: Magnus Damm
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
---
Changes since V3:
- Initialize "mmu" to NULL, check before accessing
- Removed group para
to include patch 3 of the V1 of this series
Changes since V1:
- Got rid of patch 2 and 3 from initial 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
---
drivers/iommu/Kconfig
Hi Laurent,
On Wed, Jun 8, 2016 at 9:18 AM, Laurent Pinchart
wrote:
> Hi Magnus,
>
> Thank you for the patch.
>
> On Tuesday 07 Jun 2016 12:39:45 Magnus Damm wrote:
>> From: Magnus Damm
>>
>> Support the r8a7796 IPMMU by sharing feature flags between
&g
Hi Geert,
On Wed, Jun 8, 2016 at 4:04 PM, Geert Uytterhoeven wrote:
> Hi Laurent,
>
> On Wed, Jun 8, 2016 at 2:18 AM, Laurent Pinchart
> wrote:
>>> --- 0031/drivers/iommu/ipmmu-vmsa.c
>>> +++ work/drivers/iommu/ipmmu-vmsa.c 2016-06-06 11:19:40.210607110 +0900
>>> @@ -1074,7 +1074,7 @@ static c
Hi Laurent,
On Wed, Jun 8, 2016 at 5:48 PM, Laurent Pinchart
wrote:
> Hi Geert,
>
> On Wednesday 08 Jun 2016 09:04:17 Geert Uytterhoeven wrote:
>> On Wed, Jun 8, 2016 at 2:18 AM, Laurent Pinchart wrote:
>> >> --- 0031/drivers/iommu/ipmmu-vmsa.c
>> >> +++ work/drivers/iommu/ipmmu-vmsa.c 2016-06-
From: Magnus Damm
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
register bank offset should be used or not
4-bit ARM.
Compared to V1 the patches have been reordered and multi context
and iommu group code has been reworked. Now devices are grouped
together based on the IPMMU they are connected to. For detail
please see the change log in each individual patch.
Signed-off-by: Magnus Damm
---
Deve
From: Magnus Damm
Extend the IPMMU driver to group devices together based
on the IPMMU device they are connected to. The slave
devices are kept on a list which is used to determine
if existing groups (and contexts) exist.
With this patch the two SYS-DMAC devices using IPMMU-DS0
on r8a7795 will
From: Magnus Damm
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 this is required.
Signed-off-by: Magnus Damm
---
Changes since V1:
- Reworked slightly to fit updated patch order and
From: Magnus Damm
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.
Signed-off-by: Magnus Damm
---
Changes
From: Magnus Damm
Introduce a feature to allow opt-out of setting up
IMBUSCR. The default case is unchanged.
Signed-off-by: Magnus Damm
---
Changes since V1:
- Updated the commit message
- Reworked patch to coexist with the multi context feature
drivers/iommu/ipmmu-vmsa.c | 10
From: Magnus Damm
Add support for up to 8 contexts. Each context is mapped
to one domain. One domain is associated with each device,
however one or more uTLBs for a single device are kept
in the same domain.
Signed-off-by: Magnus Damm
---
Changes since V1:
- Support up to 8 contexts instead
From: Magnus Damm
Introduce support for two bit SL0 bitfield in IMTTBCR
by using a separate feature flag.
Signed-off-by: Magnus Damm
---
Changes since V1:
- None
drivers/iommu/ipmmu-vmsa.c | 15 ++-
1 file changed, 14 insertions(+), 1 deletion(-)
--- 0025/drivers/iommu
From: Magnus Damm
The ->xlate() call gets invoked even though the iommu
device has status = "disabled" in DT, so make sure we
skip over disabled devices.
In my mind it would make sense to have this at some
shared level, but I guess some users may want to
configure the iommu reg
From: Magnus Damm
Tie in r8a7795 features and update the IOMMU_OF_DECLARE
compat string to hook up the updated compat string.
TODO:
- Go over init order once more
- Consider counting number of IPMMU devices from ->xlate()
- Experiment with delaying call to bus_set_iommu()
Signed-off
From: Magnus Damm
The r8a7795 IPMMU supports 64-bit bus mastering. Both
the coherent DMA mask and the streaming DMA mask are
set to unlock the 64-bit address space for coherent
allocations and streaming operations.
Signed-off-by: Magnus Damm
---
Changes since V1:
- Updated the commit
From: Magnus Damm
Write IMCTR both in the root device and the leaf node.
Signed-off-by: Magnus Damm
---
Changes since V1:
- None
drivers/iommu/ipmmu-vmsa.c | 17 ++---
1 file changed, 14 insertions(+), 3 deletions(-)
--- 0021/drivers/iommu/ipmmu-vmsa.c
+++ work/drivers
From: Magnus Damm
Add documentation for new separate CMT0 and CMT1 DT compatible strings
for R-Car Gen2. These compat strings allow us to enable CMT1-specific
features in the driver. The old compat strings will be deprecated in
the not so distant future.
Signed-off-by: Magnus Damm
Acked-by
From: Magnus Damm
The deprecated DT properties are part of the GIT history,
no need to keep them around any longer.
Signed-off-by: Magnus Damm
Acked-by: Rob Herring
Acked-by: Geert Uytterhoeven
---
Changes since V3:
- None
Changes since V2:
- Added Acked-by from Rob
- Fixed properties
From: Magnus Damm
Remove the 32-bit CMT compat strings to reduce maintenance burden.
It should be fine to break DT compatibility because the 32-bit
32-bit CMT DT binding was never part of any upstream DTS file.
Signed-off-by: Magnus Damm
Acked-by: Rob Herring
Acked-by: Geert Uytterhoeven
From: Magnus Damm
Update SoC-specific bindings for r8a73a4 and R-Car Gen2 CMT0 and CMT1.
Signed-off-by: Magnus Damm
Acked-by: Geert Uytterhoeven
Acked-by: Laurent Pinchart
Acked-by: Rob Herring
---
Changes since V3:
- Fix trailing whitespace damage
Changes since V2:
- Added Acked-by
format based on
feedback. This new order makes the CMT match the majority of the other
on-chip devices, so "renesas,rcar-gen2-cmt0" is now used over earlier
version "renesas,cmt0-rcar-gen2". The acks have been kept as-is.
Many thanks to Geert, Laurent and Rob for their feedback!
From: Magnus Damm
Remove the sh7372 CMT compat string to reduce maintenance burden.
It should be fine to break DT compatibility because:
1) The sh7372 SoC support has been removed from upstream
2) The sh7372 CMT DT binding was never part of upstream DTS
3) The CMT driver never matches on the
From: Magnus Damm
Deprecate "renesas,channels-mask" and update the r8a7790 CMT example.
Signed-off-by: Magnus Damm
Acked-by: Geert Uytterhoeven
Acked-by: Laurent Pinchart
Acked-by: Rob Herring
---
Changes since V3:
- Update example to use new compat string format for fallba
Hi Sergei,
On Tue, Mar 15, 2016 at 2:21 AM, Sergei Shtylyov
wrote:
> Hello.
>
> On 03/14/2016 05:24 PM, Magnus Damm wrote:
>
>> From: Magnus Damm
>>
>> Remove the 32-bit CMT compat strings to reduce maintenance burden.
>>
>> It should be fine to break
Hi Laurent,
On Tue, Dec 29, 2015 at 9:14 AM, Laurent Pinchart
wrote:
> Hi Magnus,
>
> Thank you for the patch.
Thanks for your feedback!
> On Tuesday 15 December 2015 21:02:49 Magnus Damm wrote:
>> From: Magnus Damm
>>
>> Introduce a bitmap for context handin
From: Magnus Damm
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 this is required.
Signed-off-by: Magnus Damm
---
drivers/iommu/ipmmu-vmsa.c | 31 +++
1
. Also the DT documentation is extended with r8a7795
support.
Signed-off-by: Magnus Damm
---
Written against v4.3-rc3, thanks to Geert and Tglx for their help!
Documentation/devicetree/bindings/interrupt-controller/renesas,irqc.txt |1
drivers/irqchip/Kconfig
From: Magnus Damm
For some reason the name of the external interrupt controller
has changed name with r8a7795, so use "intc-ex" instead of "irqc"
as r8a7795 compat string to follow the friendly documentation.
Signed-off-by: Magnus Damm
Acked-by: Geert Uytterhoeven
--
From: Magnus Damm
Convert the IRQC driver to rely on GENERIC_IRQ_CHIP and
set IRQ_GC_INIT_NESTED_LOCK to enable nested locking.
Signed-off-by: Magnus Damm
---
Changes since V1:
- rebased on top of v4.3-rc3
- folded in the IRQ_GC_INIT_NESTED_LOCK bits
drivers/irqchip/Kconfig
Hi Thomas,
On Tue, Sep 22, 2015 at 7:56 PM, Thomas Gleixner wrote:
> On Thu, 17 Sep 2015, Geert Uytterhoeven wrote:
>> On Thu, Sep 17, 2015 at 9:57 AM, Simon Horman wrote:
>> > On Thu, Sep 17, 2015 at 04:12:30PM +0900, Magnus Damm wrote:
>> >> irqchip: renesas-
chip support including
nested locking. Also the DT documentation is extended with r8a7795
support.
Signed-off-by: Magnus Damm
---
Written against renesas-drivers-2015-09-08-v4.2
Documentation/devicetree/bindings/interrupt-controller/renesas,irqc.txt |1
drivers/irqchip/Kconfig
From: Magnus Damm
Add r8a7795 to the IRQC DT binding document.
Signed-off-by: Magnus Damm
---
Documentation/devicetree/bindings/interrupt-controller/renesas,irqc.txt |1
+
1 file changed, 1 insertion(+)
--- 0001/Documentation/devicetree/bindings/interrupt-controller/renesas,irqc.txt
From: Magnus Damm
Convert the IRQC driver to rely on GENERIC_IRQ_CHIP.
Signed-off-by: Magnus Damm
---
drivers/irqchip/Kconfig|1
drivers/irqchip/irq-renesas-irqc.c | 79 +---
2 files changed, 31 insertions(+), 49 deletions(-)
--- 0001
From: Magnus Damm
Update the IRQC driver to pass the IRQ_GC_INIT_NESTED_LOCK flag
to enable nested locking using the generic irq chip implementation.
Signed-off-by: Magnus Damm
---
drivers/irqchip/irq-renesas-irqc.c |2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- 0005/drivers
atch 1-2 and adds patches 9, 10, 11.
Patch 9 and 10 cleans up r8a7740 and sh73a0 bindings.
Patch 11 removes deprecated properties as proposed by Laurent.
Many thanks to Geert and Laurent for feedback!
Signed-off-by: Magnus Damm
Acked-by: Geert Uytterhoeven (For patch 1-8)
Tested-by: Geert Uytterh
From: Magnus Damm
Remove the sh7372 CMT compat string to reduce maintenance burden.
It should be fine to break DT compatibility because:
1) The sh7372 SoC support has been removed from upstream
2) The sh7372 CMT DT binding was never part of upstream DTS
3) The CMT driver never matches on the
From: Magnus Damm
Always use 0x3f as channel mask for the SH_CMT_48BIT type of devices.
Once this patch is applied the "renesas,channels-mask" property will
be ignored by the driver for older devices matching SH_CMT_48BIT. In
the future when all CMT types store channel mask in the driv
From: Magnus Damm
Add documentation for new separate CMT0 and CMT1 DT compatible strings
for R-Car Gen2. These compat strings allow us to enable CMT1-specific
features in the driver. The old compat strings will be deprecated in
the not so distant future.
Signed-off-by: Magnus Damm
Acked-by
From: Magnus Damm
Add support for the new R-Car Gen2 CMT0 and CMT1 bindings. Support
for the old DT binding is still kept around, however devices using
such binding will be treated as a low-feature CMT0 device. If users
want to make use of CMT1-specific features then they need to update
their
From: Magnus Damm
Use recently updated r8a73a4 and R-Car Gen2 CMT0 and CMT1 compat strings.
With this change in place we can keep device-specific configuration in
the driver and the driver can be able to support CMT1 specific features.
Signed-off-by: Magnus Damm
Acked-by: Geert Uytterhoeven
From: Magnus Damm
Update SoC-specific bindings for r8a73a4 and R-Car Gen2 CMT0 and CMT1.
Signed-off-by: Magnus Damm
Acked-by: Geert Uytterhoeven
Tested-by: Geert Uytterhoeven
Acked-by: Laurent Pinchart
---
Changes since V1:
- Added Acked-by and Tested-by from Geert
- Added Acked-by from
From: Magnus Damm
Remove the 32-bit CMT compat strings to reduce maintenance burden.
It should be fine to break DT compatibility because the 32-bit
32-bit CMT DT binding was never part of any upstream DTS file.
Signed-off-by: Magnus Damm
---
Changes since V1:
- New patch
drivers
From: Magnus Damm
Deprecate "renesas,channels-mask" and update the r8a7790 CMT example.
Signed-off-by: Magnus Damm
Acked-by: Geert Uytterhoeven
Tested-by: Geert Uytterhoeven
Acked-by: Laurent Pinchart
---
Changes since V1:
- Added Acked-by and Tested-by from Geert
- Added Ack
From: Magnus Damm
The deprecated DT properies are part of the GIT history,
no need to keep them around any longer.
Signed-off-by: Magnus Damm
---
Changes since V1:
- New patch
Documentation/devicetree/bindings/timer/renesas,cmt.txt |4
1 file changed, 4 deletions(-)
--- 0011
From: Magnus Damm
Remove the 32-bit CMT compat strings to reduce maintenance burden.
It should be fine to break DT compatibility because the 32-bit
32-bit CMT DT binding was never part of any upstream DTS file.
Signed-off-by: Magnus Damm
---
Changes since V1:
- New patch
Documentation
From: Magnus Damm
Update the DTS to remove the now deprecated "renesas,channels-mask" property.
The channel information is now kept in the device driver and can easily
be determined based on the compat string.
Signed-off-by: Magnus Damm
Acked-by: Geert Uytterhoeven
Tested
Hi Geert,
On Thu, Sep 17, 2015 at 7:04 PM, Geert Uytterhoeven
wrote:
> On Thu, Sep 17, 2015 at 11:55 AM, Magnus Damm wrote:
>> From: Magnus Damm
>>
>> The deprecated DT properies are part of the GIT history,
>
> properties
Oops!
>> no need to keep them around
Hi Sergei,
On Thu, Sep 17, 2015 at 9:14 PM, Sergei Shtylyov
wrote:
> Hello.
>
> On 9/17/2015 12:54 PM, Magnus Damm wrote:
>
>> From: Magnus Damm
>>
>> Remove the 32-bit CMT compat strings to reduce maintenance burden.
>>
>> It should be fine to break
Hi Wolfram,
Thanks for investigating this.
On Sat, Jul 4, 2015 at 12:09 AM, Wolfram Sang wrote:
>
>> Ok. So it's unrelated to deep idle states. Any chance of poking with
>> JTAG at the frozen box? If not, are there GPIOs which you could use to
>> monitor certain state?
>
> No JTAGger here at the
Hi Geert,
On Sat, Jul 4, 2015 at 2:02 AM, Geert Uytterhoeven wrote:
> Hi Wolfram,
>
> On Fri, Jul 3, 2015 at 4:37 PM, Wolfram Sang wrote:
>>> So this is a single core machine and uses the em_sti timer w/o the
>>> broadcast nonsense. In Simons case it looks like em_sti is used as
>>> broadcast de
From: Magnus Damm
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
---
Applies on top of renesas-drivers-2017-04-18-v4.11-rc7 or -next plus:
[PATCH v7 00/07] iommu
Hi Robin,
On Wed, May 17, 2017 at 11:29 PM, Robin Murphy wrote:
> Hi Magnus,
>
> On 17/05/17 11:07, Magnus Damm wrote:
>> From: Magnus Damm
>>
>> Convert from archdata to iommu_priv via iommu_fwspec on ARM64 but
>> let 32-bit ARM keep on using archdata for no
ted-by: Robin Murphy (Patch 2 and 4)
Signed-off-by: Robin Murphy (Patch 3 and 5)
Signed-off-by: Magnus Damm
---
Changes since V1:
- Minor changes to patch 1 and 2 - thanks Robin and Geert!
- Added patch 5 to include further clean ups
Developed on top of v4.13-rc1
drivers/iommu/ipmmu-vms
From: Magnus Damm
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 these days they are required on 32-bit ARM
From: Magnus Damm
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
Signed-off-by: Magnus Damm
---
Chan
Signed-off-by: Magnus Damm
---
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-vmsa.c 2017-07-17 21:35:26.690607110 +0900
@@ -37,7 +37,6 @@ struct ipmmu_vmsa_device
From: Magnus Damm
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
Signed-off-by: Magnus Damm
---
Changes since V1:
- Rebased to apply on
-by: Magnus Damm
---
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(-)
--- 0004/drivers/iommu/ipmmu-vmsa.c
+++ work/drivers/iommu/ipmmu-vmsa.c 2017-07-17 21:04
From: Magnus Damm
Extend the driver to make use of iommu_device_sysfs_add()/remove()
functions to hook up initial sysfs support.
Suggested-by: Joerg Roedel
Signed-off-by: Magnus Damm
---
Applies on top of next-20170817
drivers/iommu/ipmmu-vmsa.c |6 ++
1 file changed, 6 insertions
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
---
Developed on top of a95cfad (v4.12-rc1 + fixes):
Compile tested on 32-bit and 64-bit ARM
Run time tested on 64-bit ARM r8a7
From: Magnus Damm
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
Reviewed-by: Joerg Roedel
---
Changes since V7:
- Free archdata and utlbs in case of error
drivers/iommu/ipmmu
From: Magnus Damm
Break out the domain allocation code into a separate function.
This is preparation for future code sharing.
Signed-off-by: Magnus Damm
Reviewed-by: Joerg Roedel
Reviewed-by: Geert Uytterhoeven
---
Changes since V7:
- Added Reviewed-by from Geert - Thanks!
drivers
From: Magnus Damm
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 allow compile on ARM64.
Signed-off
From: Magnus Damm
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
Reviewed-by: Laurent Pinchart
Reviewed-by: Joerg Roedel
Reviewed-by: Geert Uytterhoeven
---
Changes since V7:
- Added Reviewed-by
From: Magnus Damm
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.
Signed-off-by: Magnus Damm
---
Changes si
From: Magnus Damm
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 ->of_xlate() will
be easy.
For now fwspec
From: Magnus Damm
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 not set
Signed-off-by: Magnus Damm
From: Magnus Damm
Fix comma-instead-of-semicolon typo error present
in the latest version of the IPMMU driver.
Signed-off-by: Magnus Damm
---
Earlier posted as:
[PATCH] iommu/ipmmu-vmsa: Fix pgsize_bitmap semicolon typo
drivers/iommu/ipmmu-vmsa.c |2 +-
1 file changed, 1 insertion
From: Magnus Damm
Allow adjusting the MTU for via-rhine devices in case of no TX alignment
buffer is used.
Lightly tested on ALIX2D13 hardware by making use of VXLAN with MTU set
to 1500 on top of via-rhine devices with 1550 MTU. Without this patch
the VXLAN MTU is limited to less than 1500
On Wed, Jun 14, 2017 at 6:33 AM, David Miller wrote:
> From: Magnus Damm
> Date: Wed, 14 Jun 2017 02:18:27 +0900
>
>> From: Magnus Damm
>>
>> Allow adjusting the MTU for via-rhine devices in case of no TX alignment
>> buffer is used.
>>
>> Lightly
From: Magnus Damm
Update ->ndo_change_mtu() callback comment to remove text
about returning error in case of undefined callback. This
change makes the comment match the existing code behavior.
Signed-off-by: Magnus Damm
---
Applies on top of next-20170613
include/linux/netdevice.h |
h 3)
Signed-off-by: Magnus Damm
---
Developed on renesas-drivers-2017-06-13-v4.12-rc5 and rebased to next-20170614
drivers/iommu/ipmmu-vmsa.c | 186 +++-
1 file changed, 49 insertions(+), 137 deletions(-)
501 - 600 of 645 matches
Mail list logo