Re: [PATCH 01/17] pinctrl: copy per-pin driver private data to struct pin_desc

From: Linus Walleij
Date: Tue May 31 2016 - 04:58:40 EST


On Tue, May 31, 2016 at 10:05 AM, Masahiro Yamada
<yamada.masahiro@xxxxxxxxxxxxx> wrote:

> Currently, struct pinctrl_pin_desc can have per-pin driver private
> data, but it is not copied to struct pin_desc.
>
> For a driver with sparse pin space, for-loop search like below would
> be necessary in order to get the driver-specific data for a desired
> pin number.
>
> for (i = 0; i < pctldev->desc->npins; i++)
> if (pin_number == pctldev->desc->pins[i].number)
> return pctldev->desc->pins[i].drv_data;
>
> This is not efficient for a driver with a large number of pins.
> So, copy the data to struct pin_desc when each pin is registered
> for the faster radix tree lookup.
>
> Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
> ---
> This is a re-sent of
> http://patchwork.ozlabs.org/patch/626015/
>
> I included it again in this series because it is a prerequisite
> of 9/17. Otherwise, the kbuild test robot might start
> complaining about the build error.

OK already applied.

Yours,
Linus Walleij