Hi Andrew, Please see below. The region of interest is marked as "Reserved".
Thanks, Vladimir > -----Original Message----- > From: af...@apple.com [mailto:af...@apple.com] > Sent: Monday, May 30, 2016 11:32 AM > To: Vladimir Olovyannikov > Cc: edk2-de...@ml01.01.org > Subject: Re: [edk2] EfiConvertPointer/AllocatePages for an address return > EFI_NOT FOUND > > > > On May 30, 2016, at 10:37 AM, Vladimir Olovyannikov > <vladimir.olovyanni...@broadcom.com> wrote: > > > > > > Hello All, > > > > I faced an issue with my UEFI implementation (Armv8 64 bit platform). > > I need to convert a device physical address to the virtual on > > VirtualAddressChange event. > > EfiConvertPointer always returns EFI_NOT_FOUND. > > > > I tried to allocate just an address: > > gBS->AllocatePages(AllocateAddress, EfiRuntimeServicesCode, 1, > > &MyAddress); // Allocate one page > > where MyAddress is 0x65042000. > > Which also returns EFI_NOT_FOUND. > > > > I declared this device's memory in the Platform memory lib as > > > > // Mydevice > > // 1MB @0x65000000 (0x65000000 - 0x650fffff) > > MMUTable[++Index].PhysicalBase = MY_DEV_BASE; > > MMUTable[Index].VirtualBase = MY_DEV_BASE; > > MMUTable[Index].Length = MY_DEV_SZ; // SIZE_1MB > > MMUTable[Index].Attributes = > > ARM_MEMORY_REGION_ATTRIBUTE_DEVICE; > > > > I can access this device perfectly from BootServices (read/write) with MMU > > (1:1) on. > > But it is nowhere in virtual table map which > > AllocatePages()/EfiConvertPointer() eventually use. > > > > Please let me know what I am missing here? > > I have declared this memory as a Runtime with > > > > Status = gDS->AddMemorySpace ( > > EfiGcdMemoryTypeMemoryMappedIo, > > AlignedAddr, SIZE_64KB, > > EFI_MEMORY_UC | EFI_MEMORY_RUNTIME > > ); > > if (!EFI_ERROR (Status)) { > > Status = gDS->SetMemorySpaceAttributes ( > > AlignedAddr, > > SIZE_64KB, > > EFI_MEMORY_UC | EFI_MEMORY_RUNTIME > > ); > > } > > > > If you boot to the UEFI shell and dump the memory map what to do you see? Shell> memmap Type Start End # Pages Attributes Available 0000000080000000-0000000084FFFFFF 0000000000005000 000000000000000F Available 00000000850F0000-00000000B986FFFF 0000000000034780 000000000000000F RT_Data 00000000B9870000-00000000B98DFFFF 0000000000000070 800000000000000F Available 00000000B98E0000-00000000B98E5FFF 0000000000000006 000000000000000F LoaderCode 00000000B98E6000-00000000B9A12FFF 000000000000012D 000000000000000F BS_Code 00000000B9A13000-00000000B9B8FFFF 000000000000017D 000000000000000F RT_Data 00000000B9B90000-00000000B9BDFFFF 0000000000000050 800000000000000F RT_Code 00000000B9BE0000-00000000B9C2FFFF 0000000000000050 800000000000000F RT_Data 00000000B9C30000-00000000B9C7FFFF 0000000000000050 800000000000000F RT_Code 00000000B9C80000-00000000B9CCFFFF 0000000000000050 800000000000000F RT_Data 00000000B9CD0000-00000000B9D1FFFF 0000000000000050 800000000000000F RT_Code 00000000B9D20000-00000000B9D7FFFF 0000000000000060 800000000000000F ACPI_Recl 00000000B9D80000-00000000B9D9FFFF 0000000000000020 000000000000000F RT_Data 00000000B9DA0000-00000000B9DEFFFF 0000000000000050 800000000000000F RT_Code 00000000B9DF0000-00000000B9E3FFFF 0000000000000050 800000000000000F RT_Data 00000000B9E40000-00000000B9E8FFFF 0000000000000050 800000000000000F RT_Code 00000000B9E90000-00000000B9EDFFFF 0000000000000050 800000000000000F RT_Data 00000000B9EE0000-00000000B9F2FFFF 0000000000000050 800000000000000F RT_Code 00000000B9F30000-00000000B9F7FFFF 0000000000000050 800000000000000F Available 00000000B9F80000-00000000B9F80FFF 0000000000000001 000000000000000F Reserved 00000000B9F81000-00000000B9F84FFF 0000000000000004 000000000000000F BS_Code 00000000B9F85000-00000000B9F8BFFF 0000000000000007 000000000000000F Available 00000000B9F8C000-00000000BCA7AFFF 0000000000002AEF 000000000000000F BS_Data 00000000BCA7B000-00000000BEDBFFFF 0000000000002345 000000000000000F Available 00000000BEDC0000-00000000BEDC5FFF 0000000000000006 000000000000000F BS_Code 00000000BEDC6000-00000000BEF4FFFF 000000000000018A 000000000000000F Available 00000000BEF50000-00000000BEFBFFFF 0000000000000070 000000000000000F RT_Data 00000000BEFC0000-00000000BEFEFFFF 0000000000000030 800000000000000F Available 00000000BEFF0000-00000000BEFFEFFF 000000000000000F 000000000000000F BS_Data 00000000BEFFF000-00000000BEFFFFFF 0000000000000001 000000000000000F Available 00000000BF000000-00000000BF293FFF 0000000000000294 000000000000000F BS_Data 00000000BF294000-00000000BFFFFFFF 0000000000000D6C 000000000000000F Reserved 0000000065020000-000000006502FFFF 0000000000000010 0000000000000001 Reserved : 20 Pages (81,920 Bytes) LoaderCode: 301 Pages (1,232,896 Bytes) LoaderData: 0 Pages (0 Bytes) BS_Code : 782 Pages (3,203,072 Bytes) BS_Data : 12,466 Pages (51,060,736 Bytes) RT_Code : 496 Pages (2,031,616 Bytes) RT_Data : 640 Pages (2,621,440 Bytes) ACPI_Recl : 32 Pages (131,072 Bytes) ACPI_NVS : 0 Pages (0 Bytes) MMIO : 0 Pages (0 Bytes) MMIO_Port : 0 Pages (0 Bytes) PalCode : 0 Pages (0 Bytes) Available : 247,183 Pages (1,012,461,568 Bytes) -------------- Total Memory: 1,023 MB (1,072,742,400 Bytes) > > Thanks, > > Andrew Fish > > > Thank you, > > Vladimir > > _______________________________________________ > > edk2-devel mailing list > > edk2-devel@lists.01.org > > https://urldefense.proofpoint.com/v2/url?u=https- > 3A__lists.01.org_mailman_listinfo_edk2-2Ddevel&d=CwICAg&c=Hw- > EJUFt2_D9PK5csBJ29kRV40HqSDXWTLPyZ6W8u84&r=4sdzHKz0eU1vXqaUyS > VmyA&m=dj- > PLSCQ4D53smC8eOprHa7aKtcLYkZDhDWnczTquDU&s=jb4N3rlGt6jI92m5sab > AKDmsB2T9jdtvYQhw_A91Xi4&e= _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel