enum ps3_match_sub_id match_sub_id;
        struct device_driver core;
        int (*probe)(struct ps3_system_bus_device *);
-       int (*remove)(struct ps3_system_bus_device *);
-       int (*shutdown)(struct ps3_system_bus_device *);
+       void (*remove)(struct ps3_system_bus_device *);
+       void (*shutdown)(struct ps3_system_bus_device *);
 /*     int (*suspend)(struct ps3_system_bus_device *, pm_message_t); */
 /*     int (*resume)(struct ps3_system_bus_device *); */
 };
 
 
 static int ps3_system_bus_remove(struct device *_dev)
 {
-       int result = 0;
        struct ps3_system_bus_device *dev = ps3_dev_to_system_bus_dev(_dev);
        struct ps3_system_bus_driver *drv;
 
        BUG_ON(!drv);
 
        if (drv->remove)
-               result = drv->remove(dev);
+               drv->remove(dev);
        else
                dev_dbg(&dev->core, "%s:%d %s: no remove method\n",
                        __func__, __LINE__, drv->core.name);
 
        pr_debug(" <- %s:%d: %s\n", __func__, __LINE__, dev_name(&dev->core));
-       return result;
+       return 0;
 }
 
 static void ps3_system_bus_shutdown(struct device *_dev)
 
        return error;
 }
 
-static int ps3disk_remove(struct ps3_system_bus_device *_dev)
+static void ps3disk_remove(struct ps3_system_bus_device *_dev)
 {
        struct ps3_storage_device *dev = to_ps3_storage_device(&_dev->core);
        struct ps3disk_private *priv = ps3_system_bus_get_drvdata(&dev->sbd);
        kfree(dev->bounce_buf);
        kfree(priv);
        ps3_system_bus_set_drvdata(_dev, NULL);
-       return 0;
 }
 
 static struct ps3_system_bus_driver ps3disk = {
 
        return error;
 }
 
-static int ps3vram_remove(struct ps3_system_bus_device *dev)
+static void ps3vram_remove(struct ps3_system_bus_device *dev)
 {
        struct ps3vram_priv *priv = ps3_system_bus_get_drvdata(dev);
 
        free_pages((unsigned long) priv->xdr_buf, get_order(XDR_BUF_SIZE));
        kfree(priv);
        ps3_system_bus_set_drvdata(dev, NULL);
-       return 0;
 }
 
 static struct ps3_system_bus_driver ps3vram = {
 
        return error;
 }
 
-static int ps3flash_remove(struct ps3_system_bus_device *_dev)
+static void ps3flash_remove(struct ps3_system_bus_device *_dev)
 {
        struct ps3_storage_device *dev = to_ps3_storage_device(&_dev->core);
 
        kfree(ps3_system_bus_get_drvdata(&dev->sbd));
        ps3_system_bus_set_drvdata(&dev->sbd, NULL);
        ps3flash_dev = NULL;
-       return 0;
 }
 
 
 
  * ps3_gelic_driver_remove - remove a device from the control of this driver
  */
 
-static int ps3_gelic_driver_remove(struct ps3_system_bus_device *dev)
+static void ps3_gelic_driver_remove(struct ps3_system_bus_device *dev)
 {
        struct gelic_card *card = ps3_system_bus_get_drvdata(dev);
        struct net_device *netdev0;
        ps3_close_hv_device(dev);
 
        pr_debug("%s: done\n", __func__);
-       return 0;
 }
 
 static struct ps3_system_bus_driver ps3_gelic_driver = {
 
        return 0;
 }
 
-static int ps3_lpm_remove(struct ps3_system_bus_device *dev)
+static void ps3_lpm_remove(struct ps3_system_bus_device *dev)
 {
        dev_dbg(&dev->core, " -> %s:%u:\n", __func__, __LINE__);
 
        lpm_priv = NULL;
 
        dev_info(&dev->core, " <- %s:%u:\n", __func__, __LINE__);
-       return 0;
 }
 
 static struct ps3_system_bus_driver ps3_lpm_driver = {
 
  * device can no longer be used.
  */
 
-static int ps3_vuart_remove(struct ps3_system_bus_device *dev)
+static void ps3_vuart_remove(struct ps3_system_bus_device *dev)
 {
        struct ps3_vuart_port_priv *priv = to_port_priv(dev);
        struct ps3_vuart_port_driver *drv;
                dev_dbg(&dev->core, "%s:%d: no driver bound\n", __func__,
                        __LINE__);
                mutex_unlock(&vuart_bus_priv.probe_mutex);
-               return 0;
+               return;
        }
 
        drv = ps3_system_bus_dev_to_vuart_drv(dev);
 
        dev_dbg(&dev->core, " <- %s:%d\n", __func__, __LINE__);
        mutex_unlock(&vuart_bus_priv.probe_mutex);
-       return 0;
 }
 
 /**
  * sequence.
  */
 
