UINTN *EdidSize\r
)\r
{\r
- UINT8 Index;\r
+ UINTN Index;\r
UINT8 EdidData[EDID_BLOCK_SIZE * 2];\r
UINT8 *ValidEdid;\r
UINT64 Signature;\r
\r
for (Index = 0; Index < EDID_BLOCK_SIZE * 2; Index ++) {\r
- I2cReadByte (Private->PciIo, 0xa0, Index, &EdidData[Index]);\r
+ I2cReadByte (Private->PciIo, 0xa0, (UINT8)Index, &EdidData[Index]);\r
}\r
\r
//\r
// If EDID Override data doesn't exist or EFI_EDID_OVERRIDE_DONT_OVERRIDE returned,\r
// read EDID information through I2C Bus\r
//\r
- if (ReadEdidData (Private, &EdidDiscoveredDataBlock, &EdidDiscoveredDataSize) == EFI_SUCCESS) {;\r
+ if (ReadEdidData (Private, &EdidDiscoveredDataBlock, &EdidDiscoveredDataSize) == EFI_SUCCESS) {\r
Private->EdidDiscovered.SizeOfEdid = (UINT32) EdidDiscoveredDataSize;\r
Private->EdidDiscovered.Edid = (UINT8 *) AllocateCopyPool (\r
EdidDiscoveredDataSize,\r
Private->MaxMode = CIRRUS_LOGIC_5430_MODE_COUNT;\r
}\r
\r
- FreePool (EdidOverrideDataBlock);\r
+ if (EdidOverrideDataBlock != NULL) {\r
+ FreePool (EdidOverrideDataBlock);\r
+ }\r
+\r
return EFI_SUCCESS;\r
\r
Done:\r