diff options
author | Russell King <rmk@dyn-67.arm.linux.org.uk> | 2009-07-09 19:07:22 +0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2009-07-09 19:07:22 +0400 |
commit | 4e66a0f536ad449a71de75bc81f4a830ef38d538 (patch) | |
tree | f6f7f4d9a351aa9e2fd07bec275785a533d8c21b /arch/arm/plat-pxa/gpio.c | |
parent | 34f25476ace556263784ea2f8173e22b25557a13 (diff) | |
parent | 22fe84394f405c673b362d23dcc2d5d095ab5f6c (diff) | |
download | linux-4e66a0f536ad449a71de75bc81f4a830ef38d538.tar.xz |
Merge branch 'fix' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6
Diffstat (limited to 'arch/arm/plat-pxa/gpio.c')
-rw-r--r-- | arch/arm/plat-pxa/gpio.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/arch/arm/plat-pxa/gpio.c b/arch/arm/plat-pxa/gpio.c index abc79d44acaa..98548c6903a0 100644 --- a/arch/arm/plat-pxa/gpio.c +++ b/arch/arm/plat-pxa/gpio.c @@ -16,7 +16,7 @@ #include <linux/irq.h> #include <linux/io.h> #include <linux/sysdev.h> -#include <linux/bootmem.h> +#include <linux/slab.h> #include <mach/gpio.h> @@ -112,17 +112,12 @@ static int __init pxa_init_gpio_chip(int gpio_end) int i, gpio, nbanks = gpio_to_bank(gpio_end) + 1; struct pxa_gpio_chip *chips; - /* this is early, we have to use bootmem allocator, and we really - * want this to be allocated dynamically for different 'gpio_end' - */ - chips = alloc_bootmem_low(nbanks * sizeof(struct pxa_gpio_chip)); + chips = kzalloc(nbanks * sizeof(struct pxa_gpio_chip), GFP_KERNEL); if (chips == NULL) { pr_err("%s: failed to allocate GPIO chips\n", __func__); return -ENOMEM; } - memset(chips, 0, nbanks * sizeof(struct pxa_gpio_chip)); - for (i = 0, gpio = 0; i < nbanks; i++, gpio += 32) { struct gpio_chip *c = &chips[i].chip; |