X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=drivers%2Fpinctrl%2Fpinctrl-mcp23s08.c;h=98905d4a79ca93b52935dc438b4797bb4fc86f78;hb=df3865f8f56879b7e9f0ca47fa7bc5f2252df6d3;hp=b03481ef99a13ab63dc8ba188113fcccfe50be78;hpb=e9eaf72e73d6159afbf90a9a02c24f2099067992;p=uclinux-h8%2Flinux.git diff --git a/drivers/pinctrl/pinctrl-mcp23s08.c b/drivers/pinctrl/pinctrl-mcp23s08.c index b03481ef99a1..98905d4a79ca 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";