|
@@ -197,10 +197,9 @@ static int __init sfi_parse_gpio(struct sfi_table_header *table)
|
|
|
num = SFI_GET_NUM_ENTRIES(sb, struct sfi_gpio_table_entry);
|
|
|
pentry = (struct sfi_gpio_table_entry *)sb->pentry;
|
|
|
|
|
|
- gpio_table = kmalloc(num * sizeof(*pentry), GFP_KERNEL);
|
|
|
+ gpio_table = kmemdup(pentry, num * sizeof(*pentry), GFP_KERNEL);
|
|
|
if (!gpio_table)
|
|
|
return -1;
|
|
|
- memcpy(gpio_table, pentry, num * sizeof(*pentry));
|
|
|
gpio_num_entry = num;
|
|
|
|
|
|
pr_debug("GPIO pin info:\n");
|