From: Arnd Bergmann <arnd@arndb.de>
To: Anton Vorontsov <avorontsov@ru.mvista.com>
Cc: sdhci-devel@list.drzeus.cx, linux-kernel@vger.kernel.org,
Liu Dave <DaveLiu@freescale.com>,
Joe D'Abbraccio <Joe.D'abbraccio@freescale.com>,
linuxppc-dev@ozlabs.org, Konjin Lai <Konjin.Lai@freescale.com>,
Ben Dooks <ben-linux@fluff.org>,
Pierre Ossman <drzeus-sdhci@drzeus.cx>,
Xie Xiaobo <X.Xie@freescale.com>
Subject: Re: [PATCH 02/10] sdhci: Add support for bus-specific IO memory accessors
Date: Thu, 22 Jan 2009 12:55:48 +0100 [thread overview]
Message-ID: <200901221255.49724.arnd@arndb.de> (raw)
In-Reply-To: <20090122020019.GB11492@oksana.dev.rtsoft.ru>
On Thursday 22 January 2009, Anton Vorontsov wrote:
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0/*
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * These accessors duplicate s=
dhci_ops, but there are two reasons for
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * this:
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * 1. sdhci_ops are const, so =
the sdhci driver won't able to assign
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * =C2=A0 =C2=A0default ops;
You could assign the pointer to a const default_sdhci_ops structure,
which IMHO would be cleaner than copying the function pointers
separately.
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * 2. Using host->X instead of=
host->ops->X saves us one dereference.
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * =C2=A0 =C2=A0This can be us=
eful in PIO mode. (Though the benefit of this
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * =C2=A0 =C2=A0is negligibly =
small).
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 */
I doubt that this is even measurable. If it was, you could still use a copy
of that structure, like
struct sdhci_host {
...
struct sdhci_ops ops; /* not struct sdhci_ops *ops */
...
};
and do an assignment of the structure, like
static void assign_ops(struct sdhci_host *host, struct sdhci_ops *ops)
{
host->ops =3D *ops;
}
Arnd <><
WARNING: multiple messages have this Message-ID (diff)
From: Arnd Bergmann <arnd@arndb.de>
To: Anton Vorontsov <avorontsov@ru.mvista.com>
Cc: Pierre Ossman <drzeus-sdhci@drzeus.cx>,
Ben Dooks <ben-linux@fluff.org>,
Kumar Gala <galak@kernel.crashing.org>,
Liu Dave <DaveLiu@freescale.com>,
Xie Xiaobo <X.Xie@freescale.com>,
Konjin Lai <Konjin.Lai@freescale.com>,
"Joe D'Abbraccio" <Joe.D'abbraccio@freescale.com>,
sdhci-devel@list.drzeus.cx, linux-kernel@vger.kernel.org,
linuxppc-dev@ozlabs.org
Subject: Re: [PATCH 02/10] sdhci: Add support for bus-specific IO memory accessors
Date: Thu, 22 Jan 2009 12:55:48 +0100 [thread overview]
Message-ID: <200901221255.49724.arnd@arndb.de> (raw)
In-Reply-To: <20090122020019.GB11492@oksana.dev.rtsoft.ru>
On Thursday 22 January 2009, Anton Vorontsov wrote:
> + /*
> + * These accessors duplicate sdhci_ops, but there are two reasons for
> + * this:
> + * 1. sdhci_ops are const, so the sdhci driver won't able to assign
> + * default ops;
You could assign the pointer to a const default_sdhci_ops structure,
which IMHO would be cleaner than copying the function pointers
separately.
> + * 2. Using host->X instead of host->ops->X saves us one dereference.
> + * This can be useful in PIO mode. (Though the benefit of this
> + * is negligibly small).
> + */
I doubt that this is even measurable. If it was, you could still use a copy
of that structure, like
struct sdhci_host {
...
struct sdhci_ops ops; /* not struct sdhci_ops *ops */
...
};
and do an assignment of the structure, like
static void assign_ops(struct sdhci_host *host, struct sdhci_ops *ops)
{
host->ops = *ops;
}
Arnd <><
next prev parent reply other threads:[~2009-01-22 11:56 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-01-22 1:56 [PATCH RFC 0/10] Freescale "eSDHC" SDHCI support (was [PATCH] mmc: Add driver for Freescale eSDHC controllers) Anton Vorontsov
2009-01-22 1:56 ` Anton Vorontsov
2009-01-22 1:59 ` [PATCH 01/10] sdhci: Add quirk for controllers with no end-of-busy IRQ Anton Vorontsov
2009-01-22 1:59 ` Anton Vorontsov
2009-01-22 2:00 ` [PATCH 02/10] sdhci: Add support for bus-specific IO memory accessors Anton Vorontsov
2009-01-22 2:00 ` Anton Vorontsov
2009-01-22 11:55 ` Arnd Bergmann [this message]
2009-01-22 11:55 ` Arnd Bergmann
2009-01-22 18:31 ` Anton Vorontsov
2009-01-22 18:31 ` Anton Vorontsov
2009-01-22 2:00 ` [PATCH 03/10] sdhci: Add support for card-detection polling Anton Vorontsov
2009-01-22 2:00 ` Anton Vorontsov
2009-01-22 2:00 ` [PATCH 04/10] sdhci: Add support for hosts reporting inverted write-protect state Anton Vorontsov
2009-01-22 2:00 ` Anton Vorontsov
2009-01-22 2:00 ` [PATCH 05/10] sdhci: Add support for hosts with strict 32 bit addressing Anton Vorontsov
2009-01-22 2:00 ` Anton Vorontsov
2009-01-22 2:00 ` [PATCH 06/10] sdhci: Add quirk to suppress PIO interrupts during DMA transfers Anton Vorontsov
2009-01-22 2:00 ` Anton Vorontsov
2009-01-22 2:00 ` [PATCH 07/10] sdhci: Add support for hosts that don't specify clocks in the cap. register Anton Vorontsov
2009-01-22 2:00 ` Anton Vorontsov
2009-01-22 2:00 ` [PATCH 08/10] sdhci: Add set_clock callback Anton Vorontsov
2009-01-22 2:00 ` Anton Vorontsov
2009-01-22 2:00 ` [PATCH 09/10] sdhci: Add quirk for Freescale eSDHC controllers Anton Vorontsov
2009-01-22 2:00 ` Anton Vorontsov
2009-01-22 2:00 ` [PATCH 10/10] mmc: Add OpenFirmware bindings for SDHCI driver Anton Vorontsov
2009-01-22 2:00 ` Anton Vorontsov
2009-01-22 12:05 ` Arnd Bergmann
2009-01-22 12:05 ` Arnd Bergmann
2009-01-22 19:15 ` Kumar Gala
2009-01-22 19:15 ` Kumar Gala
2009-01-25 6:42 ` Matt Sealey
2009-01-25 6:42 ` Matt Sealey
2009-01-26 22:26 ` M. Warner Losh
2009-01-26 22:26 ` M. Warner Losh
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=200901221255.49724.arnd@arndb.de \
--to=arnd@arndb.de \
--cc=DaveLiu@freescale.com \
--cc=Joe.D'abbraccio@freescale.com \
--cc=Konjin.Lai@freescale.com \
--cc=X.Xie@freescale.com \
--cc=avorontsov@ru.mvista.com \
--cc=ben-linux@fluff.org \
--cc=drzeus-sdhci@drzeus.cx \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@ozlabs.org \
--cc=sdhci-devel@list.drzeus.cx \
/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.