All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@arndb.de>
To: Marek Szyprowski <m.szyprowski@samsung.com>
Cc: linux-arm-kernel@lists.infradead.org,
	linux-samsung-soc@vger.kernel.org, linux-media@vger.kernel.org,
	"Tomasz Stanislawski" <t.stanislaws@samsung.com>,
	k.debski@samsung.com, kgene.kim@samsung.com,
	kyungmin.park@samsung.com,
	"Sylwester Nawrocki" <s.nawrocki@samsung.com>,
	"Andrzej Pietrasiewicz" <andrzej.p@samsung.com>,
	'대인기' <inki.dae@samsung.com>, '강민규' <mk7.kang@samsung.com>,
	"'KyongHo Cho'" <pullip.cho@samsung.com>,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH 3/7] ARM: Samsung: update/rewrite Samsung SYSMMU (IOMMU) driver
Date: Fri, 11 Mar 2011 17:00:17 +0100	[thread overview]
Message-ID: <201103111700.17373.arnd@arndb.de> (raw)
In-Reply-To: <000201cbe002$768d9de0$63a8d9a0$%szyprowski@samsung.com>

On Friday 11 March 2011, Marek Szyprowski wrote:
> > > > does not support IOMMUs, but that could be changed by wrapping it
> > > > using the include/asm-generic/dma-mapping-common.h infrastructure.
> > >
> > > ARM dma-mapping framework also requires some additional research for better DMA
> > > support (there are still issues with multiple mappings to be resolved).
> > 
> > You mean mapping the same memory into multiple devices, or a different problem?
> 
> Mapping the same memory area multiple times with different cache settings is not
> legal on ARMv7+ systems. Currently the problems might caused by the low-memory
> kernel linear mapping and second mapping created for example by dma_alloc_coherent()
> function.

Yes, I know this problem, but I don't think the case you describe is a serious
limitation (there are more interesting cases, though): dma_map_single() etc
will create additional *bus* addresses for a physical address, not additional
virtual addresses.

dma_alloc_coherent should allocate memory that is not also mapped cached,
which is what I thought we do correctly.

	Arnd

WARNING: multiple messages have this Message-ID (diff)
From: arnd@arndb.de (Arnd Bergmann)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 3/7] ARM: Samsung: update/rewrite Samsung SYSMMU (IOMMU) driver
Date: Fri, 11 Mar 2011 17:00:17 +0100	[thread overview]
Message-ID: <201103111700.17373.arnd@arndb.de> (raw)
In-Reply-To: <000201cbe002$768d9de0$63a8d9a0$%szyprowski@samsung.com>

On Friday 11 March 2011, Marek Szyprowski wrote:
> > > > does not support IOMMUs, but that could be changed by wrapping it
> > > > using the include/asm-generic/dma-mapping-common.h infrastructure.
> > >
> > > ARM dma-mapping framework also requires some additional research for better DMA
> > > support (there are still issues with multiple mappings to be resolved).
> > 
> > You mean mapping the same memory into multiple devices, or a different problem?
> 
> Mapping the same memory area multiple times with different cache settings is not
> legal on ARMv7+ systems. Currently the problems might caused by the low-memory
> kernel linear mapping and second mapping created for example by dma_alloc_coherent()
> function.

Yes, I know this problem, but I don't think the case you describe is a serious
limitation (there are more interesting cases, though): dma_map_single() etc
will create additional *bus* addresses for a physical address, not additional
virtual addresses.

dma_alloc_coherent should allocate memory that is not also mapped cached,
which is what I thought we do correctly.

	Arnd

  reply	other threads:[~2011-03-11 16:00 UTC|newest]

