--- a/drivers/mtd/nand/rbppc_nand.c
+++ b/drivers/mtd/nand/rbppc_nand.c
@@ -14,8 +14,8 @@
 #include <linux/mtd/mtd.h>
 #include <linux/mtd/partitions.h>
 #include <linux/of_platform.h>
-#include <asm/of_platform.h>
-#include <asm/of_device.h>
+#include <linux/of_device.h>
+#include <linux/slab.h>
 #include <linux/delay.h>
 #include <asm/io.h>
 
@@ -116,7 +116,7 @@ static void rbppc_nand_read_buf(struct m
 
 static unsigned init_ok = 0;
 
-static int rbppc_nand_probe(struct of_device *pdev,
+static int rbppc_nand_probe(struct platform_device *pdev,
 			    const struct of_device_id *match)
 {
 	struct device_node *gpio;
