pr_debug("s3c2410_nand_probe(%p)\n", pdev);
 
-       info = kmalloc(sizeof(*info), GFP_KERNEL);
+       info = kzalloc(sizeof(*info), GFP_KERNEL);
        if (info == NULL) {
                dev_err(&pdev->dev, "no memory for flash info\n");
                err = -ENOMEM;
                goto exit_error;
        }
 
-       memset(info, 0, sizeof(*info));
        platform_set_drvdata(pdev, info);
 
        spin_lock_init(&info->controller.lock);
        /* allocate our information */
 
        size = nr_sets * sizeof(*info->mtds);
-       info->mtds = kmalloc(size, GFP_KERNEL);
+       info->mtds = kzalloc(size, GFP_KERNEL);
        if (info->mtds == NULL) {
                dev_err(&pdev->dev, "failed to allocate mtd storage\n");
                err = -ENOMEM;
                goto exit_error;
        }
 
-       memset(info->mtds, 0, size);
-
        /* initialise all possible chips */
 
        nmtd = info->mtds;