Skip to content

Commit 46671aa

Browse files
committed
Merge tag 'ib-devres-iio-input-pinctrl-v6.15' into psy-next
Merge immutable branch introducing devm_kmemdup_array(), so that it can be used in the sc27xx fuel gauge. Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
2 parents bbcfe51 + 1f4c7f3 commit 46671aa

File tree

14 files changed

+152
-147
lines changed

14 files changed

+152
-147
lines changed

drivers/iio/adc/xilinx-xadc-core.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1245,8 +1245,8 @@ static int xadc_parse_dt(struct iio_dev *indio_dev, unsigned int *conf, int irq)
12451245
channel_templates = xadc_us_channels;
12461246
max_channels = ARRAY_SIZE(xadc_us_channels);
12471247
}
1248-
channels = devm_kmemdup(dev, channel_templates,
1249-
sizeof(channels[0]) * max_channels, GFP_KERNEL);
1248+
channels = devm_kmemdup_array(dev, channel_templates, max_channels,
1249+
sizeof(*channel_templates), GFP_KERNEL);
12501250
if (!channels)
12511251
return -ENOMEM;
12521252

drivers/iio/imu/st_lsm9ds0/st_lsm9ds0_i2c.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
* Author: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
88
*/
99

10-
#include <linux/device.h>
10+
#include <linux/device/devres.h>
1111
#include <linux/err.h>
1212
#include <linux/gfp_types.h>
1313
#include <linux/i2c.h>

drivers/iio/imu/st_lsm9ds0/st_lsm9ds0_spi.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
* Author: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
88
*/
99

10-
#include <linux/device.h>
10+
#include <linux/device/devres.h>
1111
#include <linux/err.h>
1212
#include <linux/gfp_types.h>
1313
#include <linux/module.h>

drivers/input/keyboard/ipaq-micro-keys.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -102,9 +102,8 @@ static int micro_key_probe(struct platform_device *pdev)
102102

103103
keys->input->keycodesize = sizeof(micro_keycodes[0]);
104104
keys->input->keycodemax = ARRAY_SIZE(micro_keycodes);
105-
keys->codes = devm_kmemdup(&pdev->dev, micro_keycodes,
106-
keys->input->keycodesize * keys->input->keycodemax,
107-
GFP_KERNEL);
105+
keys->codes = devm_kmemdup_array(&pdev->dev, micro_keycodes, keys->input->keycodemax,
106+
keys->input->keycodesize, GFP_KERNEL);
108107
if (!keys->codes)
109108
return -ENOMEM;
110109

