[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CACRpkdbejNdOOZVKTRZRSegoyydhWFaJX-ahL1zy5J8O+RNDkA@mail.gmail.com>
Date: Mon, 20 Feb 2012 22:08:00 +0100
From: Linus Walleij <linus.walleij@...aro.org>
To: Stephen Warren <swarren@...dia.com>
Cc: Linus Walleij <linus.walleij@...ricsson.com>, B29396@...escale.com,
s.hauer@...gutronix.de, dongas86@...il.com, shawn.guo@...aro.org,
thomas.abraham@...aro.org, tony@...mide.com,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 03/20] pinctrl: Store mapping table as a list of chunks
On Mon, Feb 20, 2012 at 7:45 AM, Stephen Warren <swarren@...dia.com> wrote:
> Instead of storing a single array of mapping table entries, which
> requires realloc()ing that array each time it's extended and copying
> the new data, simply store a list of pointers to the individual chunks.
> This also removes the need to copy the mapping table at all; a pointer
> is maintained to the original table, this saving memory.
>
> A macro for_each_maps() is introduced to hide the additional complexity
> of iterating over the map entries.
>
> This change will also simplify removing chunks of entries from the mapping
> table. This isn't important right now, but will be in the future, when
> mapping table entries are dynamically added when parsing them from the
> device tree, and removed when drivers no longer need to interact with
> pinctrl.
>
> Signed-off-by: Stephen Warren <swarren@...dia.com>
> ---
> v2: Fixed kzalloc size parameter in pinctrl_register_mappings(),
> add pr_error on kzalloc() failure, keep pinctrl_get() docs with
> pinctrl_get() not pinctrl_get_locked(), make pinctrl_get_locked()
> static, use list_add_tail instead of list_add, continue to duplicate
> mapping table, don't remove __initdata from u300 mapping table.
Brilliant, applied.
Also tested on U300 up to this point, everything works just fine.
Thanks,
Linus Walleij
--
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