lkml.org 
[lkml]   [2019]   [Mar]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.19 072/149] pinctrl: mcp23s08: spi: Fix regmap allocation for mcp23s18
    Date
    4.19-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    [ Upstream commit f165988b77ef849eb0c1aebd94fe778024f88314 ]

    Fixes issue created by 9b3e4207661e67f04c72af15e29f74cd944f5964.

    It wasn't possible for one_regmap_config to be non-NULL at the point
    it was tested for mcp23s18 devices.

    Applied the same pattern of allocating one_regmap_config using
    devm_kmemdump() and then initializing the local regmap structure
    from that.

    Signed-off-by: Jason Kridner <jdk@ti.com>
    Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/pinctrl/pinctrl-mcp23s08.c | 7 ++++++-
    1 file changed, 6 insertions(+), 1 deletion(-)

    diff --git a/drivers/pinctrl/pinctrl-mcp23s08.c b/drivers/pinctrl/pinctrl-mcp23s08.c
    index cf73a403d22d..cecbce21d01f 100644
    --- a/drivers/pinctrl/pinctrl-mcp23s08.c
    +++ b/drivers/pinctrl/pinctrl-mcp23s08.c
    @@ -832,8 +832,13 @@ static int mcp23s08_probe_one(struct mcp23s08 *mcp, struct device *dev,
    break;

    case MCP_TYPE_S18:
    + one_regmap_config =
    + devm_kmemdup(dev, &mcp23x17_regmap,
    + sizeof(struct regmap_config), GFP_KERNEL);
    + if (!one_regmap_config)
    + return -ENOMEM;
    mcp->regmap = devm_regmap_init(dev, &mcp23sxx_spi_regmap, mcp,
    - &mcp23x17_regmap);
    + one_regmap_config);
    mcp->reg_shift = 1;
    mcp->chip.ngpio = 16;
    mcp->chip.label = "mcp23s18";
    --
    2.19.1


    \
     
     \ /
      Last update: 2019-03-12 18:52    [W:2.078 / U:0.060 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site