From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Michael Ellerman <michael@ellerman.id.au>
Cc: linuxppc-dev@ozlabs.org
Subject: Re: [PATCH 1/7] Store the base address in dcr_host_t
Date: Tue, 02 Oct 2007 15:10:01 +1000 [thread overview]
Message-ID: <1191301801.6310.66.camel@pasglop> (raw)
In-Reply-To: <449a181e8169af98984bb2d61a759c23e55d19b4.1190009070.git.michael@ellerman.id.au>
On Mon, 2007-09-17 at 16:05 +1000, Michael Ellerman wrote:
> In its current form, dcr_map() doesn't remember the base address you passed
> it, which means you need to store it somewhere else. Rather than adding the
> base to another struct it seems simpler to store it in the dcr_host_t.
>
> Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> ---
> arch/powerpc/sysdev/dcr.c | 2 +-
> include/asm-powerpc/dcr-mmio.h | 6 +++++-
> include/asm-powerpc/dcr-native.h | 6 ++++--
> 3 files changed, 10 insertions(+), 4 deletions(-)
>
> diff --git a/arch/powerpc/sysdev/dcr.c b/arch/powerpc/sysdev/dcr.c
> index e82d54d..ab11c0b 100644
> --- a/arch/powerpc/sysdev/dcr.c
> +++ b/arch/powerpc/sysdev/dcr.c
> @@ -104,7 +104,7 @@ u64 of_translate_dcr_address(struct device_node *dev,
> dcr_host_t dcr_map(struct device_node *dev, unsigned int dcr_n,
> unsigned int dcr_c)
> {
> - dcr_host_t ret = { .token = NULL, .stride = 0 };
> + dcr_host_t ret = { .token = NULL, .stride = 0, .base = dcr_n };
> u64 addr;
>
> pr_debug("dcr_map(%s, 0x%x, 0x%x)\n",
> diff --git a/include/asm-powerpc/dcr-mmio.h b/include/asm-powerpc/dcr-mmio.h
> index 5dbfca8..6b82c3b 100644
> --- a/include/asm-powerpc/dcr-mmio.h
> +++ b/include/asm-powerpc/dcr-mmio.h
> @@ -23,7 +23,11 @@
>
> #include <asm/io.h>
>
> -typedef struct { void __iomem *token; unsigned int stride; } dcr_host_t;
> +typedef struct {
> + void __iomem *token;
> + unsigned int stride;
> + unsigned int base;
> +} dcr_host_t;
>
> #define DCR_MAP_OK(host) ((host).token != NULL)
>
> diff --git a/include/asm-powerpc/dcr-native.h b/include/asm-powerpc/dcr-native.h
> index 05af081..f41058c 100644
> --- a/include/asm-powerpc/dcr-native.h
> +++ b/include/asm-powerpc/dcr-native.h
> @@ -22,11 +22,13 @@
> #ifdef __KERNEL__
> #ifndef __ASSEMBLY__
>
> -typedef struct {} dcr_host_t;
> +typedef struct {
> + unsigned int base;
> +} dcr_host_t;
>
> #define DCR_MAP_OK(host) (1)
>
> -#define dcr_map(dev, dcr_n, dcr_c) ((dcr_host_t){})
> +#define dcr_map(dev, dcr_n, dcr_c) ((dcr_host_t){ .base = (dcr_n) })
> #define dcr_unmap(host, dcr_n, dcr_c) do {} while (0)
> #define dcr_read(host, dcr_n) mfdcr(dcr_n)
> #define dcr_write(host, dcr_n, value) mtdcr(dcr_n, value)
prev parent reply other threads:[~2007-10-02 5:10 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-09-17 6:05 [PATCH 1/7] Store the base address in dcr_host_t Michael Ellerman
2007-09-17 6:05 ` [PATCH 3/7] Use dcr_host_t.base in ibm_emac_mal Michael Ellerman
2007-10-02 5:13 ` Benjamin Herrenschmidt
2007-10-02 6:06 ` Michael Ellerman
2007-09-17 6:05 ` [PATCH 2/7] Update mpic to use dcr_host_t.base Michael Ellerman
2007-10-02 5:12 ` Benjamin Herrenschmidt
2007-09-17 6:05 ` [PATCH 4/7] Update axon_msi " Michael Ellerman
2007-10-02 5:14 ` Benjamin Herrenschmidt
2007-09-17 6:05 ` [PATCH 5/7] Add dcr_host_t.base in dcr_read()/dcr_write() Michael Ellerman
2007-10-02 5:17 ` Benjamin Herrenschmidt
2007-09-17 6:05 ` [PATCH 6/7] Add dcr_map_reg() helper Michael Ellerman
2007-10-02 5:19 ` Benjamin Herrenschmidt
2007-10-02 5:51 ` Michael Ellerman
2007-10-02 6:22 ` Benjamin Herrenschmidt
2007-09-17 6:05 ` [PATCH 7/7] Remove msic_dcr_read() and use dcr_map_reg() in axon_msi.c Michael Ellerman
2007-10-02 5:20 ` Benjamin Herrenschmidt
2007-10-02 5:10 ` Benjamin Herrenschmidt [this message]
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=1191301801.6310.66.camel@pasglop \
--to=benh@kernel.crashing.org \
--cc=linuxppc-dev@ozlabs.org \
--cc=michael@ellerman.id.au \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).