drivers/input/sparse-keymap.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -176,8 +176,7 @@ int sparse_keymap_setup(struct input_dev *dev,
176176
for (e = keymap; e->type != KE_END; e++)
177177
map_size++;
178178

179-
map = devm_kmemdup(&dev->dev, keymap, map_size * sizeof(*map),
180-
GFP_KERNEL);
179+
map = devm_kmemdup_array(&dev->dev, keymap, map_size, sizeof(*keymap), GFP_KERNEL);
181180
if (!map)
182181
return -ENOMEM;
183182

drivers/pinctrl/intel/pinctrl-baytrail.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1557,16 +1557,14 @@ static int byt_set_soc_data(struct intel_pinctrl *vg,
15571557
vg->soc = soc;
15581558

15591559
vg->ncommunities = vg->soc->ncommunities;
1560-
vg->communities = devm_kcalloc(vg->dev, vg->ncommunities,
1561-
sizeof(*vg->communities), GFP_KERNEL);
1560+
vg->communities = devm_kmemdup_array(vg->dev, vg->soc->communities, vg->ncommunities,
1561+
sizeof(*vg->soc->communities), GFP_KERNEL);
15621562
if (!vg->communities)
15631563
return -ENOMEM;
15641564

15651565
for (i = 0; i < vg->soc->ncommunities; i++) {
15661566
struct intel_community *comm = vg->communities + i;
15671567

1568-
*comm = vg->soc->communities[i];
1569-
15701568
comm->pad_regs = devm_platform_ioremap_resource(pdev, 0);
15711569
if (IS_ERR(comm->pad_regs))
15721570
return PTR_ERR(comm->pad_regs);

drivers/pinctrl/intel/pinctrl-cherryview.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1631,9 +1631,8 @@ static int chv_pinctrl_probe(struct platform_device *pdev)
16311631
pctrl->soc = soc_data;
16321632

16331633
pctrl->ncommunities = pctrl->soc->ncommunities;
1634-
pctrl->communities = devm_kmemdup(dev, pctrl->soc->communities,
1635-
pctrl->ncommunities * sizeof(*pctrl->communities),
1636-
GFP_KERNEL);
1634+
pctrl->communities = devm_kmemdup_array(dev, pctrl->soc->communities, pctrl->ncommunities,
1635+
sizeof(*pctrl->soc->communities), GFP_KERNEL);
16371636
if (!pctrl->communities)
16381637
return -ENOMEM;
16391638

drivers/pinctrl/intel/pinctrl-intel.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1577,8 +1577,8 @@ int intel_pinctrl_probe(struct platform_device *pdev,
15771577
* to the registers.
15781578
*/
15791579
pctrl->ncommunities = pctrl->soc->ncommunities;
1580-
pctrl->communities = devm_kcalloc(dev, pctrl->ncommunities,
1581-
sizeof(*pctrl->communities), GFP_KERNEL);
1580+
pctrl->communities = devm_kmemdup_array(dev, pctrl->soc->communities, pctrl->ncommunities,
1581+
sizeof(*pctrl->soc->communities), GFP_KERNEL);
15821582
if (!pctrl->communities)
15831583
return -ENOMEM;
15841584

@@ -1588,8 +1588,6 @@ int intel_pinctrl_probe(struct platform_device *pdev,
15881588
u32 offset;
15891589
u32 value;
15901590

1591-
*community = pctrl->soc->communities[i];
1592-
15931591
regs = devm_platform_ioremap_resource(pdev, community->barno);
15941592
if (IS_ERR(regs))
15951593
return PTR_ERR(regs);

drivers/pinctrl/intel/pinctrl-tangier.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -524,7 +524,6 @@ static int tng_pinctrl_probe(struct platform_device *pdev,
524524
struct device *dev = &pdev->dev;
525525
struct tng_family *families;
526526
struct tng_pinctrl *tp;
527-
size_t families_len;
528527
void __iomem *regs;
529528
unsigned int i;
530529

@@ -543,8 +542,8 @@ static int tng_pinctrl_probe(struct platform_device *pdev,
543542
* Make a copy of the families which we can use to hold pointers
544543
* to the registers.
545544
*/
546-
families_len = size_mul(sizeof(*families), tp->nfamilies);
547-
families = devm_kmemdup(dev, tp->families, families_len, GFP_KERNEL);
545+
families = devm_kmemdup_array(dev, tp->families, tp->nfamilies,
546+
sizeof(*tp->families), GFP_KERNEL);
548547
if (!families)
549548
return -ENOMEM;
550549

drivers/pinctrl/pxa/pinctrl-pxa2xx.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -281,9 +281,8 @@ static int pxa2xx_build_functions(struct pxa_pinctrl *pctl)
281281
for (df = pctl->ppins[i].functions; df->name; df++)
282282
if (!pxa2xx_find_function(pctl, df->name, functions))
283283
(functions + pctl->nfuncs++)->name = df->name;
284-
pctl->functions = devm_kmemdup(pctl->dev, functions,
285-
pctl->nfuncs * sizeof(*functions),
286-
GFP_KERNEL);
284+
pctl->functions = devm_kmemdup_array(pctl->dev, functions, pctl->nfuncs,
285+
sizeof(*functions), GFP_KERNEL);
287286
if (!pctl->functions)
288287
return -ENOMEM;
289288

@@ -314,7 +313,8 @@ static int pxa2xx_build_groups(struct pxa_pinctrl *pctl)
314313
pctl->ppins[j].pin.name;
315314
func = pctl->functions + i;
316315
func->ngroups = ngroups;
317-
func->groups = devm_kmemdup(pctl->dev, gtmp, ngroups * sizeof(*gtmp), GFP_KERNEL);
316+
func->groups = devm_kmemdup_array(pctl->dev, gtmp, ngroups,
317+
sizeof(*gtmp), GFP_KERNEL);
318318
if (!func->groups)
319319
return -ENOMEM;
320320
}

0 commit comments

Comments
 (0)