Hi, Please help.
Regards, Meenakshi -----Original Message----- From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of Meenakshi Aggarwal Sent: Friday, July 24, 2015 10:27 AM To: Ni, Ruiyu; Tian, Feng; edk2-devel@lists.01.org Subject: Re: [edk2] Filesystem support Hi, Thank you so much Ray for the information. I am able to run sct with the latest package. "sct -a" is working fine, but "sct -u" command gives some garbage print and then hang. I am executing it on a freescale based Soc. Do I need to enable some other driver to support user mode in sct. Thanks, Meenakshi -----Original Message----- From: Ni, Ruiyu [mailto:ruiyu...@intel.com] Sent: Monday, July 20, 2015 1:00 PM To: Aggarwal Meenakshi-B46476; Tian, Feng; edk2-devel@lists.01.org Subject: RE: [edk2] Filesystem support Meenakshi, I guess Partition driver wasn't able to start so your fix embedding partition related code to Fat driver resolves your bug. Please check whether Partition driver is started. Thanks, Ray > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of > Meenakshi Aggarwal > Sent: Monday, July 20, 2015 2:20 PM > To: Tian, Feng; edk2-devel@lists.01.org > Subject: Re: [edk2] Filesystem support > > Hi Feng, > > Thanks for your response. > > "Don't need to run under EdkShell" means I don’t need to copy > Shell_Full.efi in SD card, Correct? > > > Filesystem command issues get resolved after adding "Partition start LBA" > while calculating FatLba. > > Code Snippet below : > Status = DiskIo->ReadDisk (DiskIo, Volume->MediaId, 0, BlockSize, Mbr); > if (EFI_ERROR (Status)) { > DEBUG((EFI_D_ERROR,"Failed to read partition \n")); > return Status; > } > > Status = PartitionValidMbr(Mbr, Volume->BlockIo->Media->LastBlock); > if (!Status) > return EFI_VOLUME_CORRUPTED; > > StartingLBA = UNPACK_UINT32 (Mbr->Partition[0].StartingLBA); > > RootDirSectors = ((Volume->RootEntries * sizeof > (FAT_DIRECTORY_ENTRY)) + (BlockSize - 1)) / BlockSize; > > FatLba = StartingLBA + > FatBs.FatBsb.ReservedSectors; > > > > Thanks > Meenakshi > > -----Original Message----- > From: Tian, Feng [mailto:feng.t...@intel.com] > Sent: Monday, July 20, 2015 11:35 AM > To: Aggarwal Meenakshi-B46476; edk2-devel@lists.01.org > Cc: Tian, Feng > Subject: RE: [edk2] Filesystem support > > Hi, Meenakshi > > Latest SCT has supported running under UefiShell. So you don't need > run it under EdkShell again. Please try this. > > As for your previous question, how do you solve the HD() device path issue? > How do you solve LS issue? I didn't see your any info on this but > looks like they have gone away? > > Thanks > Feng > > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of > Meenakshi Aggarwal > Sent: Monday, July 20, 2015 13:17 > To: edk2-devel@lists.01.org > Subject: Re: [edk2] Filesystem support > > Hi, > > I have copied SCT and EFI shell in SD card. > Followed following link for running sct from SD card. > https://wiki.linaro.org/LEG/Engineering/Kernel/UEFI/SCT/HowTo > > Now, on running sct binary I am facing “InitShellApp: Application not > started from Shell” error. > > What will be the reason behind? > > “Shell_Full.efi” is taken from > EdkShellBinPkg/FullShell/AArch64/Shell_Full.efi path. > > FS0:\SCT\> ls > Directory of: FS0:\SCT\ > 07/20/2015 09:31 <DIR> 4,096 . > 07/20/2015 09:31 <DIR> 0 .. > 07/20/2015 09:25 440,736 SCT.efi > 07/20/2015 09:25 27,616 StallForKey.efi > 07/20/2015 09:30 <DIR> 4,096 Application > 07/20/2015 09:30 <DIR> 4,096 Data > 07/20/2015 09:30 <DIR> 4,096 Dependency > 07/20/2015 09:30 <DIR> 4,096 Ents > 07/20/2015 09:30 <DIR> 4,096 Proxy > 07/20/2015 09:30 <DIR> 4,096 Report > 07/20/2015 09:30 <DIR> 4,096 SCRT > 07/20/2015 09:30 <DIR> 4,096 Sequence > 07/20/2015 09:30 <DIR> 4,096 Support > 07/20/2015 09:30 <DIR> 8,192 Test > 07/19/2015 01:23 1,047,296 Shell_Full.efi > 3 File(s) 1,515,648 bytes > 12 Dir(s) > > FS0:\SCT\> SCT > InstallProtocolInterface: 5B1B31A1-9562-11D2-8E3F-00A0C969723B > DFEAA440 add-symbol-file > /proj/nmgsw_be/users/b46476/code/UEFI/ls1043a-uefi/Build/UefiSct/DEBU > G_ARMGCC/AARCH64/SctPkg/TestInfrastructure/SCT/Framework/Sct/DEBU > G/SCT.dll 0xDC040260 Loading driver at 0x000DC040000 > EntryPoint=0x000DC040260 SCT.efi > InstallProtocolInterface: BC62157E-3E33-4FEC-9920-2D3B36D750DF > DF6C9018 > InstallProtocolInterface: 752F3136-4E16-4FDC-A22A-E5F46812F4CA > FFFFF7E0 > InitShellApp: Application not started from Shell remove-symbol-file > /proj/nmgsw_be/users/b46476/code/UEFI/ls1043a-uefi/Build/UefiSct/DEBU > G_ARMGCC/AARCH64/SctPkg/TestInfrastructure/SCT/Framework/Sct/DEBU > G/SCT.dll 0xDC040260 FS0:\SCT\> > > > > Any help is appreciated. > > > Thanks & Regards > Meenakshi > From: Andrew Fish [mailto:af...@apple.com] > Sent: Wednesday, July 15, 2015 7:33 PM > To: Aggarwal Meenakshi-B46476 > Cc: > edk2-de...@lists.sourceforge.net<mailto:edk2-devel@lists.sourceforge.n > et > > > Subject: Re: [edk2] Filesystem support > > > On Jul 15, 2015, at 6:29 AM, Meenakshi Aggarwal > <meenakshi.aggar...@freescale.com<mailto:meenakshi.aggarwal@freesc > ale.com>> wrote: > > Hi, > > > I need your help in running SCT from SD card on Freescale SoC. > > > I have built SCT and copied following images on SD card (formatted > with FAT32), inserted this SD card in my board: > > 1.EdkShellBinPkg/FullShell/Arm/Shell_Full.efi > 2.Build/UefiSct/DEBUG_ARMGCC/SctPackageAARCH64/AARCH64/* > > > > On running shell I saw following entry: > UEFI Interactive Shell v2.1 > EDK II > UEFI v2.40 (LS1043a Simulator EFI Jul 15 2015 16:55:13, 0x00000000) > Mapping table > FS0: Alias(s):HD0mohuqyt:;BLK0: > > HD(-1225503552,175,0,0x20021BE11DF9E45,0xAFAFAFAF1BC5D5A5) > > > It is the hard drive device path. The UEFI spec defines these device > path display formats in the “EFI Device Path Display Format Overview” section. > > HD(Partition,Type,Signature,Start, Size) > HD(Partition,Type,Signature) (Display Only) > > The Partition is an integer representing the partition number. It is > optional and the default is 0. If Partition is 0, then Start and Size are > prohibited. > The Type is an integer between 0-255 or else the keyword MBR (1) or GPT (2). > The type is optional and the default is 2. > The Signature is an integer if Type is 1 or else GUID if Type is 2. > The signature is required. > The Start is a 64-bit unsigned integer. It is prohibited if Partition is 0. > Otherwise it is required. > The Size is a 64-bit unsigned integer. It is prohibited if Partition is 0. > Otherwise it is required. > > The SD spec defines the format to be an MBR partition with a single > entry, that is formatted FAT32. SD XC is MBR formatted with exFAT :(. > > The partition driver should not bind to a malformed MBR (it produced > the device path), so maybe this is memory corruption? > https://svn.code.sf.net/p/edk2/code/trunk/edk2/MdeModulePkg/Universal/ > Disk/PartitionDxe/ > > This is the binary data structure being converted to text: > https://svn.code.sf.net/p/edk2/code/trunk/edk2/MdePkg/Include/Protocol > / > DevicePath.h > > /// > > /// The Hard Drive Media Device Path is used to represent a partition > on a hard drive. > > /// > > typedef struct { > > EFI_DEVICE_PATH_PROTOCOL Header; > > /// > > /// Describes the entry in a partition table, starting with entry 1. > > /// Partition number zero represents the entire device. Valid > > /// partition numbers for a MBR partition are [1, 4]. Valid > > /// partition numbers for a GPT partition are [1, > NumberOfPartitionEntries]. > > /// > > UINT32 PartitionNumber; > > /// > > /// Starting LBA of the partition on the hard drive. > > /// > > UINT64 PartitionStart; > > /// > > /// Size of the partition in units of Logical Blocks. > > /// > > UINT64 PartitionSize; > > /// > > /// Signature unique to this partition: > > /// If SignatureType is 0, this field has to be initialized with 16 zeros. > > /// If SignatureType is 1, the MBR signature is stored in the first > 4 bytes of this field. > > /// The other 12 bytes are initialized with zeros. > > /// If SignatureType is 2, this field contains a 16 byte signature. > > /// > > UINT8 Signature[16]; > > /// > > /// Partition Format: (Unused values reserved). > > /// 0x01 - PC-AT compatible legacy MBR. > > /// 0x02 - GUID Partition Table. > > /// > > UINT8 MBRType; > > /// > > /// Type of Disk Signature: (Unused values reserved). > > /// 0x00 - No Disk Signature. > > /// 0x01 - 32-bit signature from address 0x1b8 of the type 0x01 MBR. > > /// 0x02 - GUID signature. > > /// > > UINT8 SignatureType; > > } HARDDRIVE_DEVICE_PATH; > > > > #define MBR_TYPE_PCAT 0x01 > > #define MBR_TYPE_EFI_PARTITION_TABLE_HEADER 0x02 > > > > #define NO_DISK_SIGNATURE 0x00 > > #define SIGNATURE_TYPE_MBR 0x01 > > #define SIGNATURE_TYPE_GUID 0x02 > Thanks, > > Andrew Fish > > > I am not getting from where it is populating these values of HD(). > > > Now on selecting FS0, I saw following prints: > Shell> fs0: > FS0:\> ls > Get RTC Year: 15 Mon: 07 Day: 15 Hour: 17 Min: 24 Sec: 59 Get DATE: > 2015-07-15 TIME: 17:24:59 > FSOpen: Open '.' Success > File Not Found > FS0:\> > > > My UEFI binary has support of SD card, I can probe a card and its > read, write and erase functionalities are working fine. > > I want to execute SCT.efi using shell. Kindly help me with this > > > Along with the above issue, I am seeing following failures in > OpenVolume() > call: > > FATDirSize: cluster chain corrupt > *OutputFileName 0x61 > *OutputFileName 0x62 > *OutputFileName 0x63 > FatGrowEof: cluster chain corrupt > FatShrinkEof: cluster chain corrupt > > > What is the reason behind these prints? > > > Regards > Meenakshi > > From: Olivier Martin [mailto:olivier.mar...@arm.com] > Sent: Tuesday, June 16, 2015 4:43 PM > To: > edk2-de...@lists.sourceforge.net<mailto:edk2-devel@lists.sourceforge.n > et > > > Subject: Re: [edk2] Filesystem support > > UEFI specification says ‘HD(Partition,Type,Signature,Start, Size)’. > These values are specific to you partition table. > > gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath is specific to the > ARM BDS. It is to create a default boot entry when you start your > system for a first time. > It is not (necessary) relevant to boot Linux or run SCT on your platform. > > I would say you have the appropriate list of EFI modules to get FAT > support (if you already have SD support in your UEFI firmware). > > > From: Meenakshi Aggarwal [mailto:meenakshi.aggar...@freescale.com] > Sent: 16 June 2015 10:10 > To: > edk2-de...@lists.sourceforge.net<mailto:edk2-devel@lists.sourceforge.n > et > > > Subject: [edk2] Filesystem support > > Hi All, > > > I want to boot linux and run SCT from SD card. > > I have seen BeagleBoard package code which is booting linux from SD. > > I got confused with entry: > gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"VenHw(B615F1 > F5-5088-43CD-809C-A16E52487D00)/HD(1,MBR,0x00000000,0x3F,0x19FC0) > /zImage" > > from where are 0x3F and 0x19FC0 came. Is it some default value for > start address and size? > Do I need to create an FV entry for this? > > > Also what all I need to include in my dsc and fdf file to enable > support of filesystem. I can see following listed files for filesystem > support (reference : > BeagleBoard) > > Changes in FDF: > # > # FAT filesystem + GPT/MBR partitioning > # > INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf > INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf > INF FatBinPkg/EnhancedFatDxe/Fat.inf > INF > MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf > > Changes in DSC > # > # FAT filesystem + GPT/MBR partitioning # > MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf > MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf > MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf > > > > > Thanks & regards > Meenakshi Aggarwal > > > -- IMPORTANT NOTICE: The contents of this email and any attachments > are confidential and may also be privileged. If you are not the > intended recipient, please notify the sender immediately and do not > disclose the contents to any other person, use it for any purpose, or > store or copy the information in any medium. Thank you. > > ARM Limited, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, > Registered in England & Wales, Company No: 2557590 ARM Holdings plc, > Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, Registered in > England & Wales, Company No: 2548782 > ---------------------------------------------------------------------- > -------- Don't Limit Your Business. Reach for the Cloud. > GigeNET's Cloud Solutions provide you with the tools and support that > you need to offload your IT needs and focus on growing your business. > Configured For All Businesses. Start Your Cloud Today. > https://www.gigenetcloud.com/___________________________________ > ____________ > edk2-devel mailing list > edk2-de...@lists.sourceforge.net<mailto:edk2-devel@lists.sourceforge.n > et > > > https://lists.sourceforge.net/lists/listinfo/edk2-devel > > _______________________________________________ > 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 _______________________________________________ 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