Thread overview: 59+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-04  9:01 [PATCH/RFC 0/7] Samsung IOMMU videobuf2 allocator and s5p-fimc update Marek Szyprowski
2011-03-04  9:01 ` Marek Szyprowski
2011-03-04  9:01 ` [PATCH 1/7] ARM: S5PV310: Add platform definitions for FIMC Marek Szyprowski
2011-03-04  9:01   ` Marek Szyprowski
2011-03-12  0:27   ` Kukjin Kim
2011-03-12  0:27     ` Kukjin Kim
2011-03-04  9:01 ` [PATCH 2/7] ARM: S5PV310: power domains: fixes and code cleanup Marek Szyprowski
2011-03-04  9:01   ` Marek Szyprowski
2011-03-04  9:01 ` [PATCH 3/7] ARM: Samsung: update/rewrite Samsung SYSMMU (IOMMU) driver Marek Szyprowski
2011-03-04  9:01   ` Marek Szyprowski
2011-03-04 16:04   ` Marek Szyprowski
2011-03-04 16:04     ` Marek Szyprowski
2011-03-10 14:52     ` Arnd Bergmann
2011-03-10 14:52       ` Arnd Bergmann
2011-03-11  9:04       ` Marek Szyprowski
2011-03-11  9:04         ` Marek Szyprowski
2011-03-11 11:50         ` Arnd Bergmann
2011-03-11 11:50           ` Arnd Bergmann
2011-03-11 12:35           ` Marek Szyprowski
2011-03-11 12:35             ` Marek Szyprowski
2011-03-11 14:07             ` Arnd Bergmann
2011-03-11 14:07               ` Arnd Bergmann
2011-03-11 14:51               ` Marek Szyprowski
2011-03-11 14:51                 ` Marek Szyprowski
2011-03-11 15:15                 ` Arnd Bergmann
2011-03-11 15:15                   ` Arnd Bergmann
2011-03-11 15:39                   ` Marek Szyprowski
2011-03-11 15:39                     ` Marek Szyprowski
2011-03-11 16:00                     ` Arnd Bergmann [this message]
2011-03-11 16:00                       ` Arnd Bergmann
2011-03-14 12:37                       ` KyongHo Cho
2011-03-14 12:37                         ` KyongHo Cho
2011-03-14 12:46                         ` Russell King - ARM Linux
2011-03-14 12:46                           ` Russell King - ARM Linux
2011-03-15  1:45                           ` InKi Dae
2011-03-15  1:45                             ` InKi Dae
2011-03-15  8:35                             ` Russell King - ARM Linux
2011-03-15  8:35                               ` Russell King - ARM Linux
2011-03-15  9:34                               ` daeinki
2011-03-15  9:34                                 ` daeinki
2011-03-15  9:53                                 ` Russell King - ARM Linux
2011-03-15  9:53                                   ` Russell King - ARM Linux
2011-03-15  9:53                                   ` Russell King - ARM Linux
2011-03-14 13:32                         ` Arnd Bergmann
2011-03-14 13:32                           ` Arnd Bergmann
2011-03-04  9:01 ` [PATCH 4/7] v4l: videobuf2: add Samsung SYSMMU (IOMMU) based allocator Marek Szyprowski
2011-03-04  9:01   ` Marek Szyprowski
2011-03-04  9:01 ` [PATCH 5/7] s5p-fimc: add pm_runtime support Marek Szyprowski
2011-03-04  9:01   ` Marek Szyprowski
2011-03-04  9:01 ` [PATCH 6/7] s5p-fimc: Add support for vb2-s5p-iommu allocator Marek Szyprowski
2011-03-04  9:01   ` Marek Szyprowski
2011-03-04  9:01 ` [PATCH 7/7] ARM: S5PC210: enable FIMC on Universal_C210 Marek Szyprowski
2011-03-04  9:01   ` Marek Szyprowski
2011-03-08  7:28 ` [PATCH/RFC 0/7] Samsung IOMMU videobuf2 allocator and s5p-fimc update Kukjin Kim
2011-03-08  7:28   ` Kukjin Kim
2011-03-08  9:34   ` Marek Szyprowski
2011-03-08  9:34     ` Marek Szyprowski
2011-03-08 10:05     ` InKi Dae
2011-03-08 10:05       ` InKi Dae

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=201103111700.17373.arnd@arndb.de \
    --to=arnd@arndb.de \
    --cc=andrzej.p@samsung.com \
    --cc=inki.dae@samsung.com \
    --cc=k.debski@samsung.com \
    --cc=kgene.kim@samsung.com \
    --cc=kyungmin.park@samsung.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=m.szyprowski@samsung.com \
    --cc=mk7.kang@samsung.com \
    --cc=pullip.cho@samsung.com \
    --cc=s.nawrocki@samsung.com \
    --cc=t.stanislaws@samsung.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.