mirror of https://github.com/acidanthera/audk.git
Update PciCfg2.c to follow strict ANSI C spec.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3687 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
5157f1d73a
commit
702887db45
|
@ -237,15 +237,23 @@ PciCfg2Modify (
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
UINTN PciLibAddress;
|
UINTN PciLibAddress;
|
||||||
|
UINT16 ClearValue16;
|
||||||
|
UINT16 SetValue16;
|
||||||
|
UINT32 ClearValue32;
|
||||||
|
UINT32 SetValue32;
|
||||||
|
|
||||||
PciLibAddress = PciCfgAddressConvert ((EFI_PEI_PCI_CFG_PPI_PCI_ADDRESS *) &Address);
|
PciLibAddress = PciCfgAddressConvert ((EFI_PEI_PCI_CFG_PPI_PCI_ADDRESS *) &Address);
|
||||||
|
|
||||||
if (Width == EfiPeiPciCfgWidthUint8) {
|
if (Width == EfiPeiPciCfgWidthUint8) {
|
||||||
PciAndThenOr8 (PciLibAddress, ~(*(UINT8 *)ClearBits), *((UINT8 *) SetBits));
|
PciAndThenOr8 (PciLibAddress, (UINT8) (~(*(UINT8 *) ClearBits)), *((UINT8 *) SetBits));
|
||||||
} else if (Width == EfiPeiPciCfgWidthUint16) {
|
} else if (Width == EfiPeiPciCfgWidthUint16) {
|
||||||
PciAndThenOr16 (PciLibAddress, ~ReadUnaligned16 ((UINT16 *) ClearBits), ReadUnaligned16 ((UINT16 *) SetBits));
|
ClearValue16 = (UINT16) (~ReadUnaligned16 ((UINT16 *) ClearBits));
|
||||||
|
SetValue16 = ReadUnaligned16 ((UINT16 *) SetBits);
|
||||||
|
PciAndThenOr16 (PciLibAddress, ClearValue16, SetValue16);
|
||||||
} else if (Width == EfiPeiPciCfgWidthUint32) {
|
} else if (Width == EfiPeiPciCfgWidthUint32) {
|
||||||
PciAndThenOr32 (PciLibAddress, ~ReadUnaligned32 ((UINT32 *) ClearBits), ReadUnaligned32 ((UINT32 *) SetBits));
|
ClearValue32 = (UINT32) (~ReadUnaligned32 ((UINT32 *) ClearBits));
|
||||||
|
SetValue32 = ReadUnaligned32 ((UINT32 *) SetBits);
|
||||||
|
PciAndThenOr32 (PciLibAddress, ClearValue32, SetValue32);
|
||||||
} else {
|
} else {
|
||||||
return EFI_INVALID_PARAMETER;
|
return EFI_INVALID_PARAMETER;
|
||||||
}
|
}
|
||||||
|
|
|
@ -328,15 +328,23 @@ PciCfg2Modify (
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
UINTN PciLibAddress;
|
UINTN PciLibAddress;
|
||||||
|
UINT16 ClearValue16;
|
||||||
|
UINT16 SetValue16;
|
||||||
|
UINT32 ClearValue32;
|
||||||
|
UINT32 SetValue32;
|
||||||
|
|
||||||
PciLibAddress = PciCfgAddressConvert ((EFI_PEI_PCI_CFG_PPI_PCI_ADDRESS *) &Address);
|
PciLibAddress = PciCfgAddressConvert ((EFI_PEI_PCI_CFG_PPI_PCI_ADDRESS *) &Address);
|
||||||
|
|
||||||
if (Width == EfiPeiPciCfgWidthUint8) {
|
if (Width == EfiPeiPciCfgWidthUint8) {
|
||||||
PciAndThenOr8 (PciLibAddress, ~(*(UINT8 *)ClearBits), *((UINT8 *) SetBits));
|
PciAndThenOr8 (PciLibAddress, (UINT8) (~(*(UINT8 *) ClearBits)), *((UINT8 *) SetBits));
|
||||||
} else if (Width == EfiPeiPciCfgWidthUint16) {
|
} else if (Width == EfiPeiPciCfgWidthUint16) {
|
||||||
PciAndThenOr16 (PciLibAddress, ~ReadUnaligned16 ((UINT16 *) ClearBits), ReadUnaligned16 ((UINT16 *) SetBits));
|
ClearValue16 = (UINT16) (~ReadUnaligned16 ((UINT16 *) ClearBits));
|
||||||
|
SetValue16 = ReadUnaligned16 ((UINT16 *) SetBits);
|
||||||
|
PciAndThenOr16 (PciLibAddress, ClearValue16, SetValue16);
|
||||||
} else if (Width == EfiPeiPciCfgWidthUint32) {
|
} else if (Width == EfiPeiPciCfgWidthUint32) {
|
||||||
PciAndThenOr32 (PciLibAddress, ~ReadUnaligned32 ((UINT32 *) ClearBits), ReadUnaligned32 ((UINT32 *) SetBits));
|
ClearValue32 = (UINT32) (~ReadUnaligned32 ((UINT32 *) ClearBits));
|
||||||
|
SetValue32 = ReadUnaligned32 ((UINT32 *) SetBits);
|
||||||
|
PciAndThenOr32 (PciLibAddress, ClearValue32, SetValue32);
|
||||||
} else {
|
} else {
|
||||||
return EFI_INVALID_PARAMETER;
|
return EFI_INVALID_PARAMETER;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue