]> git.hungrycats.org Git - linux/commitdiff
[power] Update IDE to set suspend/resume methods in bus_type.
authorPatrick Mochel <mochel@osdl.org>
Wed, 20 Aug 2003 02:01:05 +0000 (19:01 -0700)
committerPatrick Mochel <mochel@osdl.org>
Wed, 20 Aug 2003 02:01:05 +0000 (19:01 -0700)
Instead of having each driver set them in their own drivers.

drivers/ide/ide-cd.c
drivers/ide/ide-disk.c
drivers/ide/ide.c
include/linux/ide.h

index cf0b5307a8de3a1738db6540ecc93d8ac0915e66..4e7a197f661149952ed286304e2644270e146d31 100644 (file)
@@ -3330,10 +3330,6 @@ static ide_driver_t ide_cdrom_driver = {
        .drives                 = LIST_HEAD_INIT(ide_cdrom_driver.drives),
        .start_power_step       = ide_cdrom_start_power_step,
        .complete_power_step    = ide_cdrom_complete_power_step,
-       .gen_driver             = {
-               .suspend        = generic_ide_suspend,
-               .resume         = generic_ide_resume,
-       }
 };
 
 static int idecd_open(struct inode * inode, struct file * file)
index 30865145af3eaee940d17639d0b471e8ac731a78..1217e840ac0231bb35ea3905bc57509fe6ca1669 100644 (file)
@@ -1732,10 +1732,6 @@ static ide_driver_t idedisk_driver = {
        .drives                 = LIST_HEAD_INIT(idedisk_driver.drives),
        .start_power_step       = idedisk_start_power_step,
        .complete_power_step    = idedisk_complete_power_step,
-       .gen_driver             = {
-               .suspend        = generic_ide_suspend,
-               .resume         = generic_ide_resume,
-       }
 };
 
 static int idedisk_open(struct inode *inode, struct file *filp)
index 5d19aa20abcd8180b36e8725d6c5ec53521875d1..dd0ad3ff074c77370cc51b8e192450d9a44ffef0 100644 (file)
@@ -1534,16 +1534,13 @@ int ata_attach(ide_drive_t *drive)
 
 EXPORT_SYMBOL(ata_attach);
 
-int generic_ide_suspend(struct device *dev, u32 state, u32 level)
+static int generic_ide_suspend(struct device *dev, u32 state)
 {
        ide_drive_t *drive = dev->driver_data;
        struct request rq;
        struct request_pm_state rqpm;
        ide_task_t args;
 
-       if (level == dev->power_state || level != SUSPEND_SAVE_STATE)
-               return 0;
-
        memset(&rq, 0, sizeof(rq));
        memset(&rqpm, 0, sizeof(rqpm));
        memset(&args, 0, sizeof(args));
@@ -1556,18 +1553,13 @@ int generic_ide_suspend(struct device *dev, u32 state, u32 level)
        return ide_do_drive_cmd(drive, &rq, ide_wait);
 }
 
-EXPORT_SYMBOL(generic_ide_suspend);
-
-int generic_ide_resume(struct device *dev, u32 level)
+static int generic_ide_resume(struct device *dev)
 {
        ide_drive_t *drive = dev->driver_data;
        struct request rq;
        struct request_pm_state rqpm;
        ide_task_t args;
 
-       if (level == dev->power_state || level != RESUME_RESTORE_STATE)
-               return 0;
-
        memset(&rq, 0, sizeof(rq));
        memset(&rqpm, 0, sizeof(rqpm));
        memset(&args, 0, sizeof(args));
@@ -1580,8 +1572,6 @@ int generic_ide_resume(struct device *dev, u32 level)
        return ide_do_drive_cmd(drive, &rq, ide_head_wait);
 }
 
-EXPORT_SYMBOL(generic_ide_resume);
-
 int generic_ide_ioctl(struct block_device *bdev, unsigned int cmd,
                        unsigned long arg)
 {
@@ -2594,6 +2584,8 @@ EXPORT_SYMBOL(ide_probe);
 
 struct bus_type ide_bus_type = {
        .name           = "ide",
+       .suspend        = generic_ide_suspend,
+       .resume         = generic_ide_resume,
 };
 
 /*
index 82ca6da75b3fcba4640da68881d995e205e07945..a3ee36b438ca7d7547049c672c3fa10b640461c3 100644 (file)
@@ -1241,8 +1241,6 @@ typedef struct ide_driver_s {
 #define DRIVER(drive)          ((drive)->driver)
 
 extern int generic_ide_ioctl(struct block_device *, unsigned, unsigned long);
-extern int generic_ide_suspend(struct device *dev, u32 state, u32 level);
-extern int generic_ide_resume(struct device *dev, u32 level);
 
 /*
  * IDE modules.