diff options
Diffstat (limited to 'Board/EM/IdeAcoustic/Acoustic.sd')
-rw-r--r-- | Board/EM/IdeAcoustic/Acoustic.sd | 433 |
1 files changed, 433 insertions, 0 deletions
diff --git a/Board/EM/IdeAcoustic/Acoustic.sd b/Board/EM/IdeAcoustic/Acoustic.sd new file mode 100644 index 0000000..962015b --- /dev/null +++ b/Board/EM/IdeAcoustic/Acoustic.sd @@ -0,0 +1,433 @@ +//********************************************************************** +//********************************************************************** +//** ** +//** (C)Copyright 1985-2010, American Megatrends, Inc. ** +//** ** +//** All Rights Reserved. ** +//** ** +//** 5555 Oakbrook Pkwy, Suite 200, Norcross, GA 30093 ** +//** ** +//** Phone: (770)-246-8600 ** +//** ** +//********************************************************************** +//********************************************************************** +//********************************************************************** +// +// $Header: /Alaska/SOURCE/Modules/HddAcoustic/Acoustic.sd 3 9/22/11 4:17a Rameshr $ +// +// $Revision: 3 $ +// +// $Date: 9/22/11 4:17a $ +//********************************************************************** +// Revision History +// ---------------- +// $Log: /Alaska/SOURCE/Modules/HddAcoustic/Acoustic.sd $ +// +// 3 9/22/11 4:17a Rameshr +// [TAG] EIP68563 +// [Category] Improvement +// [Description] Manufacturing Mode not set for the Acoustic setup +// options. +// [Files] Acoustic.sd +// +// 2 1/11/11 12:02a Rameshr +// Coding Error Resolved. +// +// 1 1/05/11 12:22a Rameshr +// Initial check-in for Hdd Acoustic Management Support. +//********************************************************************** +//<AMI_FHDR_START> +// +// Name: Acoustic.SD +// +// Description: Acoustic driver Setup data definitions +// +//<AMI_FHDR_END> +//********************************************************************** + +#ifdef SETUP_DATA_DEFINITION +/***********************************************************/ +/* Put NVRAM data definitions here. +/* For example: UINT8 Data1; +/* These definitions will be converted by the build process +/* to a definitions of SETUP_DATA fields. +/***********************************************************/ +#define DEV 0 + +#if (EFI_SPECIFICATION_VERSION > 0x00020000) + #define DEV00 0 + #define DEV01 1 + #define DEV02 2 + #define DEV03 3 + #define DEV04 4 + #define DEV05 5 + #define DEV06 6 + #define DEV07 7 + #define DEV08 8 + #define DEV09 9 + #define DEV10 10 + #define DEV11 11 + #define DEV12 12 + #define DEV13 13 +#else + #define DEV00 1 + #define DEV01 2 + #define DEV02 3 + #define DEV03 4 + #define DEV04 5 + #define DEV05 6 + #define DEV06 7 + #define DEV07 8 + #define DEV08 9 + #define DEV09 10 + #define DEV10 11 + #define DEV11 12 + #define DEV12 13 + #define DEV13 14 +#endif + UINT8 AcousticPwrMgmt; + UINT8 AcousticLevel; +// +// Porting required +// +// Add more elements if there are more than 6 SATA ports + UINT8 AcousticSupported[ACOUSTIC_DEVICE_COUNT]; + UINT8 AcousticLevelIndv[ACOUSTIC_DEVICE_COUNT]; + UINT8 AcDevicePresent[ACOUSTIC_DEVICE_COUNT]; +#endif + +#if defined(VFRCOMPILE) && !defined(CONTROLS_ARE_DEFINED) +#define CONTROL_DEFINITION +#endif +#ifdef CONTROL_DEFINITION + +#define ACOUSTIC_ONEOF_ACOUSTICPWRMGMT\ + oneof varid = SETUP_DATA.AcousticPwrMgmt,\ + prompt = STRING_TOKEN(STR_AUTO_ACOUSTIC),\ + help = STRING_TOKEN(STR_AUTO_ACOUSTIC_HELP),\ + option text = STRING_TOKEN(STR_ENABLED_STRING), value = 1, flags = 0, key = 0;\ + option text = STRING_TOKEN(STR_DISABLED_STRING), value = 0, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED, key = 0;\ + endoneof; + +#if !INDIVIDUAL_ACOUSTIC_SUPPORT + +#define ACOUSTIC_ONEOF_ACOUSTICLEVEL\ + oneof varid = SETUP_DATA.AcousticLevel,\ + prompt = STRING_TOKEN(STR_AUTO_ACOUSTIC_MODE),\ + help = STRING_TOKEN(STR_AUTO_ACOUSTIC_MODE_HELP),\ + option text = STRING_TOKEN(STR_BYPASS_STRING), value = 0xFF, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED, key = 0;\ + option text = STRING_TOKEN(STR_QUIET_STRING), value = 0x80, flags = 0, key = 0;\ + option text = STRING_TOKEN(STR_MAXIMUM_PERFORMANCE_STRING), value = 0xFE, flags = 0, key = 0;\ + endoneof; + +#else + #define ACOUSTIC_ONEOF_ACOUSTICLEVEL +#endif // END #if !INDIVIDUAL_ACOUSTIC_SUPPORT + +#if INDIVIDUAL_ACOUSTIC_SUPPORT + +#define ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_PRESENT(DEV)\ + oneof varid = SETUP_DATA.AcousticLevelIndv[DEV],\ + prompt = STRING_TOKEN(STR_AUTO_ACOUSTIC_MODE_INDV),\ + help = STRING_TOKEN(STR_AUTO_ACOUSTIC_MODE_HELP),\ + option text = STRING_TOKEN(STR_BYPASS_STRING), value = 0xFF, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED, key = 0;\ + option text = STRING_TOKEN(STR_QUIET_STRING), value = 0x80, flags = 0, key = 0;\ + option text = STRING_TOKEN(STR_MAXIMUM_PERFORMANCE_STRING), value = 0xFE, flags = 0, key = 0;\ + endoneof; + +#define ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_NOTSUPPORTED(DEV)\ + oneof varid = SETUP_DATA.AcousticLevelIndv[DEV],\ + prompt = STRING_TOKEN(STR_AUTO_ACOUSTIC_MODE_INDV),\ + help = STRING_TOKEN(STR_AUTO_ACOUSTIC_MODE_HELP),\ + option text = STRING_TOKEN(STR_NOT_SUPPORTED), value = 0xFF, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED, key = 0;\ + endoneof; + +#define ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_NOTAVAILABLE(DEV)\ + oneof varid = SETUP_DATA.AcousticLevelIndv[DEV],\ + prompt = STRING_TOKEN(STR_AUTO_ACOUSTIC_MODE_INDV),\ + help = STRING_TOKEN(STR_AUTO_ACOUSTIC_MODE_HELP),\ + option text = STRING_TOKEN(STR_NOT_AVAILABLE), value = 0xFF, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED, key = 0;\ + endoneof; + +#else + #define ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_PRESENT(DEV) + #define ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_NOTSUPPORTED(DEV) + #define ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_NOTAVAILABLE(DEV) +#endif // END #if INDIVIDUAL_ACOUSTIC_SUPPORT +#endif // END #ifdef CONTROL_DEFINITION + +#ifdef CONTROLS_WITH_DEFAULTS + ACOUSTIC_ONEOF_ACOUSTICPWRMGMT + ACOUSTIC_ONEOF_ACOUSTICLEVEL + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_PRESENT(DEV) + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_NOTSUPPORTED(DEV) + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_NOTAVAILABLE(DEV) +#endif // END #ifdef CONTROLS_WITH_DEFAULTS + +#ifdef ADVANCED_FORM_SET + +#ifndef SUPPRESS_GRAYOUT_ENDIF +#define SUPPRESS_GRAYOUT_ENDIF endif; +#endif + +#ifdef FORM_SET_TYPEDEF +// +//If you need any additional type definitions add them here +// +#endif + +#ifdef FORM_SET_VARSTORE +// +//If you need custom varstore's define them here +// +#endif + + #ifdef FORM_SET_ITEM +// +// Define controls to be added to the main page of the formset +// + + #endif + + #ifdef FORM_SET_GOTO + // + // Define goto commands for the forms defined in this file + // + goto SATA_ACOUSTIC_DEVICE_OPTIONS_FORM_ID, + prompt = STRING_TOKEN(STR_ACOUSTIC_SUBTITLE), + help = STRING_TOKEN(STR_ACOUSTIC_SUBTITLE_HELP); + #endif + + #ifdef FORM_SET_FORM + // + // Define forms + // + + #ifndef ACOUSTIC_FORM_MAIN + #define ACOUSTIC_FORM_MAIN + form formid = AUTO_ID(SATA_ACOUSTIC_DEVICE_OPTIONS_FORM_ID), + title = STRING_TOKEN(STR_SATA_ACOUSTIC_OPTIONS_FORM_TITLE); + + SEPARATOR + SUBTITLE(STRING_TOKEN(STR_ACOUSTIC_SUBTITLE)) + SEPARATOR + + ACOUSTIC_ONEOF_ACOUSTICPWRMGMT + + #if !INDIVIDUAL_ACOUSTIC_SUPPORT + suppressif ideqval SETUP_DATA.AcousticPwrMgmt == 0x0; + ACOUSTIC_ONEOF_ACOUSTICLEVEL + endif; + #endif + + #if INDIVIDUAL_ACOUSTIC_SUPPORT + SEPARATOR + + suppressif ideqval SETUP_DATA.AcDevicePresent[DEV00] == 0x0; + text + help = STRING_TOKEN(STR_EMPTY), + text = STRING_TOKEN(STR_ACSATA_PORT0), + text = STRING_TOKEN(STR_EMPTY), + flags = 0, + key = 0; + text + help = STRING_TOKEN(STR_EMPTY), + text = STRING_TOKEN(STR_ACHDD_0), + text = STRING_TOKEN(STR_EMPTY), + flags = 0, + key = 0; + endif; + + suppressif ideqval SETUP_DATA.AcousticPwrMgmt == 0x0 OR ideqval SETUP_DATA.AcousticSupported[DEV00] == 0x0; + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_PRESENT(DEV00) + endif; + + suppressif ideqval SETUP_DATA.AcDevicePresent[DEV00] == 0x0 OR + ideqval SETUP_DATA.AcousticSupported[DEV00] == 0x1 OR + ideqval SETUP_DATA.AcousticPwrMgmt == 0x0; + grayoutif ideqval SETUP_DATA.AcousticPwrMgmt == 0x1; + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_NOTSUPPORTED(DEV00) + SUPPRESS_GRAYOUT_ENDIF + + suppressif ideqval SETUP_DATA.AcDevicePresent[DEV00] == 0x0 OR ideqval SETUP_DATA.AcousticPwrMgmt == 0x1; + grayoutif ideqval SETUP_DATA.AcousticPwrMgmt == 0x0; + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_NOTAVAILABLE(DEV00) + SUPPRESS_GRAYOUT_ENDIF + + suppressif ideqval SETUP_DATA.AcDevicePresent[DEV01] == 0x0; + text + help = STRING_TOKEN(STR_EMPTY), + text = STRING_TOKEN(STR_ACSATA_PORT1), + text = STRING_TOKEN(STR_EMPTY), + flags = 0, + key = 0; + text + help = STRING_TOKEN(STR_EMPTY), + text = STRING_TOKEN(STR_ACHDD_1), + text = STRING_TOKEN(STR_EMPTY), + flags = 0, + key = 0; + endif; + + suppressif ideqval SETUP_DATA.AcousticPwrMgmt == 0x0 OR ideqval SETUP_DATA.AcousticSupported[DEV01] == 0x0; + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_PRESENT(DEV01) + endif; + + suppressif ideqval SETUP_DATA.AcDevicePresent[DEV01] == 0x0 OR + ideqval SETUP_DATA.AcousticSupported[DEV01] == 0x1 OR + ideqval SETUP_DATA.AcousticPwrMgmt == 0x0; + grayoutif ideqval SETUP_DATA.AcousticPwrMgmt == 0x1; + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_NOTSUPPORTED(DEV01) + SUPPRESS_GRAYOUT_ENDIF + + suppressif ideqval SETUP_DATA.AcDevicePresent[DEV01] == 0x0 OR ideqval SETUP_DATA.AcousticPwrMgmt == 0x1; + grayoutif ideqval SETUP_DATA.AcousticPwrMgmt == 0x0; + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_NOTAVAILABLE(DEV01) + SUPPRESS_GRAYOUT_ENDIF + + suppressif ideqval SETUP_DATA.AcDevicePresent[DEV02] == 0x0; + text + help = STRING_TOKEN(STR_EMPTY), + text = STRING_TOKEN(STR_ACSATA_PORT2), + text = STRING_TOKEN(STR_EMPTY), + flags = 0, + key = 0; + text + help = STRING_TOKEN(STR_EMPTY), + text = STRING_TOKEN(STR_ACHDD_2), + text = STRING_TOKEN(STR_EMPTY), + flags = 0, + key = 0; + endif; + + suppressif ideqval SETUP_DATA.AcousticPwrMgmt == 0x0 OR ideqval SETUP_DATA.AcousticSupported[DEV02] == 0x0; + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_PRESENT(DEV02) + endif; + + suppressif ideqval SETUP_DATA.AcDevicePresent[DEV02] == 0x0 OR + ideqval SETUP_DATA.AcousticSupported[DEV02] == 0x1 OR + ideqval SETUP_DATA.AcousticPwrMgmt == 0x0; + grayoutif ideqval SETUP_DATA.AcousticPwrMgmt == 0x1; + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_NOTSUPPORTED(DEV02) + SUPPRESS_GRAYOUT_ENDIF + + suppressif ideqval SETUP_DATA.AcDevicePresent[DEV02] == 0x0 OR ideqval SETUP_DATA.AcousticPwrMgmt == 0x1; + grayoutif ideqval SETUP_DATA.AcousticPwrMgmt == 0x0; + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_NOTAVAILABLE(DEV02) + SUPPRESS_GRAYOUT_ENDIF + + suppressif ideqval SETUP_DATA.AcDevicePresent[DEV03] == 0x0; + text + help = STRING_TOKEN(STR_EMPTY), + text = STRING_TOKEN(STR_ACSATA_PORT3), + text = STRING_TOKEN(STR_EMPTY), + flags = 0, + key = 0; + text + help = STRING_TOKEN(STR_EMPTY), + text = STRING_TOKEN(STR_ACHDD_3), + text = STRING_TOKEN(STR_EMPTY), + flags = 0, + key = 0; + endif; + + suppressif ideqval SETUP_DATA.AcousticPwrMgmt == 0x0 OR ideqval SETUP_DATA.AcousticSupported[DEV03] == 0x0; + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_PRESENT(DEV03) + endif; + + suppressif ideqval SETUP_DATA.AcDevicePresent[DEV03] == 0x0 OR + ideqval SETUP_DATA.AcousticSupported[DEV03] == 0x1 OR + ideqval SETUP_DATA.AcousticPwrMgmt == 0x0; + grayoutif ideqval SETUP_DATA.AcousticPwrMgmt == 0x1; + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_NOTSUPPORTED(DEV03) + SUPPRESS_GRAYOUT_ENDIF + + suppressif ideqval SETUP_DATA.AcDevicePresent[DEV03] == 0x0 OR ideqval SETUP_DATA.AcousticPwrMgmt == 0x1; + grayoutif ideqval SETUP_DATA.AcousticPwrMgmt == 0x0; + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_NOTAVAILABLE(DEV03) + SUPPRESS_GRAYOUT_ENDIF + + suppressif ideqval SETUP_DATA.AcDevicePresent[DEV04] == 0x0; + text + help = STRING_TOKEN(STR_EMPTY), + text = STRING_TOKEN(STR_ACSATA_PORT4), + text = STRING_TOKEN(STR_EMPTY), + flags = 0, + key = 0; + text + help = STRING_TOKEN(STR_EMPTY), + text = STRING_TOKEN(STR_ACHDD_4), + text = STRING_TOKEN(STR_EMPTY), + flags = 0, + key = 0; + endif; + + suppressif ideqval SETUP_DATA.AcousticPwrMgmt == 0x0 OR ideqval SETUP_DATA.AcousticSupported[DEV04] == 0x0; + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_PRESENT(DEV04) + endif; + + suppressif ideqval SETUP_DATA.AcDevicePresent[DEV04] == 0x0 OR + ideqval SETUP_DATA.AcousticSupported[DEV04] == 0x1 OR + ideqval SETUP_DATA.AcousticPwrMgmt == 0x0; + grayoutif ideqval SETUP_DATA.AcousticPwrMgmt == 0x1; + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_NOTSUPPORTED(DEV04) + SUPPRESS_GRAYOUT_ENDIF + + suppressif ideqval SETUP_DATA.AcDevicePresent[DEV04] == 0x0 OR ideqval SETUP_DATA.AcousticPwrMgmt == 0x1; + grayoutif ideqval SETUP_DATA.AcousticPwrMgmt == 0x0; + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_NOTAVAILABLE(DEV04) + SUPPRESS_GRAYOUT_ENDIF + + suppressif ideqval SETUP_DATA.AcDevicePresent[DEV05] == 0x0; + text + help = STRING_TOKEN(STR_EMPTY), + text = STRING_TOKEN(STR_ACSATA_PORT5), + text = STRING_TOKEN(STR_EMPTY), + flags = 0, + key = 0; + text + help = STRING_TOKEN(STR_EMPTY), + text = STRING_TOKEN(STR_ACHDD_5), + text = STRING_TOKEN(STR_EMPTY), + flags = 0, + key = 0; + endif; + + suppressif ideqval SETUP_DATA.AcousticPwrMgmt == 0x0 OR ideqval SETUP_DATA.AcousticSupported[DEV05] == 0x0; + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_PRESENT(DEV05) + endif; + + suppressif ideqval SETUP_DATA.AcDevicePresent[DEV05] == 0x0 OR + ideqval SETUP_DATA.AcousticSupported[DEV05] == 0x1 OR + ideqval SETUP_DATA.AcousticPwrMgmt == 0x0; + grayoutif ideqval SETUP_DATA.AcousticPwrMgmt == 0x1; + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_NOTSUPPORTED(DEV05) + SUPPRESS_GRAYOUT_ENDIF + + suppressif ideqval SETUP_DATA.AcDevicePresent[DEV05] == 0x0 OR ideqval SETUP_DATA.AcousticPwrMgmt == 0x1; + grayoutif ideqval SETUP_DATA.AcousticPwrMgmt == 0x0; + ACOUSTIC_ONEOF_ACOUSTICLEVELINDV_NOTAVAILABLE(DEV05) + SUPPRESS_GRAYOUT_ENDIF + + #endif + + endform;//end form SATA_DEVICE_OPTIONS_FORM_ID +#endif // END #if ACOUSTIC_FORM_MAIN + + #endif // FORM_SET_ITEM + +#endif // ADVANCED_FORM_SET + +//********************************************************************** +//********************************************************************** +//** ** +//** (C)Copyright 1985-2010, American Megatrends, Inc. ** +//** ** +//** All Rights Reserved. ** +//** ** +//** 5555 Oakbrook Parkway, Suite 200, Norcross, GA 30093 ** +//** ** +//** Phone: (770)-246-8600 ** +//** ** +//********************************************************************** +//********************************************************************** |