Fix code that would trip -Wtype-limits

This patch fixes up all code that would throw a -Wtype-limits warning.
This sometimes involves eliminating unnecessary checks, adding a few odd
but harmless casts or just pragma'ing out the warning for a whole file
-- I tried to find the path of least resistance. I think the overall
benefit of the warning outweighs the occasional weirdness.

Change-Id: Iacd37eb1fad388d9db7267ceccb03e6dcf1ad0d2
Signed-off-by: Julius Werner <jwerner@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/32537
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Julius Werner
2019-05-01 16:51:20 -07:00
committed by Patrick Georgi
parent 9d3fa7a229
commit 7c712bbb6c
23 changed files with 32 additions and 66 deletions

View File

@ -527,7 +527,6 @@ NbSmuReadEfuseField (
UINT32 Address;
UINT16 Shift;
ASSERT (Length <= 32);
ASSERT (Chain <= 0xff);
Shift = (Offset - (Offset & ~0x7));
Address = 0xFE000000 | (Chain << 12) | (Offset >> 3);
Value = NbSmuReadEfuse (Address, StdHeader);

View File

@ -506,7 +506,6 @@ NbSmuReadEfuseField (
UINT32 Address;
UINT16 Shift;
ASSERT (Length <= 32);
ASSERT (Chain <= 0xff);
Shift = (Offset - (Offset & ~0x7));
Address = 0xFE000000 | (Chain << 12) | (Offset >> 3);
Value = NbSmuReadEfuse (Address, StdHeader);

View File

@ -331,7 +331,7 @@ DmiF15TnGetVoltage (
LibAmdMsrRead ((MSR_PSTATE_0 + NumberBoostStates), &MsrData, StdHeader);
MaxVid = (UINT8) (((PSTATE_MSR *)&MsrData)->CpuVid);
if ((MaxVid >= 0xF8) && (MaxVid <= 0xFF)) {
if ((MaxVid >= 0xF8)) {
Voltage = 0;
} else {
Voltage = (UINT8) ((155000L - (625 * MaxVid) + 5000) / 10000);

View File

@ -62,6 +62,9 @@
CODE_GROUP (G3_DXE)
RDATA_GROUP (G3_DXE)
/* Don't warn when checking header-defined ranges that may start at 0. */
#pragma GCC diagnostic ignored "-Wtype-limits"
#define FILECODE PROC_IDS_FAMILY_0X15_TN_IDSF15TNALLSERVICE_FILECODE
/**

View File

@ -287,7 +287,7 @@ DmiF16KbGetVoltage (
LibAmdMsrRead ((MSR_PSTATE_0 + NumberBoostStates), &MsrData, StdHeader);
MaxVid = (UINT8) (((PSTATE_MSR *)&MsrData)->CpuVid);
if ((MaxVid >= 0xF8) && (MaxVid <= 0xFF)) {
if ((MaxVid >= 0xF8)) {
Voltage = 0;
} else {
Voltage = (UINT8) ((155000L - (625 * MaxVid) + 5000) / 10000);

View File

@ -63,6 +63,9 @@
CODE_GROUP (G3_DXE)
RDATA_GROUP (G3_DXE)
/* Don't warn when checking header-defined ranges that may start at 0. */
#pragma GCC diagnostic ignored "-Wtype-limits"
#define FILECODE PROC_IDS_FAMILY_0X16_KB_IDSF16KBALLSERVICE_FILECODE
/**

View File

@ -136,7 +136,7 @@ MemPGetMaxFreqSupported (
UINT16 MaxFreqSupported;
UINT16 *SpeedArray;
UINT8 DDR3Voltage;
UINT8 CurrentVoltage;
INT8 CurrentVoltage;
DIMM_TYPE DimmType;
CPU_LOGICAL_ID LogicalCpuid;
UINT8 PackageType;