summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorraywu <raywu@aaeon.com.tw>2018-11-01 14:51:46 +0800
committerraywu <raywu@aaeon.com.tw>2018-11-01 14:51:46 +0800
commit7ad07b484ccc3e98fa7153d47394c784fc8820a7 (patch)
tree6b14cee74bfbb0dbfa2309a123949d25eb5fd093
parent3585663ec9d8e9dd658909959fbc84b0d34bd809 (diff)
parentae6ea7bd47f2f55f46c5d25a24cca3ec2425184c (diff)
downloadzprj-7ad07b484ccc3e98fa7153d47394c784fc8820a7.tar.xz
Release [DW01VR11]
-rw-r--r--Board/EM/AAEONSecurity/AAEONSecurity.sdl2
-rw-r--r--Board/EM/Setup/Boot.vfr2
-rw-r--r--Board/EM/Setup/Setup.unibin24786 -> 24786 bytes
-rw-r--r--Board/NB/NBSetup/NB.sd49
-rw-r--r--Board/NB/NBSetup/NB.unibin172600 -> 172598 bytes
-rw-r--r--Board/SB/SB.sdl14
-rw-r--r--Board/SB/SBSetup/SB.sd204
-rw-r--r--Board/SB/SBSetup/SB.unibin144652 -> 150330 bytes
-rw-r--r--CRB/CSP.sdl18
-rw-r--r--Chipset/NB/hsw_1039.datbin65536 -> 65536 bytes
-rw-r--r--Chipset/NB/hsw_1039.ssf2
-rw-r--r--Chipset/SB/RTEG263.LOMbin0 -> 71680 bytes
-rw-r--r--Chipset/SB/SleepSmi.c135
-rw-r--r--Core/EM/CsmOptOut/CsmOptOut.sd2
-rw-r--r--DW01VR11.zipbin0 -> 2825675 bytes
-rw-r--r--DWI-AH810-R10测试问题汇总.xlsxbin0 -> 2382206 bytes
-rw-r--r--RomImage/FitcBuild.bat2
17 files changed, 391 insertions, 39 deletions
diff --git a/Board/EM/AAEONSecurity/AAEONSecurity.sdl b/Board/EM/AAEONSecurity/AAEONSecurity.sdl
index b557745..2467d0b 100644
--- a/Board/EM/AAEONSecurity/AAEONSecurity.sdl
+++ b/Board/EM/AAEONSecurity/AAEONSecurity.sdl
@@ -43,7 +43,7 @@ End
TOKEN
Name = "SIGNATURE_MODEL_TAG"
- Value = "'$$IEI-SA93$$'"
+ Value = "'$$IEI-SA22$$'"
TokenType = Expression
TargetMAK = Yes
TargetH = Yes
diff --git a/Board/EM/Setup/Boot.vfr b/Board/EM/Setup/Boot.vfr
index 8010c28..43e625a 100644
--- a/Board/EM/Setup/Boot.vfr
+++ b/Board/EM/Setup/Boot.vfr
@@ -184,6 +184,8 @@ formset guid = BOOT_FORM_SET_GUID,
#include <SetupDefinitions.h>
#undef FORM_SET_ITEM
+ CSM_OPT_OUT_PXE_OPROM
+
SEPARATOR
SUBTITLE(STRING_TOKEN(STR_BOOT_ORDER_SUBTITLE))
suppressif ideqvallist BOOT_MANAGER.BootCount == 0xFFFF;
diff --git a/Board/EM/Setup/Setup.uni b/Board/EM/Setup/Setup.uni
index b74e149..215562e 100644
--- a/Board/EM/Setup/Setup.uni
+++ b/Board/EM/Setup/Setup.uni
Binary files differ
diff --git a/Board/NB/NBSetup/NB.sd b/Board/NB/NBSetup/NB.sd
index 88b5f95..089831b 100644
--- a/Board/NB/NBSetup/NB.sd
+++ b/Board/NB/NBSetup/NB.sd
@@ -641,8 +641,8 @@
oneof varid = SETUP_DATA.PrimaryDisplay,\
prompt = STRING_TOKEN(STR_PRIMARY_VIDEO),\
help = STRING_TOKEN(STR_PRIMARY_VIDEO_HELP3),\
- option text = STRING_TOKEN(STR_COMMON_AUTO), value = 3, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED, key = 0;\
- option text = STRING_TOKEN(STR_IGFX_STRING), value = 0, flags = RESET_REQUIRED, key = 0;\
+ option text = STRING_TOKEN(STR_COMMON_AUTO), value = 3, flags = RESET_REQUIRED, key = 0;\
+ option text = STRING_TOKEN(STR_IGFX_STRING), value = 0, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED, key = 0;\
option text = STRING_TOKEN(STR_PEG_STRING), value = 1, flags = RESET_REQUIRED, key = 0;\
option text = STRING_TOKEN(STR_PCIE_STRING), value = 2, flags = RESET_REQUIRED, key = 0;\
endoneof;
@@ -651,18 +651,27 @@
oneof varid = SETUP_DATA.PrimaryDisplay,\
prompt = STRING_TOKEN(STR_PRIMARY_VIDEO),\
help = STRING_TOKEN(STR_PRIMARY_VIDEO_HELP4),\
- option text = STRING_TOKEN(STR_COMMON_AUTO), value = 3, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED, key = 0;\
- option text = STRING_TOKEN(STR_IGFX_STRING), value = 0, flags = RESET_REQUIRED, key = 0;\
+ option text = STRING_TOKEN(STR_COMMON_AUTO), value = 3, flags = RESET_REQUIRED, key = 0;\
+ option text = STRING_TOKEN(STR_IGFX_STRING), value = 0, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED, key = 0;\
option text = STRING_TOKEN(STR_PCIE_STRING), value = 2, flags = RESET_REQUIRED, key = 0;\
endoneof;
+//#define NB_ONEOF_PRIMARYDISPLAY1\
+// oneof varid = SETUP_DATA.PrimaryDisplay,\
+// prompt = STRING_TOKEN(STR_PRIMARY_VIDEO),\
+// help = STRING_TOKEN(STR_PRIMARY_VIDEO_HELP5),\
+// option text = STRING_TOKEN(STR_COMMON_AUTO), value = 3, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED, key = 0;\
+// option text = STRING_TOKEN(STR_PEG_STRING), value = 1, flags = RESET_REQUIRED, key = 0;\
+// option text = STRING_TOKEN(STR_PCIE_STRING), value = 2, flags = RESET_REQUIRED, key = 0;\
+// endoneof;
#define NB_ONEOF_PRIMARYDISPLAY1\
oneof varid = SETUP_DATA.PrimaryDisplay,\
prompt = STRING_TOKEN(STR_PRIMARY_VIDEO),\
help = STRING_TOKEN(STR_PRIMARY_VIDEO_HELP5),\
- option text = STRING_TOKEN(STR_COMMON_AUTO), value = 3, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED, key = 0;\
+ option text = STRING_TOKEN(STR_COMMON_AUTO), value = 3, flags = RESET_REQUIRED, key = 0;\
option text = STRING_TOKEN(STR_PEG_STRING), value = 1, flags = RESET_REQUIRED, key = 0;\
option text = STRING_TOKEN(STR_PCIE_STRING), value = 2, flags = RESET_REQUIRED, key = 0;\
+ option text = STRING_TOKEN(STR_IGFX_STRING), value = 0, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED, key = 0;\
endoneof;
#endif // SwitchableGraphics_SUPPORT
@@ -877,6 +886,18 @@
option text = STRING_TOKEN (STR_COMMON_DISABLED), value = 0, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED, key = 0;\
endoneof;
+//#define NB_ONEOF_IGDBOOTTYPE\
+// oneof varid = SETUP_DATA.IgdBootType,\
+// prompt = STRING_TOKEN(STR_VIDEO_BT_PROMPT),\
+// help = STRING_TOKEN(STR_VIDEO_BT_HELP),\
+// option text = STRING_TOKEN(STR_VIDEO_BT_DEFAULT), value = 0, flags = RESET_REQUIRED | DEFAULT | MANUFACTURING, key = 0;\
+// option text = STRING_TOKEN(STR_VIDEO_BT_CRT), value = 0x01, flags = RESET_REQUIRED, key = 0;\
+// option text = STRING_TOKEN(STR_VIDEO_BT_EFP), value = 0x04, flags = RESET_REQUIRED, key = 0;\
+// option text = STRING_TOKEN(STR_VIDEO_BT_LFP), value = 0x08, flags = RESET_REQUIRED, key = 0;\
+// option text = STRING_TOKEN(STR_VIDEO_BT_EFP3), value = 0x20, flags = RESET_REQUIRED, key = 0;\
+// option text = STRING_TOKEN(STR_VIDEO_BT_EFP2), value = 0x40, flags = RESET_REQUIRED, key = 0;\
+// option text = STRING_TOKEN(STR_VIDEO_BT_LFP2), value = 0x80, flags = RESET_REQUIRED, key = 0;\
+// endoneof;
#define NB_ONEOF_IGDBOOTTYPE\
oneof varid = SETUP_DATA.IgdBootType,\
prompt = STRING_TOKEN(STR_VIDEO_BT_PROMPT),\
@@ -884,10 +905,6 @@
option text = STRING_TOKEN(STR_VIDEO_BT_DEFAULT), value = 0, flags = RESET_REQUIRED | DEFAULT | MANUFACTURING, key = 0;\
option text = STRING_TOKEN(STR_VIDEO_BT_CRT), value = 0x01, flags = RESET_REQUIRED, key = 0;\
option text = STRING_TOKEN(STR_VIDEO_BT_EFP), value = 0x04, flags = RESET_REQUIRED, key = 0;\
- option text = STRING_TOKEN(STR_VIDEO_BT_LFP), value = 0x08, flags = RESET_REQUIRED, key = 0;\
- option text = STRING_TOKEN(STR_VIDEO_BT_EFP3), value = 0x20, flags = RESET_REQUIRED, key = 0;\
- option text = STRING_TOKEN(STR_VIDEO_BT_EFP2), value = 0x40, flags = RESET_REQUIRED, key = 0;\
- option text = STRING_TOKEN(STR_VIDEO_BT_LFP2), value = 0x80, flags = RESET_REQUIRED, key = 0;\
endoneof;
#define NB_ONEOF_DISPLAYPIPEB\
@@ -3802,7 +3819,7 @@ NB_ONEOF_GDXCENABLE // GdxcEnable
form formid = AUTO_ID(INTEL_IGFX_ID),
title = STRING_TOKEN(STR_INTEL_IGFX_FORM);
SUBTITLE(STRING_TOKEN(STR_INTEL_IGFX_FORM))
-
+suppressif TRUE ;
suppressif ideqval NB_PLATFORM_DATA.IGFXAvailable == 0 OR
ideqval SETUP_DATA.InternalGraphics == 0 OR
ideqval NB_PLATFORM_DATA.IGFXGopAvailable == 1;
@@ -3824,7 +3841,7 @@ NB_ONEOF_GDXCENABLE // GdxcEnable
NB_NUMERIC_GFXTURBOIMON
endif;
-
+endif ;
SEPARATOR
suppressif ideqval NB_PLATFORM_DATA.PegAvailable == 0 OR
@@ -3859,6 +3876,8 @@ NB_ONEOF_GDXCENABLE // GdxcEnable
// endif;
+ NB_ONEOF_IGDBOOTTYPE
+
#if defined(RC_PEG_0) && (RC_PEG_0 == 1)
#if ( defined(SwitchableGraphics_SUPPORT) && (SwitchableGraphics_SUPPORT == 1) )
suppressif NOT ideqval SETUP_DATA.PrimaryDisplay == 4 OR
@@ -3902,23 +3921,27 @@ NB_ONEOF_GDXCENABLE // GdxcEnable
endif;
+suppressif TRUE ;
suppressif NOT ideqval NB_PLATFORM_DATA.IGFXCapability == 1;
NB_ONEOF_INTERNALGRAPHICS
endif;
+endif ;
suppressif ideqval NB_PLATFORM_DATA.IGFXAvailable == 0 OR
ideqval SETUP_DATA.InternalGraphics == 0;
// NB_ONEOF_GTTSIZE
+suppressif TRUE ;
NB_ONEOF_APERTURESIZE
+endif ;
NB_ONEOF_IGDDVMT50PREALLOC
NB_ONEOF_IGDDVMT50TOTALALLOC
-
+suppressif TRUE ;
NB_ONEOF_LOWPOWERMODE
NB_ONEOF_PANELPOWERE
@@ -3926,7 +3949,7 @@ NB_ONEOF_GDXCENABLE // GdxcEnable
goto IGFX_LCD_FORM_ID,
prompt = STRING_TOKEN(STR_IGFX_LCD),
help = STRING_TOKEN(STR_IGFX_LCD);
-
+endif ;
endif;
endform;
diff --git a/Board/NB/NBSetup/NB.uni b/Board/NB/NBSetup/NB.uni
index cf6eb1c..8f768d1 100644
--- a/Board/NB/NBSetup/NB.uni
+++ b/Board/NB/NBSetup/NB.uni
Binary files differ
diff --git a/Board/SB/SB.sdl b/Board/SB/SB.sdl
index 3931349..5199327 100644
--- a/Board/SB/SB.sdl
+++ b/Board/SB/SB.sdl
@@ -873,6 +873,13 @@ PCIDEVICE
Token = "RC_PORT_0" "=" "1"
DeviceType = Slot
PCIBusSize = PciEx
+##DW01_Custom_Support_LAN_PXE_Boot >>
+ ROMFile = "Chipset\SB\RTEG263.LOM"
+ OptionROM = Yes
+ CompressedROM = Yes
+ DeviceID = 08168h
+ VendorID = 010ech
+##DW01_Custom_Support_LAN_PXE_Boot <<
End
PCIDEVICE
@@ -888,6 +895,13 @@ PCIDEVICE
Token = "RC_PORT_1" "=" "1"
DeviceType = Slot
PCIBusSize = PciEx
+##DW01_Custom_Support_LAN_PXE_Boot >>
+ ROMFile = "Chipset\SB\RTEG263.LOM"
+ OptionROM = Yes
+ CompressedROM = Yes
+ DeviceID = 08168h
+ VendorID = 010ech
+##DW01_Custom_Support_LAN_PXE_Boot <<
End
PCIDEVICE
diff --git a/Board/SB/SBSetup/SB.sd b/Board/SB/SBSetup/SB.sd
index d944b68..7e9da0f 100644
--- a/Board/SB/SBSetup/SB.sd
+++ b/Board/SB/SBSetup/SB.sd
@@ -691,6 +691,15 @@
UINT8 ADspMode;
UINT8 NFCE;
+
+ UINT8 AaeonWakeOnRtc; //AAEON_RTC_001_Elflo+
+// UINT8 FixedWakeOnRTCS5; //AAEON_RTC_001_Elflo-
+// UINT8 DynamicWakeOnRTCS5; //AAEON_RTC_001_Elflo-
+ UINT8 AaeonRTCWakeupTimeDay;
+ UINT8 AaeonRTCWakeupTimeHour;
+ UINT8 AaeonRTCWakeupTimeMinute;
+ UINT8 AaeonRTCWakeupTimeSecond;
+ UINT8 AaeonRTCWakeupTimeMinuteIncrease;
#endif
#ifdef FORM_SET_TYPEDEF
@@ -709,6 +718,98 @@
//---------------------------------------------------------------------------
#ifdef CONTROL_DEFINITION
+ #define AAEON_WAKEONRTC_DIS\
+ text \
+ help = STRING_TOKEN(STR_WAKE_ON_RTC_PROMPT_HELP), \
+ text = STRING_TOKEN(STR_WAKE_ON_RTC_PROMPT), \
+ text = STRING_TOKEN(STR_DISABLED), \
+ flags = 0, \
+ key = 0;
+
+ #define AAEON_WAKEONRTC\
+ oneof varid = SETUP_DATA.AaeonWakeOnRtc,\
+ prompt = STRING_TOKEN(STR_WAKE_ON_RTC_PROMPT),\
+ help = STRING_TOKEN(STR_WAKE_ON_RTC_PROMPT_HELP),\
+ option text = STRING_TOKEN(STR_DISABLED), value=0, flags= DEFAULT | MANUFACTURING | RESET_REQUIRED;\
+ option text = STRING_TOKEN(STR_WOR_FIXED), value=1, flags= RESET_REQUIRED;\
+ option text = STRING_TOKEN(STR_WOR_DYNAMIC), value=2, flags= RESET_REQUIRED;\
+ endoneof;
+
+//AAEON_RTC_001_Elflo- >>
+// #define AAEON_ONEOF_FIXED_WAKEONRTCS5\
+// oneof varid = SETUP_DATA.FixedWakeOnRTCS5,\
+// prompt = STRING_TOKEN(STR_FIXED_WAKE_ON_RTCS5_PROMPT),\
+// help = STRING_TOKEN(STR_FIXED_WAKE_ON_RTCS5_HELP),\
+// option text = STRING_TOKEN(STR_DISABLED), value=0, flags= DEFAULT | MANUFACTURING | RESET_REQUIRED;\
+// option text = STRING_TOKEN(STR_ENABLED), value=1, flags= RESET_REQUIRED;\
+// endoneof;
+//AAEON_RTC_001_Elflo- <<
+
+ #define AAEON_NUM_RTCWAKEUP_TIMEDAY\
+ numeric varid = SETUP_DATA.AaeonRTCWakeupTimeDay,\
+ prompt = STRING_TOKEN(STR_RTC_WAKEUP_DAY_PROMPT),\
+ help = STRING_TOKEN(STR_RTC_DAY_HELP),\
+ flags = RESET_REQUIRED,\
+ minimum = 0,\
+ maximum = 31,\
+ step = 1,\
+ default = 0,\
+ endnumeric;
+
+ #define AAEON_NUM_RTCWAKEUP_TIMEHOUR\
+ numeric varid = SETUP_DATA.AaeonRTCWakeupTimeHour,\
+ prompt = STRING_TOKEN(STR_RTC_WAKEUP_HOUR_PROMPT),\
+ help = STRING_TOKEN(STR_RTC_HOUR_HELP),\
+ flags = RESET_REQUIRED,\
+ minimum = 0,\
+ maximum = 23,\
+ step = 1,\
+ default = 0,\
+ endnumeric;
+
+ #define AAEON_NUM_RTCWAKEUP_TIMEMINUTE\
+ numeric varid = SETUP_DATA.AaeonRTCWakeupTimeMinute,\
+ prompt = STRING_TOKEN(STR_RTC_WAKEUP_MINUTE_PROMPT),\
+ help = STRING_TOKEN(STR_TIME_MINUTE_HELP),\
+ flags = RESET_REQUIRED,\
+ minimum = 0,\
+ maximum = 59,\
+ step = 1,\
+ default = 0,\
+ endnumeric;
+
+ #define AAEON_NUM_RTCWAKEUP_TIMESECOND\
+ numeric varid = SETUP_DATA.AaeonRTCWakeupTimeSecond,\
+ prompt = STRING_TOKEN(STR_RTC_WAKEUP_SECOND_PROMPT),\
+ help = STRING_TOKEN(STR_TIME_SECOND_HELP),\
+ flags = RESET_REQUIRED,\
+ minimum = 0,\
+ maximum = 59,\
+ step = 1,\
+ default = 0,\
+ endnumeric;
+
+//AAEON_RTC_001_Elflo- >>
+// #define AAEON_ONEOF_DYNAMIC_WAKEONRTCS5\
+// oneof varid = SETUP_DATA.DynamicWakeOnRTCS5,\
+// prompt = STRING_TOKEN(STR_DYNAMIC_WAKE_ON_RTCS5_PROMPT),\
+// help = STRING_TOKEN(STR_DYNAMIC_WAKE_ON_RTCS5_HELP),\
+// option text = STRING_TOKEN(STR_DISABLED), value=0, flags= DEFAULT | MANUFACTURING | RESET_REQUIRED;\
+// option text = STRING_TOKEN(STR_ENABLED), value=1, flags= RESET_REQUIRED;\
+// endoneof;
+//AAEON_RTC_001_Elflo- <<
+
+ #define AAEON_NUM_RTCWAKEUP_TIMEMINUTEINCREASE\
+ numeric varid = SETUP_DATA.AaeonRTCWakeupTimeMinuteIncrease,\
+ prompt = STRING_TOKEN(STR_RTC_WAKEUP_MINUTE_INCREASE_PROMPT),\
+ help = STRING_TOKEN(STR_TIME_MINUTE_INCREASE_HELP),\
+ flags = RESET_REQUIRED,\
+ minimum = 1,\
+ maximum = 5,\
+ step = 1,\
+ default = 1,\
+ endnumeric;
+
#define SB_ONEOF_ECTG\
oneof varid = SETUP_DATA.ECTG,\
prompt = STRING_TOKEN (STR_ECTG),\
@@ -1034,11 +1135,11 @@
oneof varid = SETUP_DATA.PchUsb30Mode,\
prompt = STRING_TOKEN (STR_PCH_USB30_MODE_PROMPT),\
help = STRING_TOKEN (STR_PCH_USB30_MODE_HELP),\
- option text = STRING_TOKEN (STR_COMMON_SMART_AUTO), value = 3, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED, key = 0;\
+ option text = STRING_TOKEN (STR_COMMON_SMART_AUTO), value = 3, flags = RESET_REQUIRED, key = 0;\
option text = STRING_TOKEN (STR_COMMON_AUTO), value = 2, flags = RESET_REQUIRED, key = 0;\
option text = STRING_TOKEN (STR_COMMON_ENABLED), value = 1, flags = RESET_REQUIRED, key = 0;\
option text = STRING_TOKEN (STR_COMMON_DISABLED), value = 0, flags = RESET_REQUIRED, key = 0;\
- option text = STRING_TOKEN (STR_COMMON_MANUAL), value = 4, flags = RESET_REQUIRED, key = 0;\
+ option text = STRING_TOKEN (STR_COMMON_MANUAL), value = 4, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED, key = 0;\
endoneof;
#define SB_ONEOF_PCHENABLERMH1\
@@ -1087,8 +1188,8 @@
prompt = STRING_TOKEN (STR_PCH_ENABLE_USB30_PIN),\
help = STRING_TOKEN (STR_PCH_ENABLE_USB30_PIN_HELP),\
option text = STRING_TOKEN (STR_SELECT_PER_PIN), value = 0, flags = RESET_REQUIRED, key = 0;\
- option text = STRING_TOKEN (STR_SELECT_ALL_PIN_DISABLE), value = 1, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED, key = 0;\
- option text = STRING_TOKEN (STR_SELECT_ALL_PIN_ENABLE), value = 2, flags = RESET_REQUIRED, key = 0;\
+ option text = STRING_TOKEN (STR_SELECT_ALL_PIN_DISABLE), value = 1, flags = RESET_REQUIRED, key = 0;\
+ option text = STRING_TOKEN (STR_SELECT_ALL_PIN_ENABLE), value = 2, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED, key = 0;\
endoneof;
#define SB_ONEOF_USB20PERPINROUTE00\
@@ -1311,8 +1412,8 @@
oneof varid = SETUP_DATA.PchUsbPerPortCtl,\
prompt = STRING_TOKEN (STR_PCH_USB_PER_PORT_PROMPT),\
help = STRING_TOKEN (STR_PCH_USB_PER_PORT_HELP),\
- option text = STRING_TOKEN (STR_COMMON_DISABLED), value = 0, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED, key = 0;\
- option text = STRING_TOKEN (STR_COMMON_ENABLED), value = 1, flags = RESET_REQUIRED, key = 0;\
+ option text = STRING_TOKEN (STR_COMMON_DISABLED), value = 0, flags = RESET_REQUIRED, key = 0;\
+ option text = STRING_TOKEN (STR_COMMON_ENABLED), value = 1, flags = DEFAULT | MANUFACTURING | RESET_REQUIRED, key = 0;\
endoneof;
#if EHCI_CON_DISCON_WAKE_UP_SUPPORT
@@ -5416,6 +5517,14 @@
//---------------------------------------------------------------------------
#ifdef CONTROLS_WITH_DEFAULTS
+ AAEON_WAKEONRTC //AAEON_RTC_001_Elflo+
+// AAEON_ONEOF_FIXED_WAKEONRTCS5 //AAEON_RTC_001_Elflo-
+ AAEON_NUM_RTCWAKEUP_TIMEDAY
+ AAEON_NUM_RTCWAKEUP_TIMEHOUR
+ AAEON_NUM_RTCWAKEUP_TIMEMINUTE
+ AAEON_NUM_RTCWAKEUP_TIMESECOND
+// AAEON_ONEOF_DYNAMIC_WAKEONRTCS5 //AAEON_RTC_001_Elflo-
+ AAEON_NUM_RTCWAKEUP_TIMEMINUTEINCREASE
SB_ONEOF_ECTG
SB_ONEOF_PCHLAN
@@ -6219,23 +6328,40 @@
//
SB_ONEOF_PCHUSBPERPORTCTL
+// suppressif ideqval SETUP_DATA.PchUsbPerPortCtl == 0x0;
+// SB_ONEOF_PCHUSBPORT00
+// SB_ONEOF_PCHUSBPORT01
+// SB_ONEOF_PCHUSBPORT02
+//// SB_ONEOF_PCHUSBPORT03
+// SB_ONEOF_PCHUSBPORT04
+// SB_ONEOF_PCHUSBPORT05
+//// SB_ONEOF_PCHUSBPORT06
+//// SB_ONEOF_PCHUSBPORT07
+// suppressif ideqval SB_PLATFORM_DATA.LPTType == 1;
+//// SB_ONEOF_PCHUSBPORT08
+// SB_ONEOF_PCHUSBPORT09
+// SB_ONEOF_PCHUSBPORT10
+// SB_ONEOF_PCHUSBPORT11
+//// SB_ONEOF_PCHUSBPORT12
+//// SB_ONEOF_PCHUSBPORT13
+// endif;
suppressif ideqval SETUP_DATA.PchUsbPerPortCtl == 0x0;
- SB_ONEOF_PCHUSBPORT00
- SB_ONEOF_PCHUSBPORT01
- SB_ONEOF_PCHUSBPORT02
- SB_ONEOF_PCHUSBPORT03
- SB_ONEOF_PCHUSBPORT04
SB_ONEOF_PCHUSBPORT05
- SB_ONEOF_PCHUSBPORT06
- SB_ONEOF_PCHUSBPORT07
- suppressif ideqval SB_PLATFORM_DATA.LPTType == 1;
- SB_ONEOF_PCHUSBPORT08
- SB_ONEOF_PCHUSBPORT09
- SB_ONEOF_PCHUSBPORT10
+ SB_ONEOF_PCHUSBPORT04
+ SB_ONEOF_PCHUSBPORT03
+ SB_ONEOF_PCHUSBPORT02
SB_ONEOF_PCHUSBPORT11
- SB_ONEOF_PCHUSBPORT12
- SB_ONEOF_PCHUSBPORT13
- endif;
+ SB_ONEOF_PCHUSBPORT10
+ SB_ONEOF_PCHUSBPORT09
+ SB_ONEOF_PCHUSBPORT08
+ SB_ONEOF_PCHUSBPORT01
+ SB_ONEOF_PCHUSBPORT00
+// SB_ONEOF_PCHUSBPORT06
+// SB_ONEOF_PCHUSBPORT07
+// suppressif ideqval SB_PLATFORM_DATA.LPTType == 1;
+// SB_ONEOF_PCHUSBPORT12
+// SB_ONEOF_PCHUSBPORT13
+// endif;
// SEPARATOR
@@ -7348,6 +7474,11 @@
goto THERMAL_CONFIG_FORM_ID,
prompt = STRING_TOKEN (STR_THERMAL_CONFIGURATION),
help = STRING_TOKEN (STR_THERMAL_CONFIGURATION_HELP);
+
+ goto S5_RTCWAKE_FORM_ID,
+ prompt = STRING_TOKEN(STR_S5_RTCWAKE_FORM),
+ help = STRING_TOKEN(STR_S5_RTCWAKE_FORM_HELP);
+
#endif
//----------------------------------------------------------------------------
@@ -7851,6 +7982,39 @@
#endif // End of SB_FORM_SATA_SFMS_OPTIONS
+//DW01_Custom_Support_RTC_Wake >>
+ form formid = AUTO_ID(S5_RTCWAKE_FORM_ID),
+ title = STRING_TOKEN(STR_S5_RTCWAKE_FORM);
+
+ AAEON_WAKEONRTC //AAEON_RTC_001_Elflo+
+
+//AAEON_RTC_001_Elflo- >>
+// grayoutif ideqval SETUP_DATA.DynamicWakeOnRTCS5 == 1;
+// AAEON_ONEOF_FIXED_WAKEONRTCS5
+// endif;
+//AAEON_RTC_001_Elflo- <<
+
+// suppressif ideqval SETUP_DATA.FixedWakeOnRTCS5 == 0; //AAEON_RTC_001_Elflo-
+ suppressif NOT ideqval SETUP_DATA.AaeonWakeOnRtc == 1; //AAEON_RTC_001_Elflo+
+ AAEON_NUM_RTCWAKEUP_TIMEDAY
+ AAEON_NUM_RTCWAKEUP_TIMEHOUR
+ AAEON_NUM_RTCWAKEUP_TIMEMINUTE
+ AAEON_NUM_RTCWAKEUP_TIMESECOND
+ endif;
+//AAEON_RTC_001_Elflo- >>
+// SEPARATOR
+// grayoutif ideqval SETUP_DATA.FixedWakeOnRTCS5 == 1;
+// AAEON_ONEOF_DYNAMIC_WAKEONRTCS5
+// endif;
+//AAEON_RTC_001_Elflo- <<
+
+// suppressif ideqval SETUP_DATA.DynamicWakeOnRTCS5 == 0; //AAEON_RTC_001_Elflo-
+ suppressif NOT ideqval SETUP_DATA.AaeonWakeOnRtc == 2; //AAEON_RTC_001_Elflo+
+ AAEON_NUM_RTCWAKEUP_TIMEMINUTEINCREASE
+ endif;
+ endform; // AAEON_FORM_ID
+//DW01_Custom_Support_RTC_Wake <<
+
#endif
//----------------------------------------------------------------------------
//
diff --git a/Board/SB/SBSetup/SB.uni b/Board/SB/SBSetup/SB.uni
index ceb801a..22a2ffc 100644
--- a/Board/SB/SBSetup/SB.uni
+++ b/Board/SB/SBSetup/SB.uni
Binary files differ
diff --git a/CRB/CSP.sdl b/CRB/CSP.sdl
index 99c41c5..37c4905 100644
--- a/CRB/CSP.sdl
+++ b/CRB/CSP.sdl
@@ -1738,4 +1738,20 @@ TOKEN
TokenType = Boolean
TargetH = Yes
# Token = "WIN8_FEATURE_SUPPORT" "=" "1"
-End \ No newline at end of file
+End
+TOKEN
+ Name = "TSE_MULTILINE_CONTROLS"
+ Value = "1"
+ Help = "Turns on multi line controls. Currently subtitle and static text controls are supported. Default is DISABLE"
+ TokenType = Boolean
+ TargetH = Yes
+End
+
+TOKEN
+ Name = "DEFAULT_BOOT_TIMEOUT"
+ Value = "3"
+ Help = "Number of seconds that the firmware will wait before initiating the original default boot selection. \A value of 0 indicates that the default boot selection is to be initiated immediately on boot. \A value of 65535(0xFFFF) indicates that firmware will wait for user input before booting. \This means the default boot selection is not automatically started by the firmware."
+ TokenType = Integer
+ TargetH = Yes
+ Range = "0-65535"
+End
diff --git a/Chipset/NB/hsw_1039.dat b/Chipset/NB/hsw_1039.dat
index 718b10a..eeb5cd3 100644
--- a/Chipset/NB/hsw_1039.dat
+++ b/Chipset/NB/hsw_1039.dat
Binary files differ
diff --git a/Chipset/NB/hsw_1039.ssf b/Chipset/NB/hsw_1039.ssf
index 8add22a..5e293fa 100644
--- a/Chipset/NB/hsw_1039.ssf
+++ b/Chipset/NB/hsw_1039.ssf
@@ -22,7 +22,7 @@ $Hotplug_Support_Enb 00
$Enable_Panel_Timing 00
PAGE Boot Display Algorithm
-TABLE $Dev_Boot_Table 09 08 01 0C 08 04 48 08 40 28 08 20 05 01 04 41 01 40 21 01 20 44 04 40 0D 01 04 45 01 04 64 04 40 49 01 40 29 01 20 4C 04 40 24 04 20 2C 04 20
+TABLE $Dev_Boot_Table 09 08 01 0C 08 04 48 08 40 28 08 20 05 04 01 41 01 40 21 01 20 44 04 40 0D 01 04 45 01 04 64 04 40 49 01 40 29 01 20 4C 04 40 24 04 20 2C 04 20
PAGE System BIOS Hooks
$H14_Get_Misc_Status 00
diff --git a/Chipset/SB/RTEG263.LOM b/Chipset/SB/RTEG263.LOM
new file mode 100644
index 0000000..7b96161
--- /dev/null
+++ b/Chipset/SB/RTEG263.LOM
Binary files differ
diff --git a/Chipset/SB/SleepSmi.c b/Chipset/SB/SleepSmi.c
index 6f17597..86debbe 100644
--- a/Chipset/SB/SleepSmi.c
+++ b/Chipset/SB/SleepSmi.c
@@ -120,8 +120,89 @@ EFI_GUID gThisFileGuid = \
// External Declaration(s)
// Function Definition(s)
-
+// DW01_Custom_Support_RTC_Wake >>
+typedef struct {
+ UINT8 AaeonRTCWakeupTimeHour ;
+ UINT8 AaeonRTCWakeupTimeMinute ;
+ UINT8 AaeonRTCWakeupTimeSecond ;
+ UINT8 AaeonRTCWakeupDateDay;
+} SMMData ;
+
+SMMData gSmmData ;
+
+EFI_GUID gSetupGuid = SETUP_GUID;
+SETUP_DATA SetupData;
//---------------------------------------------------------------------------
+UINT8 DecToBCD(UINT8 Dec)
+{
+ UINT8 FirstDigit = Dec % 10;
+ UINT8 SecondDigit = Dec / 10;
+
+ return (SecondDigit << 4) + FirstDigit;
+}
+UINT8 BCDToDec(UINT8 BCD)
+{
+ UINT8 FirstDigit = BCD & 0xf;
+ UINT8 SecondDigit = BCD >> 4;;
+
+ return SecondDigit * 10 + FirstDigit;
+}
+UINT8 ReadRtcIndex(IN UINT8 Index)
+{
+ UINT8 volatile Value;
+
+ // Check if Data Time is valid
+ if(Index <= 9) do {
+ IoWrite8(0x70, 0x0A | 0x80);
+ Value = IoRead8(0x71);
+ } while (Value & 0x80);
+
+ IoWrite8(0x70, Index | 0x80);
+ // Read register
+ Value = IoRead8(0x71);
+ if (Index <= 9) Value = BCDToDec(Value);
+ return (UINT8)Value;
+}
+void WriteRtcIndex(IN UINT8 Index, IN UINT8 Value)
+{
+ IoWrite8(0x70,Index | 0x80);
+ if (Index <= 9 ) Value = DecToBCD(Value);
+ // Write Register
+ IoWrite8(0x71,Value);
+}
+void SetWakeupTime (
+ IN EFI_TIME *Time
+)
+{
+ UINT8 Value;
+
+ WriteRtcIndex(5,Time->Hour);
+ WriteRtcIndex(3,Time->Minute);
+ WriteRtcIndex(1,Time->Second);
+ Value = ReadRtcIndex(0x0D) & 0xC0;
+ WriteRtcIndex(0x0D,(Value|DecToBCD(Time->Day)));
+
+ //Set Enable
+ Value = ReadRtcIndex(0xB);
+ Value |= 1 << 5;
+ WriteRtcIndex(0xB,Value);
+}
+VOID RTCWakeFunc(){
+ UINT32 i = 0;
+ EFI_TIME Time;
+
+ Time.Hour = gSmmData.AaeonRTCWakeupTimeHour;
+ Time.Minute = gSmmData.AaeonRTCWakeupTimeMinute;
+ Time.Second = gSmmData.AaeonRTCWakeupTimeSecond;
+ Time.Day = gSmmData.AaeonRTCWakeupDateDay;
+
+ SetWakeupTime(&Time);
+ //Clear RTC PM1 status
+ IoWrite16(PM_BASE_ADDRESS , ( IoRead16(PM_BASE_ADDRESS) | (1 << 10) ));
+ //set RTC_EN bit to wake up from the alarm
+ IoWrite32(PM_BASE_ADDRESS, ( IoRead32(PM_BASE_ADDRESS) | (1 << 26) ));
+}
+// DW01_Custom_Support_RTC_Wake <<
//<AMI_PHDR_START>
//----------------------------------------------------------------------------
@@ -311,6 +392,49 @@ VOID S5SleepSmiOccurred (
if (gPchWakeOnLan) Enable_GbE_PME();
+// DW01_Custom_Support_RTC_Wake >>
+ {
+ EFI_STATUS Status = EFI_SUCCESS;
+ UINT8 Value;
+
+ //Disable RTC alarm and clear RTC PM1 status
+ Value = ReadRtcIndex(0xB);
+ Value &= ~((UINT8)1 << 5);
+ WriteRtcIndex(0xB,Value);
+ //Clear Alarm Flag (AF) by reading RTC Reg C
+ Value = ReadRtcIndex(0xC);
+ IoWrite16(PM_BASE_ADDRESS , ( IoRead16(PM_BASE_ADDRESS) | (1 << 10) ));
+
+ if(!EFI_ERROR(Status)){
+ //if(gSetupData.FixedWakeOnRTCS5 == 1){
+ if(SetupData.AaeonWakeOnRtc == 1){
+ gSmmData.AaeonRTCWakeupTimeHour = SetupData.AaeonRTCWakeupTimeHour ;
+ gSmmData.AaeonRTCWakeupTimeMinute = SetupData.AaeonRTCWakeupTimeMinute ;
+ gSmmData.AaeonRTCWakeupTimeSecond = SetupData.AaeonRTCWakeupTimeSecond ;
+ gSmmData.AaeonRTCWakeupDateDay = SetupData.AaeonRTCWakeupTimeDay;
+ }
+
+ //if(gSetupData.DynamicWakeOnRTCS5 == 1){
+ if(SetupData.AaeonWakeOnRtc == 2){
+ gSmmData.AaeonRTCWakeupTimeHour = ReadRtcIndex(4);
+ gSmmData.AaeonRTCWakeupTimeMinute = ReadRtcIndex(2);
+ gSmmData.AaeonRTCWakeupTimeSecond = ReadRtcIndex(0);
+ gSmmData.AaeonRTCWakeupTimeMinute += SetupData.AaeonRTCWakeupTimeMinuteIncrease;
+ if (gSmmData.AaeonRTCWakeupTimeMinute >= 60)
+ {
+ gSmmData.AaeonRTCWakeupTimeMinute = 0;
+ ++gSmmData.AaeonRTCWakeupTimeHour;
+ if (gSmmData.AaeonRTCWakeupTimeHour == 24)
+ gSmmData.AaeonRTCWakeupTimeHour = 0;
+ }
+ }
+ }
+
+ if(SetupData.AaeonWakeOnRtc == 1 || SetupData.AaeonWakeOnRtc == 2)
+ RTCWakeFunc();
+ }
+// DW01_Custom_Support_RTC_Wake <<
+
// Program AfterG3 bit depend the setup question.
ProgramAfterG3Bit();
@@ -439,6 +563,15 @@ EFI_STATUS InitSleepSmi (
gPchWakeOnLan = (SbSetupData->PchWakeOnLan == 1) ? TRUE : FALSE;
Status = pBS->FreePool( SbSetupData );
+// DW01_Custom_Support_RTC_Wake >>
+ VariableSize = sizeof(SETUP_DATA);
+ Status = pRS->GetVariable( L"Setup", \
+ &gSetupGuid, \
+ NULL, \
+ &VariableSize, \
+ &SetupData );
+
+// DW01_Custom_Support_RTC_Wake <<
// Porting End
return InitSmmHandler( ImageHandle, SystemTable, InSmmFunction, NULL );
diff --git a/Core/EM/CsmOptOut/CsmOptOut.sd b/Core/EM/CsmOptOut/CsmOptOut.sd
index ce0bba0..f88e724 100644
--- a/Core/EM/CsmOptOut/CsmOptOut.sd
+++ b/Core/EM/CsmOptOut/CsmOptOut.sd
@@ -224,7 +224,7 @@ CSM_OPT_OUT_OLD_OPROM
suppressif ideqval SETUP_DATA.CsmLaunchPolicy == 0;
CSM_OPT_OUT_BOOT_OPTION_FILTER
- CSM_OPT_OUT_PXE_OPROM
+// CSM_OPT_OUT_PXE_OPROM
CSM_OPT_OUT_MASS_STORAGE_OPROM
CSM_OPT_OUT_VIDEO_OPROM
SEPARATOR
diff --git a/DW01VR11.zip b/DW01VR11.zip
new file mode 100644
index 0000000..6a15653
--- /dev/null
+++ b/DW01VR11.zip
Binary files differ
diff --git a/DWI-AH810-R10测试问题汇总.xlsx b/DWI-AH810-R10测试问题汇总.xlsx
new file mode 100644
index 0000000..373d44b
--- /dev/null
+++ b/DWI-AH810-R10测试问题汇总.xlsx
Binary files differ
diff --git a/RomImage/FitcBuild.bat b/RomImage/FitcBuild.bat
index f842fc8..25d2e41 100644
--- a/RomImage/FitcBuild.bat
+++ b/RomImage/FitcBuild.bat
@@ -103,7 +103,7 @@ GOTO ImageOutput
:ImageOutput
IF EXIST %DestDir%\OutImage.bin ECHO Rom_%RomSize%%RomSkue%.bin && move /Y %DestDir%\OutImage.bin Rom_%RomSize%%RomSkue%.bin
-IF EXIST Rom_%RomSize%%RomSkue%.bin move /Y Rom_%RomSize%%RomSkue%.bin DW01VR10.bin
+IF EXIST Rom_%RomSize%%RomSkue%.bin move /Y Rom_%RomSize%%RomSkue%.bin DW01VR11.bin
IF EXIST %DestDir%\OutImage_1.bin ECHO Rom00%RomSkue%.bin && move /Y %DestDir%\OutImage_1.bin Rom00%RomSkue%.bin
IF EXIST %DestDir%\OutImage_2.bin ECHO Rom01%RomSkue%.bin && move /Y %DestDir%\OutImage_2.bin Rom01%RomSkue%.bin
echo Rom_%RomSize%%RomSkue%.bin>ForPfatName.txt