lkml.org 
[lkml]   [2013]   [Aug]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: [PATCH 3/3] blackfin: pinctrl-adi2: Add pin control device groups and function data.
    From
    On Tue, Jul 16, 2013 at 12:55 PM, Sonic Zhang <sonic.adi@gmail.com> wrote:

    > From: Sonic Zhang <sonic.zhang@analog.com>
    >
    > Select PINCTRL_ADI2 for bf54x and bf60x by default.
    >
    > Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>

    (...)
    > +++ b/arch/blackfin/mach-bf548/include/mach/portmux.h
    (...)
    > +static const struct pinctrl_pin_desc adi_pads[] = {
    > + PINCTRL_PIN(0, "PA0"),
    > + PINCTRL_PIN(1, "PA1"),
    > + PINCTRL_PIN(2, "PA2"),
    > + PINCTRL_PIN(3, "PG3"),

    The pattern we follow is not to pass the information about pins in a certain
    SoC or package as platform data.

    Instead we rely on plug-in subdrivers down in the pinctrl subsystem under
    drivers/pinctrl/*.

    Nominally you should write a central blackfind pinctrl driver such
    as drivers/pinctrl/pinctrl-blackfin.c then have a local header such
    as drivers/pinctrl/pinctrl-blackfin.h that enable SoC sub-drivers
    such as drivers/pinctrl/pinctrl-blackfin-bf54x.c, pinctrl-blackfin-bf60f.c
    to register to that.

    Please read the current drivers such as pinctrl-nomadik.c
    and pinctrl-nomadik-db8500.c for an idea of how this
    plugin concept works.

    In short: move all this data down into pinctrl.

    Yours,
    Linus Walleij


    \
     
     \ /
      Last update: 2013-08-14 18:01    [W:4.367 / U:0.308 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site