Commit 6d56eee2 authored by Heiko Carstens's avatar Heiko Carstens Committed by Martin Schwidefsky

[S390] 3215 console: convert from bootmem to slab

The slab allocator is earlier available so convert the
bootmem allocations to slab/gfp allocations.
Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
parent d7d1104f
...@@ -20,10 +20,7 @@ ...@@ -20,10 +20,7 @@
#include <linux/interrupt.h> #include <linux/interrupt.h>
#include <linux/err.h> #include <linux/err.h>
#include <linux/reboot.h> #include <linux/reboot.h>
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/bootmem.h>
#include <asm/ccwdev.h> #include <asm/ccwdev.h>
#include <asm/cio.h> #include <asm/cio.h>
#include <asm/io.h> #include <asm/io.h>
...@@ -883,7 +880,7 @@ static int __init con3215_init(void) ...@@ -883,7 +880,7 @@ static int __init con3215_init(void)
raw3215_freelist = NULL; raw3215_freelist = NULL;
spin_lock_init(&raw3215_freelist_lock); spin_lock_init(&raw3215_freelist_lock);
for (i = 0; i < NR_3215_REQ; i++) { for (i = 0; i < NR_3215_REQ; i++) {
req = (struct raw3215_req *) alloc_bootmem_low(sizeof(struct raw3215_req)); req = kzalloc(sizeof(struct raw3215_req), GFP_KERNEL | GFP_DMA);
req->next = raw3215_freelist; req->next = raw3215_freelist;
raw3215_freelist = req; raw3215_freelist = req;
} }
...@@ -893,10 +890,9 @@ static int __init con3215_init(void) ...@@ -893,10 +890,9 @@ static int __init con3215_init(void)
return -ENODEV; return -ENODEV;
raw3215[0] = raw = (struct raw3215_info *) raw3215[0] = raw = (struct raw3215_info *)
alloc_bootmem_low(sizeof(struct raw3215_info)); kzalloc(sizeof(struct raw3215_info), GFP_KERNEL | GFP_DMA);
memset(raw, 0, sizeof(struct raw3215_info)); raw->buffer = kzalloc(RAW3215_BUFFER_SIZE, GFP_KERNEL | GFP_DMA);
raw->buffer = (char *) alloc_bootmem_low(RAW3215_BUFFER_SIZE); raw->inbuf = kzalloc(RAW3215_INBUF_SIZE, GFP_KERNEL | GFP_DMA);
raw->inbuf = (char *) alloc_bootmem_low(RAW3215_INBUF_SIZE);
raw->cdev = cdev; raw->cdev = cdev;
dev_set_drvdata(&cdev->dev, raw); dev_set_drvdata(&cdev->dev, raw);
cdev->handler = raw3215_irq; cdev->handler = raw3215_irq;
...@@ -906,9 +902,9 @@ static int __init con3215_init(void) ...@@ -906,9 +902,9 @@ static int __init con3215_init(void)
/* Request the console irq */ /* Request the console irq */
if (raw3215_startup(raw) != 0) { if (raw3215_startup(raw) != 0) {
free_bootmem((unsigned long) raw->inbuf, RAW3215_INBUF_SIZE); kfree(raw->inbuf);
free_bootmem((unsigned long) raw->buffer, RAW3215_BUFFER_SIZE); kfree(raw->buffer);
free_bootmem((unsigned long) raw, sizeof(struct raw3215_info)); kfree(raw);
raw3215[0] = NULL; raw3215[0] = NULL;
return -ENODEV; return -ENODEV;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment