|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v02 2/7] arm: omap: introduce iommu translation for IPU remoteproc
On Thu, 2014-06-26 at 14:07 +0300, Andrii Tseglytskyi wrote:
> The following patch introduced platform specific MMU data
> definitions and pagetable translation function for OMAP5 IPU
> remoteproc. This MMU is a bit specific - it typically performs
> one level translation and map a big chunks of memory. 16 Mb
> supersections and 1 Mb sections are mapped instead of 4 Kb pages.
> Introduced algorithm performs internal remapping of big sections
> to small 4 Kb pages.
How does that work if the MMU only supports 1MB/16MB supersections? Or
have I misunderstood?
> Change-Id: If20449f07e22f780e1fded67fed4f79cbe1fc156
> Signed-off-by: Andrii Tseglytskyi <andrii.tseglytskyi@xxxxxxxxxxxxxxx>
> ---
> xen/arch/arm/platforms/Makefile | 1 +
> xen/arch/arm/platforms/omap_iommu.c | 247
> +++++++++++++++++++++++++++++++++++
I don't think this is the right home for this.
I think either xen/arch/arm/remoteproc/* or xen/drivers/remoteproc/*
would be more appropriate.
> +#define OMAP_IPU_MMU_MEM_BASE 0x55082000
> +
> +static u32 mmu_ipu_translate_pagetable(struct mmu_info *mmu, struct
> mmu_pagetable *pgt);
> +
> +static u32 ipu_trap_offsets[] = {
> + MMU_IPU_TTB_OFFSET,
How large is this region? I think the machinery needs to be told.
Also if this functionality is to be used by guests then it can't really
use the h/w base address, you'd need to define a region of guest address
map (!= host/dom0 address map) for it.
> diff --git a/xen/arch/arm/remoteproc_iommu.c b/xen/arch/arm/remoteproc_iommu.c
> index b4d22d9..8291f3f 100644
> --- a/xen/arch/arm/remoteproc_iommu.c
> +++ b/xen/arch/arm/remoteproc_iommu.c
> @@ -33,6 +33,7 @@
> #include "io.h"
>
> static struct mmu_info *mmu_list[] = {
> + &omap_ipu_mmu,
This suggests there is exactly one such and it is exposed to every
domain.
Wouldn't this rather be dynamic and per domain?
Ian.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |