12 Jan, 2017

1 commit

  • Declare reset_control_ops structures as const as they are only stored
    in the ops field of a reset_controller_dev structure. This field is of
    type const struct reset_control_ops *, so reset_control_ops structures
    having this property can be declared as const.
    Done using Coccinelle:

    @r1 disable optional_qualifier@
    identifier i;
    position p;
    @@
    static struct reset_control_ops i@p={...};

    @ok1@
    identifier r1.i;
    position p;
    struct ti_syscon_reset_data data;
    @@
    data.rcdev.ops=&i@p;

    @bad@
    position p!={r1.p,ok1.p};
    identifier r1.i;
    @@
    i@p

    @depends on !bad disable optional_qualifier@
    identifier r1.i;
    @@
    +const
    struct reset_control_ops i;

    File size before: drivers/reset/reset-ti-syscon.o
    text data bss dec hex filename
    1329 240 0 1569 621 drivers/reset/reset-ti-syscon.o

    File size after: drivers/reset/reset-ti-syscon.o
    text data bss dec hex filename
    1377 192 0 1569 621 drivers/reset/reset-ti-syscon.o

    Signed-off-by: Bhumika Goyal
    Signed-off-by: Philipp Zabel

    Bhumika Goyal
     

09 Jan, 2017

1 commit


30 Jun, 2016

1 commit

  • Add a reset-controller driver for performing reset management of
    various devices present on the SoC, with the reset registers shared
    between devices in a common register memory space. This driver uses
    the syscon/regmap frameworks to actually implement the various reset
    functionalities needed by the reset consumer devices.

    Signed-off-by: Andrew F. Davis
    [s-anna@ti.com: add documentation, syscon name change]
    Signed-off-by: Suman Anna
    Signed-off-by: Philipp Zabel

    Andrew F. Davis