Merge branch 'linus' into x86/threadinfo
[pandora-kernel.git] / drivers / mfd / mcp-core.c
index 55ba230..b4ed57e 100644 (file)
@@ -77,6 +77,8 @@ static int mcp_bus_resume(struct device *dev)
 static struct bus_type mcp_bus_type = {
        .name           = "mcp",
        .match          = mcp_bus_match,
+       .probe          = mcp_bus_probe,
+       .remove         = mcp_bus_remove,
        .suspend        = mcp_bus_suspend,
        .resume         = mcp_bus_resume,
 };
@@ -198,9 +200,8 @@ struct mcp *mcp_host_alloc(struct device *parent, size_t size)
 {
        struct mcp *mcp;
 
-       mcp = kmalloc(sizeof(struct mcp) + size, GFP_KERNEL);
+       mcp = kzalloc(sizeof(struct mcp) + size, GFP_KERNEL);
        if (mcp) {
-               memset(mcp, 0, sizeof(struct mcp) + size);
                spin_lock_init(&mcp->lock);
                mcp->attached_device.parent = parent;
                mcp->attached_device.bus = &mcp_bus_type;
@@ -227,8 +228,6 @@ EXPORT_SYMBOL(mcp_host_unregister);
 int mcp_driver_register(struct mcp_driver *mcpdrv)
 {
        mcpdrv->drv.bus = &mcp_bus_type;
-       mcpdrv->drv.probe = mcp_bus_probe;
-       mcpdrv->drv.remove = mcp_bus_remove;
        return driver_register(&mcpdrv->drv);
 }
 EXPORT_SYMBOL(mcp_driver_register);