]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/char/tpm/tpm_atmel.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6
[linux-2.6-omap-h63xx.git] / drivers / char / tpm / tpm_atmel.c
index 1ab0896070be2fa7cbc97006de065f5b27ef85dc..c64a1bc65349cc3959c488034fbfd892e7ac04cf 100644 (file)
@@ -7,7 +7,7 @@
  * Reiner Sailer <sailer@watson.ibm.com>
  * Kylene Hall <kjhall@us.ibm.com>
  *
- * Maintained by: <tpmdd_devel@lists.sourceforge.net>
+ * Maintained by: <tpmdd-devel@lists.sourceforge.net>
  *
  * Device driver for TCG/TCPA TPM (trusted platform module).
  * Specifications at www.trustedcomputinggroup.org      
@@ -168,12 +168,22 @@ static void atml_plat_remove(void)
        }
 }
 
-static struct device_driver atml_drv = {
-       .name = "tpm_atmel",
-       .bus = &platform_bus_type,
-       .owner = THIS_MODULE,
-       .suspend = tpm_pm_suspend,
-       .resume = tpm_pm_resume,
+static int tpm_atml_suspend(struct platform_device *dev, pm_message_t msg)
+{
+       return tpm_pm_suspend(&dev->dev, msg);
+}
+
+static int tpm_atml_resume(struct platform_device *dev)
+{
+       return tpm_pm_resume(&dev->dev);
+}
+static struct platform_driver atml_drv = {
+       .driver = {
+               .name = "tpm_atmel",
+               .owner          = THIS_MODULE,
+       },
+       .suspend = tpm_atml_suspend,
+       .resume = tpm_atml_resume,
 };
 
 static int __init init_atmel(void)
@@ -184,7 +194,7 @@ static int __init init_atmel(void)
        unsigned long base;
        struct  tpm_chip *chip;
 
-       rc = driver_register(&atml_drv);
+       rc = platform_driver_register(&atml_drv);
        if (rc)
                return rc;
 
@@ -223,13 +233,13 @@ err_rel_reg:
                atmel_release_region(base,
                                     region_size);
 err_unreg_drv:
-       driver_unregister(&atml_drv);
+       platform_driver_unregister(&atml_drv);
        return rc;
 }
 
 static void __exit cleanup_atmel(void)
 {
-       driver_unregister(&atml_drv);
+       platform_driver_unregister(&atml_drv);
        atml_plat_remove();
 }