-static int ps3_vuart_shutdown(struct ps3_system_bus_device *dev)
+static void ps3_vuart_shutdown(struct ps3_system_bus_device *dev)
 {
        struct ps3_vuart_port_driver *drv;
 
                dev_dbg(&dev->core, "%s:%d: no driver bound\n", __func__,
                        __LINE__);
                mutex_unlock(&vuart_bus_priv.probe_mutex);
-               return 0;
+               return;
        }
 
        drv = ps3_system_bus_dev_to_vuart_drv(dev);
        dev_dbg(&dev->core, " <- %s:%d\n", __func__, __LINE__);
 
        mutex_unlock(&vuart_bus_priv.probe_mutex);
-       return 0;
 }
 
 static int __init ps3_vuart_bus_init(void)
 
        return error;
 }
 
-static int ps3rom_remove(struct ps3_system_bus_device *_dev)
+static void ps3rom_remove(struct ps3_system_bus_device *_dev)
 {
        struct ps3_storage_device *dev = to_ps3_storage_device(&_dev->core);
        struct Scsi_Host *host = ps3_system_bus_get_drvdata(&dev->sbd);
        scsi_host_put(host);
        ps3_system_bus_set_drvdata(&dev->sbd, NULL);
        kfree(dev->bounce_buf);
-       return 0;
 }
 
 static struct ps3_system_bus_driver ps3rom = {
 
        return result;
 }
 
-static int ps3_ehci_remove(struct ps3_system_bus_device *dev)
+static void ps3_ehci_remove(struct ps3_system_bus_device *dev)
 {
        unsigned int tmp;
        struct usb_hcd *hcd = ps3_system_bus_get_drvdata(dev);
 
        ps3_dma_region_free(dev->d_region);
        ps3_close_hv_device(dev);
-
-       return 0;
 }
 
 static int __init ps3_ehci_driver_register(struct ps3_system_bus_driver *drv)
 
        return result;
 }
 
-static int ps3_ohci_remove(struct ps3_system_bus_device *dev)
+static void ps3_ohci_remove(struct ps3_system_bus_device *dev)
 {
        unsigned int tmp;
        struct usb_hcd *hcd = ps3_system_bus_get_drvdata(dev);
 
        ps3_dma_region_free(dev->d_region);
        ps3_close_hv_device(dev);
-
-       return 0;
 }
 
 static int __init ps3_ohci_driver_register(struct ps3_system_bus_driver *drv)
 
        return retval;
 }
 
-static int ps3fb_shutdown(struct ps3_system_bus_device *dev)
+static void ps3fb_shutdown(struct ps3_system_bus_device *dev)
 {
        struct fb_info *info = ps3_system_bus_get_drvdata(dev);
        u64 xdr_lpar = ps3_mm_phys_to_lpar(__pa(ps3fb_videomemory.address));
        lv1_gpu_memory_free(ps3fb.memory_handle);
        ps3_close_hv_device(dev);
        dev_dbg(&dev->core, " <- %s:%d\n", __func__, __LINE__);
-
-       return 0;
 }
 
 static struct ps3_system_bus_driver ps3fb_driver = {
 
 }; /* snd_ps3_probe */
 
 /* called when module removal */
-static int snd_ps3_driver_remove(struct ps3_system_bus_device *dev)
+static void snd_ps3_driver_remove(struct ps3_system_bus_device *dev)
 {
        int ret;
        pr_info("%s:start id=%d\n", __func__,  dev->match_id);
        lv1_gpu_device_unmap(2);
        ps3_close_hv_device(dev);
        pr_info("%s:end id=%d\n", __func__, dev->match_id);
-       return 0;
 } /* snd_ps3_remove */
 
 static struct ps3_system_bus_driver snd_ps3_bus_driver_info = {