From: "Michael S. Tsirkin" <mst@redhat.com>
To: David Gibson <david@gibson.dropbear.id.au>
Cc: aliguori@us.ibm.com, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH] Better support for dma_addr_t variables
Date: Sun, 1 Apr 2012 12:17:28 +0300 [thread overview]
Message-ID: <20120401091728.GC22071@redhat.com> (raw)
In-Reply-To: <1332816201-5072-1-git-send-email-david@gibson.dropbear.id.au>
On Tue, Mar 27, 2012 at 01:43:21PM +1100, David Gibson wrote:
> A while back, we introduced the dma_addr_t type, which is supposed to
> be used for bus visible memory addresses. At present, this is an
> alias for target_phys_addr_t, but this will change when we eventually
> add support for guest visible IOMMUs.
>
> There are some instances of target_phys_addr_t in the code now which
> should really be dma_addr_t, but can't be trivially converted due to
> missing features which this patch corrects.
>
> * We add DMA_ADDR_BITS analagous to TARGET_PHYS_ADDR_BITS. This is
> important where we need to make a compile-time (#if) based on the
> size of dma_addr_t.
>
> * We add a new helper macro to create device properties which take a
> dma_addr_t, currently an alias to DEFINE_PROP_TADDR().
>
> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
I don't have any issues with this but let's apply together
with the patch converting the devices that you mention.
> ---
> dma.h | 1 +
> hw/qdev-dma.h | 4 ++++
> 2 files changed, 5 insertions(+), 0 deletions(-)
> create mode 100644 hw/qdev-dma.h
>
> diff --git a/dma.h b/dma.h
> index 05ac325..463095c 100644
> --- a/dma.h
> +++ b/dma.h
> @@ -32,6 +32,7 @@ struct QEMUSGList {
> #if defined(TARGET_PHYS_ADDR_BITS)
> typedef target_phys_addr_t dma_addr_t;
>
> +#define DMA_ADDR_BITS TARGET_PHYS_ADDR_BITS
> #define DMA_ADDR_FMT TARGET_FMT_plx
>
> struct ScatterGatherEntry {
> diff --git a/hw/qdev-dma.h b/hw/qdev-dma.h
> new file mode 100644
> index 0000000..e407771
> --- /dev/null
> +++ b/hw/qdev-dma.h
> @@ -0,0 +1,4 @@
> +#include "qdev-addr.h"
> +
> +#define DEFINE_PROP_DMAADDR(_n, _s, _f, _d) \
> + DEFINE_PROP_TADDR(_n, _s, _f, _d)
Headers need preprocessor guards so that multiple
inclusions don't trigger errors.
It does not matter much but did you consider sticking this
in dma.h instead of adding a new header?
> --
> 1.7.9.1
next prev parent reply other threads:[~2012-04-01 9:17 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-27 2:43 [Qemu-devel] [PATCH] Better support for dma_addr_t variables David Gibson
2012-03-30 2:46 ` David Gibson
2012-03-30 9:32 ` Andreas Färber
2012-03-30 9:34 ` Andreas Färber
2012-03-31 8:50 ` David Gibson
2012-04-02 7:49 ` Andreas Färber
2012-04-03 0:51 ` David Gibson
2012-04-03 7:12 ` Peter Maydell
2012-04-03 8:53 ` Andreas Färber
2012-04-04 0:12 ` David Gibson
2012-03-31 8:49 ` David Gibson
2012-04-01 9:17 ` Michael S. Tsirkin [this message]
2012-04-01 9:21 ` David Gibson
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=20120401091728.GC22071@redhat.com \
--to=mst@redhat.com \
--cc=aliguori@us.ibm.com \
--cc=david@gibson.dropbear.id.au \
--cc=qemu-devel@nongnu.org \
/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.