On Tue, 30 Oct 2007, Juergen Keil wrote:

>> I wonder if a uadmin 3 8 would actually go all the way to S3. I confess
>> while I was the one to setup the project, I have not actually tested it
>> myself on x86 (SPARC of course I have). I'll be working on this a bit
>> more later this week. (I wanted to hit a milestone on my SDcard drivers
>> first.)
>
> Somehow I don't understand the uadmin 3 XX numbers you're refering to...
>
>
> uadmin 3 is the A_FREEZE command, and A_FREEZE seems to support these
> subcommands (see /usr/include/sys/uadmin.h):
>
> /*
> * Functions reserved for A_FREEZE (may not be available on all platforms)
> * Note:  AD_COMPRESS, AD_CHECK and AD_FORCE are now obsolete
> *      The first two are succeeded by AD_SUSPEND_TO_DISK and
> *              AD_CHECK_SUSPEND_TO_DISK respectively.
> *      AD_FORCE should not be used by any new application
> *
> *      We maintain compatibility with the earlier interfaces:
> *      AD_COMPRESS and AD_CHECK, by preserving those values
> *      in the corresponding new interfaces
> */
>
> #define AD_COMPRESS     0       /* store state file compressed during CPR */
> #define AD_FORCE        1       /* force to do AD_COMPRESS */
> #define AD_CHECK        2       /* test if CPR module is available */
> #define AD_SUSPEND_TO_DISK         AD_COMPRESS  /* A_FREEZE, CPR or ACPI S4 */
> #define AD_CHECK_SUSPEND_TO_DISK   AD_CHECK     /* A_FREEZE, CPR/S4 capable? 
> */
> #define AD_SUSPEND_TO_RAM          20           /* A_FREEZE, S3 */
> #define AD_CHECK_SUSPEND_TO_RAM    21           /* A_FREEZE, S3 capable? */
>
>
>
>
> So we have "uadmin 3 21" to check if suspend to ram might work, and
> "uadmin 3 20" to actually suspend the system to ram.  uadmin 3 20 doesn't
> seem to be a test point but the real function. And uadmin 3 8 doesn't exist.
>
>


   8 is defined in cpr.h, and technically is also a test entry point for 
suspend to disk.  The numbers 0-10 are not supported on x86, and 11 has 
some minimal support (only calls cpr_suspend_devices(), followed 
immediately by cpr_resume_devices()).  The values you want to use on x86 
are 20-25.

        ---- Randy
_______________________________________________
driver-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/driver-discuss

Reply via email to