From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=217.140.101.70; helo=foss.arm.com; envelope-from=chandni.cherukuri@arm.com; receiver=edk2-devel@lists.01.org Received: from foss.arm.com (usa-sjc-mx-foss1.foss.arm.com [217.140.101.70]) by ml01.01.org (Postfix) with ESMTP id EEAFD2119306B for ; Thu, 22 Nov 2018 03:19:39 -0800 (PST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 2657A3617 for ; Thu, 22 Nov 2018 03:19:39 -0800 (PST) Received: from mail-ed1-f54.google.com (usa-sjc-mx-foss1.foss.arm.com [217.140.101.70]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id C6D713F5A0 for ; Thu, 22 Nov 2018 03:19:38 -0800 (PST) Received: by mail-ed1-f54.google.com with SMTP id h50so7409027ede.5 for ; Thu, 22 Nov 2018 03:19:38 -0800 (PST) X-Gm-Message-State: AA+aEWacYlwb5mFDwewEpf0McJVbja1Yb8s5yUL6wAkWsXUc/rB6eYSt bJ97Q6OUMOzHCWeesaMHOZ2C0ytTUXVOMsW0gb0= X-Google-Smtp-Source: AFSGD/UKVXpOAMlq2/uHuj4iVuoRBdS2EQ+9tvQpS2AZzIBGzxAQ1Q2RJ2DY+ypAyXD8TUApAltSLiGdtRyK4f9FxVk= X-Received: by 2002:a50:e712:: with SMTP id a18mr9004242edn.163.1542885577140; Thu, 22 Nov 2018 03:19:37 -0800 (PST) MIME-Version: 1.0 References: <20181121120145.3148-1-ard.biesheuvel@linaro.org> In-Reply-To: From: chandni cherukuri Date: Thu, 22 Nov 2018 16:49:09 +0530 X-Gmail-Original-Message-ID: Message-ID: To: Ard Biesheuvel Cc: thomas.abraham@arm.com, edk2-devel@lists.01.org, nariman.poushin@linaro.org Subject: Re: [PATCH edk2-platforms 0/3] drop GUIDs from NOR flash bank descriptors X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Nov 2018 11:19:40 -0000 Content-Type: text/plain; charset="UTF-8" On Thu, Nov 22, 2018 at 1:20 PM Ard Biesheuvel wrote: > > On Thu, 22 Nov 2018 at 05:01, Thomas Abraham wrote: > > > > Hi Ard, > > > > On Thu, Nov 22, 2018 at 3:46 AM Ard Biesheuvel > > wrote: > > > > > > On Wed, 21 Nov 2018 at 14:48, Thomas Abraham wrote: > > > > > > > > Hi Ard, > > > > > > > > On Wed, Nov 21, 2018 at 5:31 PM Ard Biesheuvel > > > > wrote: > > > > > > > > > > Align edk2-platform with upcoming changes to EDK2 to get rid of per-bank > > > > > NOR flash GUIDs. > > > > > > > > > > Ard Biesheuvel (3): > > > > > Platform/ARM: replace hardcoded VenHW() device paths referring to NOR > > > > > flash > > > > > Silicon/SynQuacer: drop per-bank NOR flash GUIDs > > > > > Platform/ARM: drop per-bank NOR flash GUIDs > > > > > > > > > > Platform/ARM/JunoPkg/ArmJuno.dec | 2 +- > > > > > Platform/ARM/JunoPkg/ArmJuno.dsc | 2 +- > > > > > .../JunoPkg/Library/NorFlashJunoLib/NorFlashJuno.c | 2 -- > > > > > .../ARM/SgiPkg/Library/NorFlashLib/NorFlashLib.c | 2 -- > > > > > Platform/ARM/SgiPkg/SgiPlatform.dsc | 2 +- > > > > > Platform/ARM/VExpressPkg/ArmVExpress-CTA15-A7.dsc | 2 +- > > > > > Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc | 2 +- > > > > > .../NorFlashArmVExpressLib/NorFlashArmVExpress.c | 4 ---- > > > > > .../SynQuacer/Drivers/Fip006Dxe/NorFlashDxe.c | 14 +++++++------- > > > > > .../SynQuacer/Drivers/Fip006Dxe/NorFlashDxe.h | 3 +++ > > > > > .../NorFlashSynQuacerLib/NorFlashSynQuacer.c | 6 ------ > > > > > 11 files changed, 15 insertions(+), 26 deletions(-) > > > > > > > > Tested this patch series and "[PATCH v2 0/5] ArmPlatformPkg, > > > > ArmVirtPkg: discover NOR flash banks from DTB" patch series on the > > > > Juno board. With these patches applied, the boot fails on Juno board > > > > with the following messages. I have not yet tried to debug the issue > > > > but wanted to let you know this. > > > > > > > > [...] > > > > Loading driver at 0x000F830C000 EntryPoint=0x000F831B2AC IScsiDxe.efi > > > > add-symbol-file > > > > /home/thopan01/devel/juno/uefi/uefi/edk2/Build/ArmJuno/DEBUG_GCC5/AARCH64/MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe/DEBUG/Udp4Dxe.dll > > > > 0xF8300000 > > > > Loading driver at 0x000F82FF000 EntryPoint=0x000F8306DF0 Udp4Dxe.efi > > > > add-symbol-file > > > > /home/thopan01/devel/juno/uefi/uefi/edk2/Build/ArmJuno/DEBUG_GCC5/AARCH64/Platform/ARM/Drivers/FdtPlatformDxe/FdtPlatformDxe/DEBUG/FdtPlatformDxe.dll > > > > 0xF82EE000 > > > > Loading driver at 0x000F82ED000 EntryPoint=0x000F82F76EC FdtPlatformDxe.efi > > > > Found image: fip in block 5. > > > > Found image: norkern in block 20. > > > > Found image: ramdisk.img in block 116. > > > > Found image: hdlcdclk in block 151. > > > > Found image: selftest in block 152. > > > > Found image: board.dtb in block 156. > > > > Found image: scp_bl1 in block 249. > > > > Found image: bl1 in block 251. > > > > Found image: startup.nsh in block 252. > > > > ASSERT [BootMonFs] > > > > /home/thopan01/devel/juno/uefi/uefi/edk2/MdePkg/Library/BaseLib/String.c(173): > > > > ((UINTN) String & 0x00000001) == 0 > > > > > > > > > > Hi Thomas, > > > > > > Thanks for testing. > > > > > > Could you please apply this patch and re-test: > > > > > > --- a/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc > > > +++ b/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc > > > @@ -299,7 +299,7 @@ > > > !if $(TARGET) == RELEASE > > > gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x21 > > > !else > > > - gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2f > > > + gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x3f > > > !endif > > > > > > # DEBUG_INIT 0x00000001 // Initialization > > > > > > This will produce a backtrace when an ASSERT() is triggered, and from > > > this we can figure out what the call stack looks like exactly (The > > > ASSERT() occurs in StrLen (), which is called with a misaligned > > > unicode string, but I cannot figure out where the call is made) > > > > > > Please share the backtrace and all the .dlls listed in it if you can please. > > > > The following is the log with the above diff applied on top of your > > patch series. > > > > Thanks! > > Could you please share the output of > > nm -n /home/thopan01/devel/juno/uefi/uefi/edk2/Build/ArmJuno/DEBUG_GCC5/AARCH64/Platform/ARM/Drivers/BootMonFs/BootMonFs/DEBUG/BootMonFs.dll > > as well so I can cross reference the addresses with the functions? Thanks. > > Hi Ard, With the following diff applied on top of your patches we see that the ASSERT no longer comes in Juno and it boots till the UEFI Shell. --- a/ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.c +++ b/ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.c @@ -129,7 +129,7 @@ NorFlashCreateInstance ( Instance->Media.LastBlock = (NorFlashSize / BlockSize)-1; CopyGuid (&Instance->DevicePath.Vendor.Guid, &gEfiCallerIdGuid); - Instance->DevicePath.Index = (UINT8)Index; + Instance->DevicePath.Index = (UINT16)Index;^M Instance->ShadowBuffer = AllocateRuntimePool (BlockSize);; if (Instance->ShadowBuffer == NULL) { diff --git a/ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.h b/ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.h index 8886aa4..c40255e 100644 --- a/ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.h +++ b/ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.h @@ -125,7 +125,7 @@ typedef struct _NOR_FLASH_INSTANCE NOR_FLASH_INSTANCE; #pragma pack(1) typedef struct { VENDOR_DEVICE_PATH Vendor; - UINT8 Index; + UINT16 Index;^M EFI_DEVICE_PATH_PROTOCOL End; } NOR_FLASH_DEVICE_PATH; #pragma pack() Thanks Chandni > > Loading driver at 0x000F8309000 EntryPoint=0x000F83182A4 IScsiDxe.efi > > add-symbol-file > > /home/thopan01/devel/juno/uefi/uefi/edk2/Build/ArmJuno/DEBUG_GCC5/AARCH64/MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe/DEBUG/Udp4Dxe.dll > > 0xF82FD000 > > Loading driver at 0x000F82FC000 EntryPoint=0x000F8303DE8 Udp4Dxe.efi > > add-symbol-file > > /home/thopan01/devel/juno/uefi/uefi/edk2/Build/ArmJuno/DEBUG_GCC5/AARCH64/Platform/ARM/Drivers/FdtPlatformDxe/FdtPlatformDxe/DEBUG/FdtPlatformDxe.dll > > 0xF82EA000 > > Loading driver at 0x000F82E9000 EntryPoint=0x000F82F46E4 FdtPlatformDxe.efi > > Found image: fip in block 5. > > Found image: norkern in block 20. > > Found image: ramdisk.img in block 116. > > Found image: hdlcdclk in block 151. > > Found image: selftest in block 152. > > Found image: board.dtb in block 156. > > Found image: scp_bl1 in block 249. > > Found image: bl1 in block 251. > > Found image: startup.nsh in block 252. > > ASSERT [BootMonFs] > > /home/thopan01/devel/juno/uefi/uefi/edk2/MdePkg/Library/BaseLib/String.c(173): > > ((UINTN) String & 0x00000001) == 0 > > > > > > Synchronous Exception at 0x00000000FD8F5584 > > PC 0x0000FD8F5584 (0x0000FD8EF000+0x00006584) [ 0] BootMonFs.dll > > PC 0x0000FD8F01A8 (0x0000FD8EF000+0x000011A8) [ 0] BootMonFs.dll > > PC 0x0000FD8F09AC (0x0000FD8EF000+0x000019AC) [ 0] BootMonFs.dll > > PC 0x0000FD8F0A18 (0x0000FD8EF000+0x00001A18) [ 0] BootMonFs.dll > > PC 0x0000FD8F3EC8 (0x0000FD8EF000+0x00004EC8) [ 0] BootMonFs.dll > > PC 0x0000F82EE158 (0x0000F82E9000+0x00005158) [ 1] FdtPlatformDxe.dll > > PC 0x0000F82EE66C (0x0000F82E9000+0x0000566C) [ 1] FdtPlatformDxe.dll > > PC 0x0000F82EEE70 (0x0000F82E9000+0x00005E70) [ 1] FdtPlatformDxe.dll > > PC 0x0000F82F4B58 (0x0000F82E9000+0x0000BB58) [ 1] FdtPlatformDxe.dll > > PC 0x0000FDB0AC0C (0x0000FDB02000+0x00008C0C) [ 2] DxeCore.dll > > PC 0x0000FDB18420 (0x0000FDB02000+0x00016420) [ 2] DxeCore.dll > > PC 0x0000FDB0EA88 (0x0000FDB02000+0x0000CA88) [ 2] DxeCore.dll > > PC 0x0000E000820C > > PC 0x0000E0008474 > > > > [ 0] /home/thopan01/devel/juno/uefi/uefi/edk2/Build/ArmJuno/DEBUG_GCC5/AARCH64/Platform/ARM/Drivers/BootMonFs/BootMonFs/DEBUG/BootMonFs.dll > > [ 1] /home/thopan01/devel/juno/uefi/uefi/edk2/Build/ArmJuno/DEBUG_GCC5/AARCH64/Platform/ARM/Drivers/FdtPlatformDxe/FdtPlatformDxe/DEBUG/FdtPlatformDxe.dll > > [ 2] /home/thopan01/devel/juno/uefi/uefi/edk2/Build/ArmJuno/DEBUG_GCC5/AARCH64/MdeModulePkg/Core/Dxe/DxeMain/DEBUG/DxeCore.dll > > > > X0 0x000000000000000A X1 0x00000000FE8167C0 X2 > > 0x0000000000000001 X3 0x0000000000000000 > > X4 0x0000000000000001 X5 0x0000000000000001 X6 > > 0x0000000000000000 X7 0x00000000FD8F584F > > X8 0x0000000000000002 X9 0x0000000000000000 X10 > > 0x0000000000000002 X11 0x0000000000000000 > > X12 0x0000000000000002 X13 0x0000000000000002 X14 > > 0x0000000000000001 X15 0x00000000000000FF > > X16 0x00000000FE816B20 X17 0x00000000FFFFA6AC X18 > > 0x0000000000000000 X19 0x00000000FE816846 > > X20 0x00000000FE816846 X21 0x000000007FF80018 X22 > > 0x000000007FF80000 X23 0x0000000000000001 > > X24 0x00000000FE8169E8 X25 0x0000000000000000 X26 > > 0x00000000FD8C8018 X27 0x00000000FD8C62AD > > X28 0x0000000000000001 FP 0x00000000FE816790 LR 0x00000000FD8F01A8 > > > > V0 0xAFAFAFAFAFAFAFAF AFAFAFAFAFAFAFAF V1 0xAB1C5ED5923F82A4 > > 59F111F13956C25B > > V2 0x550C7DC3243185BE 12835B01D807AA98 V3 0xC19BF1749BDC06A7 > > 80DEB1FE72BE5D74 > > V4 0x240CA1CC0FC19DC6 EFBE4786E49B69C1 V5 0x76F988DA5CB0A9DC > > 4A7484AA2DE92C6F > > V6 0xBF597FC7B00327C8 A831C66D983E5152 V7 0x1429296706CA6351 > > D5A79147C6E00BF3 > > V8 0x0000000000000000 2E1B213827B70A85 V9 0x0000000000000000 > > 766A0ABB650A7354 > > V10 0x0000000000000000 A81A664BA2BFE8A1 V11 0x0000000000000000 > > D6990624D192E819 > > V12 0x0000000000000000 1E376C0819A4C116 V13 0x0000000000000000 > > 4ED8AA4A391C0CB3 > > V14 0x0000000000000000 78A5636F748F82EE V15 0x0000000000000000 > > A4506CEB90BEFFFA > > V16 0x3C83709547545153 BC990E9F897D4FA8 V17 0xBEBEF297C5EC0578 > > E1D99AE8C2B92607 > > V18 0x13242833C5F05BAB 101C24C521387481 V19 0x0A50ABCAD0BDDA12 > > 996865483E880969 > > V20 0x6C4ABAA53A9BE1CB 4416D9F479B08221 V21 0x60952147C3A68574 > > 55B8AE51435C1A1A > > V22 0x9FEB2A3B4AB8D3BF 88C1883495C7F76F V23 0xD0C224BC8FB77E09 > > 3DB8D233CF470963 > > V24 0x0E72963E02D21C93 C95B757DA62B3A12 V25 0x2A77DBA1E4EE5D5C > > E08479A1B557DFA8 > > V26 0xB593F86668CA8129 927A0019CDEC1A76 V27 0x2014000680902002 > > 81A0200000101002 > > V28 0x1821004001120581 8800842100020010 V29 0x1002000A80081080 > > 2410800460840820 > > V30 0x0400000600040000 0404040100000049 V31 0x0044880025110005 > > 8400000080090000 > > > > SP 0x00000000FE816790 ELR 0x00000000FD8F5584 SPSR 0x60000209 FPSR > > 0x00000000 > > ESR 0x5600DBDB FAR 0x400000A4600D0B98 > > > > ESR : EC 0x15 IL 0x1 ISS 0x0000DBDB > > > > SVC executed in AArch64 > > > > Stack dump: > > 00000FE816690: 55B8AE51435C1A1A 60952147C3A68574 88C1883495C7F76F > > 9FEB2A3B4AB8D3BF > > 00000FE8166B0: 3DB8D233CF470963 D0C224BC8FB77E09 C95B757DA62B3A12 > > 0E72963E02D21C93 > > 00000FE8166D0: E08479A1B557DFA8 2A77DBA1E4EE5D5C 927A0019CDEC1A76 > > B593F86668CA8129 > > 00000FE8166F0: 81A0200000101002 2014000680902002 8800842100020010 > > 1821004001120581 > > 00000FE816710: 2410800460840820 1002000A80081080 0404040100000049 > > 0400000600040000 > > 00000FE816730: 8400000080090000 0044880025110005 00000000FD8F03A8 > > 0000000040000209 > > 00000FE816750: 0000000000000000 0000000080001700 400000A4600D0B98 > > 00000000FD8C62B1 > > 00000FE816770: 00000000FE816790 00000000FD8F01C0 00000000FE816845 > > 00000000FE8169E8 > > > 00000FE816790: 00000000FE8168C0 00000000FD8F09AC 0000000000000000 00000000FD8C62B1 > > 00000FE8167B0: 00000000F82FA000 00000000F82FA000 5B20545245535341 > > 466E6F4D746F6F42 > > 00000FE8167D0: 656D6F682F205D73 306E61706F68742F 2F6C657665642F31 > > 6665752F6F6E756A > > 00000FE8167F0: 652F696665752F69 5065644D2F326B64 617262694C2F676B > > 4C657361422F7972 > > 00000FE816810: 6E697274532F6269 2933373128632E67 544E49552828203A > > 6E6972745320294E > > 00000FE816830: 3030783020262067 2029313030303030 00000A0D30203D3D > > 00000000FD8C8018 > > 00000FE816850: 00000000000000FF 00000000FD8F3CD0 00000000FE816890 > > 00000000FD8F1B98 > > 00000FE816870: 00000000FD8C7518 0000000003FBFF78 00000000FD8C74C0 > > 00000004FD8C8018 > > ASSERT [ArmCpuDxe] > > /home/thopan01/devel/juno/uefi/uefi/edk2/ArmPkg/Library/DefaultExceptionHandlerLib/AArch64/DefaultExceptionHandler.c(271): > > ((BOOLEAN)(0==1)) > > > > Recursive exception occurred while dumping the CPU state > > > > CTRL-A Z for help | 115200 8N1 | NOR | Minicom 2.7 | VT102 | Offline | > > ttyS0 > > > > > _______________________________________________ > > > edk2-devel mailing list > > > edk2-devel@lists.01.org > > > https://lists.01.org/mailman/listinfo/edk2-devel > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel