From: chandni cherukuri <chandni.cherukuri@arm.com>
To: Ard Biesheuvel <ard.biesheuvel@linaro.org>
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
Date: Thu, 22 Nov 2018 16:49:09 +0530 [thread overview]
Message-ID: <CADXzzgpV37gKzmSYYrEyZgs_1B33AmJAnYJHwdA3Hvuax_djcw@mail.gmail.com> (raw)
In-Reply-To: <CAKv+Gu9A3W5cEgF5uQF4ub9oeLsPw3rzYaivgKW_uVbWPDYgyA@mail.gmail.com>
On Thu, Nov 22, 2018 at 1:20 PM Ard Biesheuvel
<ard.biesheuvel@linaro.org> wrote:
>
> On Thu, 22 Nov 2018 at 05:01, Thomas Abraham <thomas.abraham@arm.com> wrote:
> >
> > Hi Ard,
> >
> > On Thu, Nov 22, 2018 at 3:46 AM Ard Biesheuvel
> > <ard.biesheuvel@linaro.org> wrote:
> > >
> > > On Wed, 21 Nov 2018 at 14:48, Thomas Abraham <thomas.abraham@arm.com> wrote:
> > > >
> > > > Hi Ard,
> > > >
> > > > On Wed, Nov 21, 2018 at 5:31 PM Ard Biesheuvel
> > > > <ard.biesheuvel@linaro.org> 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
next prev parent reply other threads:[~2018-11-22 11:19 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-11-21 12:01 [PATCH edk2-platforms 0/3] drop GUIDs from NOR flash bank descriptors Ard Biesheuvel
2018-11-21 12:01 ` [PATCH edk2-platforms 1/3] Platform/ARM: replace hardcoded VenHW() device paths referring to NOR flash Ard Biesheuvel
2018-11-21 12:01 ` [PATCH edk2-platforms 2/3] Silicon/SynQuacer: drop per-bank NOR flash GUIDs Ard Biesheuvel
2018-11-21 12:01 ` [PATCH edk2-platforms 3/3] Platform/ARM: " Ard Biesheuvel
2018-11-21 13:48 ` [PATCH edk2-platforms 0/3] drop GUIDs from NOR flash bank descriptors Thomas Abraham
2018-11-21 22:16 ` Ard Biesheuvel
2018-11-22 4:01 ` Thomas Abraham
2018-11-22 7:50 ` Ard Biesheuvel
2018-11-22 11:19 ` chandni cherukuri [this message]
2018-11-22 11:37 ` Ard Biesheuvel
2018-11-22 12:54 ` Thomas Abraham
2018-11-22 13:08 ` Ard Biesheuvel
2018-11-22 13:33 ` Thomas Abraham
2018-11-22 16:30 ` Laszlo Ersek
2018-11-22 16:37 ` Ard Biesheuvel
2018-11-26 15:15 ` Leif Lindholm
2018-11-26 17:26 ` Ard Biesheuvel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CADXzzgpV37gKzmSYYrEyZgs_1B33AmJAnYJHwdA3Hvuax_djcw@mail.gmail.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox