summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArd Biesheuvel <ard.biesheuvel@linaro.org>2018-03-01 09:27:31 +0000
committerArd Biesheuvel <ard.biesheuvel@linaro.org>2018-03-01 17:01:30 +0000
commit23b53ede358d9262a78e3f7b2a34423382d138a8 (patch)
tree783d60265190c9a44fd645db4a6be1785d44852a
parenta16f7f47949ebddf07d228ef3827ec8747180e48 (diff)
downloadedk2-23b53ede358d9262a78e3f7b2a34423382d138a8.tar.gz
edk2-23b53ede358d9262a78e3f7b2a34423382d138a8.tar.bz2
edk2-23b53ede358d9262a78e3f7b2a34423382d138a8.zip
ShellPkg/UefiShellDebug1CommandsLib: remove I/O address limit from 'mm'
Neither the EFI_PCI_ROOT_BRIDGE_IO_PROTOCOL nor the EFI_CPU_IO2_PROTOCOL impose any restrictions when it comes to the range of valid I/O addresses. Even so, the 'mm' command in -IO mode refuses to perform accesses to addresses >= 0xffff. It is not up to 'mm' to impose this restriction, so remove it. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
-rw-r--r--ShellPkg/Library/UefiShellDebug1CommandsLib/Mm.c11
-rw-r--r--ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.uni2
2 files changed, 0 insertions, 13 deletions
diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/Mm.c b/ShellPkg/Library/UefiShellDebug1CommandsLib/Mm.c
index 9f97f1d345..d1fd42b1cd 100644
--- a/ShellPkg/Library/UefiShellDebug1CommandsLib/Mm.c
+++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/Mm.c
@@ -525,12 +525,6 @@ ShellCommandRunMm (
goto Done;
}
- if ((AccessType == ShellMmIo) && (Address + Size > MAX_UINT16 + 1)) {
- ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_MM_IO_ADDRESS_RANGE), gShellDebug1HiiHandle, L"mm");
- ShellStatus = SHELL_INVALID_PARAMETER;
- goto Done;
- }
-
//
// locate IO protocol interface
//
@@ -592,11 +586,6 @@ ShellCommandRunMm (
//
Complete = FALSE;
do {
- if ((AccessType == ShellMmIo) && (Address + Size > MAX_UINT16 + 1)) {
- ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_MM_ADDRESS_RANGE2), gShellDebug1HiiHandle, L"mm");
- break;
- }
-
ShellMmAccess (AccessType, PciRootBridgeIo, CpuIo, TRUE, Address, Size, &Buffer);
ShellPrintHiiEx (-1, -1, NULL, mShellMmAccessTypeStr[AccessType], gShellDebug1HiiHandle);
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_MM_ADDRESS), gShellDebug1HiiHandle, Address);
diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.uni b/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.uni
index b6a133a454..011a7bfc2d 100644
--- a/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.uni
+++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.uni
@@ -128,7 +128,6 @@
#string STR_MM_NOT_ALIGNED #language en-US "%H%s%N: Address parameter %016LX is not aligned.\r\n"
#string STR_MM_PCIE_ADDRESS_RANGE #language en-US "%H%s%N: Address parameter %016LX is not a valid PCI/PCIE address.\r\n"
-#string STR_MM_IO_ADDRESS_RANGE #language en-US "%H%s%N: IO address out of range 0 - 0xFFFF\r\n"
#string STR_MM_MMIO #language en-US "%HMMIO%N"
#string STR_MM_IO #language en-US "%HIO%N"
#string STR_MM_PCI #language en-US "%HPCI%N"
@@ -136,7 +135,6 @@
#string STR_MM_PCIE #language en-US "%HPCIE%N"
#string STR_MM_ADDRESS #language en-US " 0x%016lx : "
#string STR_MM_BUF #language en-US "0x%0*lx"
-#string STR_MM_ADDRESS_RANGE2 #language en-US "%H%s%N: IO address out of range\r\n"
#string STR_MM_ERROR #language en-US "%H%s%N: Input had incorrect format\r\n"
#string STR_SETVAR_PRINT #language en-US "%g - %s - %04x Bytes\r\n"