[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200901221255.49724.arnd@arndb.de>
Date: Thu, 22 Jan 2009 12:55:48 +0100
From: Arnd Bergmann <arnd@...db.de>
To: Anton Vorontsov <avorontsov@...mvista.com>
Cc: Pierre Ossman <drzeus-sdhci@...eus.cx>,
Ben Dooks <ben-linux@...ff.org>,
Kumar Gala <galak@...nel.crashing.org>,
Liu Dave <DaveLiu@...escale.com>,
Xie Xiaobo <X.Xie@...escale.com>,
Konjin Lai <Konjin.Lai@...escale.com>,
Joe D'Abbraccio <Joe.D'abbraccio@...escale.com>,
sdhci-devel@...t.drzeus.cx, linux-kernel@...r.kernel.org,
linuxppc-dev@...abs.org
Subject: Re: [PATCH 02/10] sdhci: Add support for bus-specific IO memory accessors
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 <><
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists