lkml.org 
[lkml]   [2015]   [Sep]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH 0/1] add devm_of_clk_get() and devm_of_clk_get_by_name() functions
    Date
    From: Paul Osmialowski <pawelo@king.net.pl>

    While working on my pinctrl driver I've found lack of devres compatible
    equivalent for of_clk_get() function. I'd like to use it for the following
    (incomplete) piece of device tree configuration:

    pinctrl: pinctrl {
    compatible = "fsl,kinetis-pinctrl";
    #address-cells = <1>;
    #size-cells = <1>;
    ranges;

    port_a@40049000 {
    compatible = "fsl,kinetis-pin-bank";
    reg = <0x40049000 0x1000>;
    clocks = <&sim SIM_CLK_SCGC5_PORTA>;
    };

    port_b@4004a000 {
    compatible = "fsl,kinetis-pin-bank";
    reg = <0x4004a000 0x1000>;
    clocks = <&sim SIM_CLK_SCGC5_PORTB>;
    };
    ...
    };

    In my pinconf-generic compatible fsl,kinetis-pinctrl driver, I'm iterating
    over fsl,kinetis-pin-bank nodes using for_each_child_of_node(dev->of_node,
    child) along with of_match_node() in order to grab resources (I/O base
    address, clock gate).

    Normally, I'd have to use of_clk_get() on each pin bank device_node and
    then worry about proper resource release myself.

    IMHO using devres infrastructure for this is far better. This patch adds
    missing functions needed to do it that way.

    Paul Osmialowski (1):
    clk: add devm_of_clk_get() and devm_of_clk_get_by_name() functions

    drivers/clk/clk-devres.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++
    include/linux/clk.h | 20 ++++++++++++++++++++
    2 files changed, 66 insertions(+)

    --
    2.4.9



    \
     
     \ /
      Last update: 2015-09-30 10:01    [W:3.221 / U:0.120 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site