cxgb{3,4}*: improve Kconfig dependencies
[linux-2.6.git] / drivers / scsi / scsi_wait_scan.c
1 /*
2  * scsi_wait_scan.c
3  *
4  * Copyright (C) 2006 James Bottomley <James.Bottomley@SteelEye.com>
5  *
6  * This is a simple module to wait until all the async scans are
7  * complete.  The idea is to use it in initrd/initramfs scripts.  You
8  * modprobe it after all the modprobes of the root SCSI drivers and it
9  * will wait until they have all finished scanning their busses before
10  * allowing the boot to proceed
11  */
12
13 #include <linux/module.h>
14 #include <linux/device.h>
15 #include <scsi/scsi_scan.h>
16
17 static int __init wait_scan_init(void)
18 {
19         /*
20          * First we need to wait for device probing to finish;
21          * the drivers we just loaded might just still be probing
22          * and might not yet have reached the scsi async scanning
23          */
24         wait_for_device_probe();
25         /*
26          * and then we wait for the actual asynchronous scsi scan
27          * to finish.
28          */
29         scsi_complete_async_scans();
30         return 0;
31 }
32
33 static void __exit wait_scan_exit(void)
34 {
35 }
36
37 MODULE_DESCRIPTION("SCSI wait for scans");
38 MODULE_AUTHOR("James Bottomley");
39 MODULE_LICENSE("GPL");
40
41 late_initcall(wait_scan_init);
42 module_exit(wait_scan_exit);