diff -Nur linux-3.2-rc3/drivers/mtd/maps//pxa2xx-flash.c linux-3.2-rc3_patched/drivers/mtd/maps//pxa2xx-flash.c --- linux-3.2-rc3/drivers/mtd/maps//pxa2xx-flash.c 2011-11-24 05:20:28.000000000 +0100 +++ linux-3.2-rc3_patched/drivers/mtd/maps//pxa2xx-flash.c 2011-12-02 12:50:38.000000000 +0100 @@ -54,6 +54,7 @@ struct flash_platform_data *flash = pdev->dev.platform_data; struct pxa2xx_flash_info *info; struct resource *res; + struct mtd_part_parser_data ppdata; res = platform_get_resource(pdev, IORESOURCE_MEM, 0); if (!res) @@ -98,7 +99,10 @@ } info->mtd->owner = THIS_MODULE; - mtd_device_parse_register(info->mtd, probes, 0, NULL, 0); + ppdata.of_node = pdev->dev.of_node; + mtd_device_parse_register(info->mtd, probes, &ppdata, + flash ? flash->parts : NULL, + flash ? flash->nr_parts : 0); platform_set_drvdata(pdev, info); return 0;