- Mar 02, 2023
-
-
Graeme Gregory authored
Signed-off-by:
Graeme Gregory <graeme@xora.org.uk> Reviewed-by:
Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by:
Leif Lindholm <quic_llindhol@quicinc.com>
-
- Feb 24, 2023
-
-
Pedro Falcato authored
There have been reports[1] of failures to boot due to unicode collation protocols not being available at Ext4Dxe load time. Therefore, attempt to initialize unicode collation at Start() time, like done previously in FatPkg/EnhancedFatDxe. By doing so, we move collation initialization to BDS, where the module responsible for protocol installation should have already been loaded and ran. [1]: https://edk2.groups.io/g/devel/message/100312 Cc: Ard Biesheuvel <ardb@kernel.org> Cc: Marvin Häuser <mhaeuser@posteo.de> Fixes: d9ceedca ("Ext4Pkg: Add Ext4Dxe driver.") Signed-off-by:
Pedro Falcato <pedro.falcato@gmail.com> Acked-by:
Ard Biesheuvel <ardb@kernel.org> Reviewed-by:
Marvin Häuser <mhaeuser@posteo.de>
-
- Feb 21, 2023
-
-
Rebecca Cran authored
The current SPCR table revision is 2. Instead of using a hard-coded value, use the symbolic constant EFI_ACPI_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE_REVISION. Signed-off-by:
Rebecca Cran <quic_rcran@quicinc.com> Reviewed-by:
Ard Biesheuvel <ardb@kernel.org>
-
Rebecca Cran authored
ACPI 6.0 introduced support for ASL 2.0 includes standard operators. Convert the DSDT from legacy to ASL 2.0 syntax. Signed-off-by:
Rebecca Cran <quic_rcran@quicinc.com> Reviewed-by:
Ard Biesheuvel <ardb@kernel.org>
-
Rebecca Cran authored
If PcdArmArchTimerFreqInHz is zero, the value of the timer frequency will be read from CNTFRQ_EL0. Avoid hard-coding the value in ArmJuno.dsc and instead let the ArmArchTimerLib driver read it from the SoC. Signed-off-by:
Rebecca Cran <rebecca@quicinc.com> Reviewed-by:
Ard Biesheuvel <ardb@kernel.org>
-
Rebecca Cran authored
The MetronomeDxe driver uses the PCD PcdMetronomeTickPeriod to calculate how many ticks to wait in MicroSecondDelay. Given that the timer clock on Juno runs at 50 MHz, it ticks every 20 ns; therefore, a setting of 1000 is wrong: for example it causes a call to gBS->Stall (1) to take 10 us. The driver in MdeModulePkg/Universal/Metronome assumes the clock ticks at least every 100 ns, which is the minimum allowed by the Metronome protocol. Since that's the case on Juno, switch from EmbeddedPkg/MetronomeDxe to MdeModulePkg/Universal/Metronome. Signed-off-by:
Rebecca Cran <rebecca@quicinc.com> Reviewed-by:
Ard Biesheuvel <ardb@kernel.org>
-
- Feb 17, 2023
-
-
Savva Mitrofanov authored
The SymlinkTmp was deallocated unconditionally, so we shouldn't free it again on EFI_ERROR Cc: Marvin Häuser <mhaeuser@posteo.de> Cc: Pedro Falcato <pedro.falcato@gmail.com> Cc: Vitaly Cheptsov <vit9696@protonmail.com> Fixes: e81432fb ("Ext4Pkg: Add symbolic links support") Signed-off-by:
Savva Mitrofanov <savvamtr@gmail.com> Reviewed-by:
Marvin Häuser <mhaeuser@posteo.de> Reviewed-by:
Pedro Falcato <pedro.falcato@gmail.com>
-
- Feb 15, 2023
-
-
Ard Biesheuvel authored
The ARM memory region types with the NONSECURE qualification should only be used in places where this makes a difference, i.e., in the secure world. The Marvell firmware generally runs at EL2, which is non-secure only (in ARM v8.0) so the NONSECURE marking is unnecessary here, and should be dropped. Signed-off-by:
Ard Biesheuvel <ardb@kernel.org> Reviewed-by:
Leif Lindholm <quic_llindhol@quicinc.com>
-
Ard Biesheuvel authored
BeagleBoard is the only user of the so-called 'PE/COFF protocol', which just exposes the PE/COFF loader library API via a protocol, presumably to avoid duplicating this code in the PrePi SEC component as well as the DXE core. This is a rather questionable practice, and it would be better to drop this code so we can remove it from the EDK2 main repo as well. Signed-off-by:
Ard Biesheuvel <ardb@kernel.org> Reviewed-by:
Leif Lindholm <quic_llindhol@quicinc.com>
-
- Feb 10, 2023
-
-
Michael Kubacki authored
Updates the Standalone MM module to have the necessary INF changes to build with the following two recent commits made to rewrite the the variable store header in the MM SPI FVB service. - e95c7988 - 88d44c56 Cc: Ashraf Ali S <ashraf.ali.s@intel.com> Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Rangasai V Chaganty <rangasai.v.chaganty@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Chasel Chiu <chasel.chiu@intel.com> Signed-off-by:
Michael Kubacki <michael.kubacki@microsoft.com> Reviewed-by:
Isaac Oram <isaac.w.oram@intel.com> Reviewed-by:
Chasel Chiu <chasel.chiu@intel.com>
-
xianglai li authored
Fix the compilation description error in the Readme file. Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Bibo Mao <maobibo@loongson.cn> Cc: Chao Li <lichao@loongson.cn> Cc: Leif Lindholm <quic_llindhol@quicinc.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Michael D Kinney <michael.d.kinney@intel.com> Signed-off-by:
xianglai li <lixianglai@loongson.cn> Reviewed-by:
Chao Li <lichao@loongson.cn>
-
- Feb 09, 2023
-
-
Chasel Chiu authored
Platform may implement an additional NVS region following Regular variable region and in this case SpiFvbService should include both region size when calculating the total NVS region size. The PcdFlashNvStorageAdditionalSize is for compatible with legacy usages that should be deprecated. The new usage model should define separate regions without implicit connections to UEFI Variable or FTW regions. Example NVS flash map for such legacy usage: Note: PcdFlashNvStorageAdditionalSize is equal to platform PcdFlashFvNvStorageEventLogSize. --------------- |UEFI Variable| --------------- |EventLog | <= this is Additional NVS region --------------- |FTW Working | --------------- |FTW Spare | --------------- Cc: Ashraf Ali S <ashraf.ali.s@intel.com> Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Rangasai V Chaganty <rangasai.v.chaganty@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Michael Kubacki <michael.kubacki@microsoft.com> Signed-off-by:
Chasel Chiu <chasel.chiu@intel.com> Reviewed-by:
Michael Kubacki <michael.kubacki@microsoft.com> Reviewed-by:
Isaac Oram <isaac.w.oram@intel.com>
-
Chasel Chiu authored
When invalid VariableStore FV header detected, current SpiFvbService will erase both FV and VariableStore headers from flash, however, it will only rewrite FV header back and cause invalid VariableStore header. This patch adding the support for rewriting both FV header and VariableStore header when VariableStore corruption happened. The Corrupted variable content should be taken care by FaultTolerantWrite driver later. Platform has to set PcdFlashVariableStoreType to inform SpiFvbService which VariableStoreType should be rewritten. Cc: Ashraf Ali S <ashraf.ali.s@intel.com> Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Rangasai V Chaganty <rangasai.v.chaganty@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Michael Kubacki <michael.kubacki@microsoft.com> Signed-off-by:
Chasel Chiu <chasel.chiu@intel.com> Reviewed-by:
Michael Kubacki <michael.kubacki@microsoft.com> Reviewed-by:
S, Ashraf Ali <ashraf.ali.s@intel.com> Reviewed-by:
Isaac Oram <isaac.w.oram@intel.com>
-
Isaac Oram authored
V1: Make the Windows build example current working directory based instead of arbitrary. V2: Fix case mismatch in edk2 repo local name. Cc: Sai Chaganty <rangasai.v.chaganty@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Rebecca Cran <quic_rcran@quicinc.com> Signed-off-by:
Isaac Oram <isaac.w.oram@intel.com> Reviewed-by:
Rebecca Cran <rebecca@quicinc.com>
-
- Feb 08, 2023
-
-
Savva Mitrofanov authored
We need to free SymlinkTmp before exiting if SymlinkSizeTmp != ReadSize condition is true. Reported-by:
Marvin Häuser <mhaeuser@posteo.de> Cc: Pedro Falcato <pedro.falcato@gmail.com> Cc: Vitaly Cheptsov <vit9696@protonmail.com> Fixes: e81432fb ("Ext4Pkg: Add symbolic links support") Signed-off-by:
Savva Mitrofanov <savvamtr@gmail.com> Reviewed-by:
Marvin Häuser <mhaeuser@posteo.de> Reviewed-by:
Pedro Falcato <pedro.falcato@gmail.com>
-
Savva Mitrofanov authored
The directory entry name conventions forbid having null-terminator symbols in its body and can lead to undefined behavior conditions and crashes Cc: Marvin Häuser <mhaeuser@posteo.de> Cc: Pedro Falcato <pedro.falcato@gmail.com> Cc: Vitaly Cheptsov <vit9696@protonmail.com> Fixes: 89b2bb0d ("Ext4Pkg: Fix and clarify handling regarding non-utf8 dir entries") Signed-off-by:
Savva Mitrofanov <savvamtr@gmail.com> Reviewed-by:
Pedro Falcato <pedro.falcato@gmail.com> Reviewed-by:
Marvin Häuser <mhaeuser@posteo.de>
-
Savva Mitrofanov authored
Accessing array using index of uint64 type makes MSVC compiler to include `__allmul` function in NOOPT which is not referenced in IA32. So we null-terminate the string using ReadSize, which should be equal to SymlinkSizeTmp after correct reading. Also add missing MultU64x32 in Ext4Read. Cc: Marvin Häuser <mhaeuser@posteo.de> Cc: Pedro Falcato <pedro.falcato@gmail.com> Cc: Vitaly Cheptsov <vit9696@protonmail.com> Fixes: 7c46116b ("Ext4Pkg: Add ext2/3 support") Fixes: e81432fb ("Ext4Pkg: Add symbolic links support") Signed-off-by:
Savva Mitrofanov <savvamtr@gmail.com> Reviewed-by:
Marvin Häuser <mhaeuser@posteo.de> Reviewed-by:
Pedro Falcato <pedro.falcato@gmail.com>
-
Savva Mitrofanov authored
Missing EFI_OUT_OF_RESOURCES exit status on failed Ext4CreateDentry leads to NULL-pointer dereference in Ext4GetFileInfo (passing NULL buffer in Ext4ReadDir) Cc: Marvin Häuser <mhaeuser@posteo.de> Cc: Pedro Falcato <pedro.falcato@gmail.com> Cc: Vitaly Cheptsov <vit9696@protonmail.com> Fixes: 21b18538 ("Ext4Pkg: Add a directory entry tree.") Signed-off-by:
Savva Mitrofanov <savvamtr@gmail.com> Reviewed-by:
Pedro Falcato <pedro.falcato@gmail.com> Reviewed-by:
Marvin Häuser <mhaeuser@posteo.de>
-
Savva Mitrofanov authored
Missing check in some cases leads to failed StrCpyS call in Ext4GetVolumeLabelInfo. Also correct condition that checks Inode pointer for being NULL in Ext4AllocateInode Cc: Marvin Häuser <mhaeuser@posteo.de> Cc: Pedro Falcato <pedro.falcato@gmail.com> Cc: Vitaly Cheptsov <vit9696@protonmail.com> Fixes: cfbbae59 ("Ext4Pkg: Add handling of EFI_FILE_SYSTEM_VOLUME_LABEL GetInfo().") Signed-off-by:
Savva Mitrofanov <savvamtr@gmail.com> Reviewed-by:
Pedro Falcato <pedro.falcato@gmail.com> Reviewed-by:
Marvin Häuser <mhaeuser@posteo.de>
-
Savva Mitrofanov authored
This check already present in the while loop below, but absent for cases when input file is nameless, so to handle assertion in Ext4ReadFile we need to add it at the top of function Cc: Marvin Häuser <mhaeuser@posteo.de> Cc: Pedro Falcato <pedro.falcato@gmail.com> Cc: Vitaly Cheptsov <vit9696@protonmail.com> Fixes: d9ceedca ("Ext4Pkg: Add Ext4Dxe driver.") Signed-off-by:
Savva Mitrofanov <savvamtr@gmail.com> Reviewed-by:
Pedro Falcato <pedro.falcato@gmail.com> Reviewed-by:
Marvin Häuser <mhaeuser@posteo.de>
-
Savva Mitrofanov authored
Correct multiplication overflow check code and add additional check for emptiness of number of blocks and block number. Cc: Marvin Häuser <mhaeuser@posteo.de> Cc: Pedro Falcato <pedro.falcato@gmail.com> Cc: Vitaly Cheptsov <vit9696@protonmail.com> Fixes: d9ceedca ("Ext4Pkg: Add Ext4Dxe driver.") Signed-off-by:
Savva Mitrofanov <savvamtr@gmail.com> Reviewed-by:
Marvin Häuser <mhaeuser@posteo.de> Reviewed-by:
Pedro Falcato <pedro.falcato@gmail.com>
-
Savva Mitrofanov authored
Missing check for wrong s_log_block_size exponent leads to shift out of bounds. Limit block size to 2 MiB Cc: Marvin Häuser <mhaeuser@posteo.de> Cc: Pedro Falcato <pedro.falcato@gmail.com> Cc: Vitaly Cheptsov <vit9696@protonmail.com> Fixes: d9ceedca ("Ext4Pkg: Add Ext4Dxe driver.") Signed-off-by:
Savva Mitrofanov <savvamtr@gmail.com> Reviewed-by:
Pedro Falcato <pedro.falcato@gmail.com> Reviewed-by:
Marvin Häuser <mhaeuser@posteo.de>
-
Savva Mitrofanov authored
We need to validate inode number to prevent reading non-existent and incorrect inodes so we checks that inode number valid across opened partition before we read it in Ext4ReadInode. Cc: Marvin Häuser <mhaeuser@posteo.de> Cc: Pedro Falcato <pedro.falcato@gmail.com> Cc: Vitaly Cheptsov <vit9696@protonmail.com> Fixes: d9ceedca ("Ext4Pkg: Add Ext4Dxe driver.") Signed-off-by:
Savva Mitrofanov <savvamtr@gmail.com> Acked-by:
Marvin Häuser <mhaeuser@posteo.de>
-
Savva Mitrofanov authored
Superblock s_inodes_per_group field can't be zero, it leads to division by zero in BlockGroup routine Ext4ReadInode Cc: Marvin Häuser <mhaeuser@posteo.de> Cc: Pedro Falcato <pedro.falcato@gmail.com> Cc: Vitaly Cheptsov <vit9696@protonmail.com> Fixes: d9ceedca ("Ext4Pkg: Add Ext4Dxe driver.") Signed-off-by:
Savva Mitrofanov <savvamtr@gmail.com> Reviewed-by:
Pedro Falcato <pedro.falcato@gmail.com> Reviewed-by:
Marvin Häuser <mhaeuser@posteo.de>
-
Savva Mitrofanov authored
We need to check EXT4_FEATURE_RO_COMPAT_METADATA_CSUM in the FeatureRoCompat field instead of FeaturesCompat. The proper way to do this is to use macro EXT4_HAS_METADATA_CSUM. Also, replace the EXT4_FEATURE_INCOMPAT_CSUM_SEED check with predefined macro EXT4_HAS_INCOMPAT Cc: Marvin Häuser <mhaeuser@posteo.de> Cc: Pedro Falcato <pedro.falcato@gmail.com> Cc: Vitaly Cheptsov <vit9696@protonmail.com> Fixes: d9ceedca ("Ext4Pkg: Add Ext4Dxe driver.") Signed-off-by:
Savva Mitrofanov <savvamtr@gmail.com> Reviewed-by:
Pedro Falcato <pedro.falcato@gmail.com> Reviewed-by:
Marvin Häuser <mhaeuser@posteo.de>
-
Savva Mitrofanov authored
We need to free buffer on return if BlockRemainder != 0. Also changed return logic from function to use use common exit to prevent code duplication. Cc: Marvin Häuser <mhaeuser@posteo.de> Cc: Pedro Falcato <pedro.falcato@gmail.com> Cc: Vitaly Cheptsov <vit9696@protonmail.com> Fixes: d9ceedca ("Ext4Pkg: Add Ext4Dxe driver.") Signed-off-by:
Savva Mitrofanov <savvamtr@gmail.com> Reviewed-by:
Pedro Falcato <pedro.falcato@gmail.com> Reviewed-by:
Marvin Häuser <mhaeuser@posteo.de>
-
- Feb 03, 2023
-
-
Ard Biesheuvel authored
Fix the ARM_MPCORE_INFO table and incorporate the DXE driver and test app to the build so that EFI_MP_SERVICES_PROTOCOL can be used and tested on Raspberry Pi 4. Note that the test app is not added to the image - it can be taken from the build directory and executed from the UEFI shell. Signed-off-by:
Ard Biesheuvel <ardb@kernel.org> Acked-by:
Laszlo Ersek <lersek@redhat.com> Reviewed-by:
Rebecca Cran <rebecca@quicinc.com>
-
Nhi Pham authored
To follow new DSU PMU specs, the following changes have been made: - Add a cluster node for each CPM. - Add DSU node to each CPM. Signed-off-by:
Nhi Pham <nhi@os.amperecomputing.com>
-
Vu Nguyen authored
The hob was built but wasn't consumed yet. This change will let the DXE Main shift the memory space consumed by DXE modules to the region specified by the PcdSystemMemoryBase and PcdSystemMemorySize. Signed-off-by:
Nhi Pham <nhi@os.amperecomputing.com>
-
Tinh Nguyen authored
PrePeiCore's Arm module just added a requirement to run all library constructors that PrePeiCore uses. One of them is included in the constructor of the ExtractGuidedSectionLib. This constructor will build a HOB that is not supported "at this time" and causes an error. We don't need to use this constructor because PrePeiCore doesn't really need this library. This is a workaround to avoid PrePeiCore module calling ExtractGuidedSectionLib's constructor. Signed-off-by:
Nhi Pham <nhi@os.amperecomputing.com>
-
Sami Mujawar authored
The NOR Flash driver was recently moved from the Tianocore\edk2 repository to the Tianocore\edk2-platforms repository at the following location: Platform\ARM\Drivers\NorFlashDxe\NorFlashDxe.inf As part of this move the FILE_GUID for the NorFlashDxe.inf at the new location was also updated from: 93E34C7E-B50E-11DF-9223-2443DFD72085 to: DE6AE758-D662-4E17-A97C-4C5964DA4C41 Correspondingly, the device paths for the BootMonFs also requires to be updated in gArmBootMonFsTokenSpaceGuid.PcdBootMonFsSupportedDevicePaths so that the file system is correctly mounted. Therefore, update the BootMonFS device path for the platforms that utilise it. Reported-by:
Sudeep Holla <Sudeep.Holla@arm.com> Signed-off-by:
Sami Mujawar <sami.mujawar@arm.com> Tested-by:
Sudeep Holla <Sudeep.Holla@arm.com>
-
- Jan 30, 2023
-
-
Pedro Falcato authored
We have been hitting many issues with ".." ASSERTing on / in internal code, so make sure that we direct /.. to /. This is safe. Signed-off-by:
Pedro Falcato <pedro.falcato@gmail.com> Cc: Marvin Häuser <mhaeuser@posteo.de> Reported-by:
Savva Mitrofanov <savvamtr@gmail.com> Reviewed-by:
Marvin Häuser <mhaeuser@posteo.de>
-
- Jan 26, 2023
-
-
Marvin Häuser authored
Fix typos discovered by SpellCheck, which were discovered as part of the initial CI enablement effort. Cc: Pedro Falcato <pedro.falcato@gmail.com> Signed-off-by:
Marvin Häuser <mhaeuser@posteo.de> Reviewed-by:
Pedro Falcato <pedro.falcato@gmail.com>
-
Pedro Falcato authored
Previously, the handling was mixed and/or non-existent regarding non utf-8 dirent names. Clarify it. Signed-off-by:
Pedro Falcato <pedro.falcato@gmail.com> Cc: Marvin Häuser <mhaeuser@posteo.de> Reviewed-by:
Marvin Häuser <mhaeuser@posteo.de>
-
Pedro Falcato authored
Several questions have popped up regarding the ext4 directory entry layout and contents off-list. Attempt to clarify these issues by adding some explanatory comments. Signed-off-by:
Pedro Falcato <pedro.falcato@gmail.com> Cc: Marvin Häuser <mhaeuser@posteo.de> Reviewed-by:
Marvin Häuser <mhaeuser@posteo.de>
-
Pedro Falcato authored
Fix an out-of-bounds read inside CompareMem() when checking for "." or ".." by explicitly bounding name_len to [0, 2] beforehand. Reported-by:
Savva Mitrofanov <savvamtr@gmail.com> Fixes: 45e37d85 ("Ext4Pkg: Hide "." and ".." entries from Read() callers.") Cc: Marvin Häuser <mhaeuser@posteo.de> Signed-off-by:
Pedro Falcato <pedro.falcato@gmail.com> Reviewed-by:
Marvin Häuser <mhaeuser@posteo.de>
-
- Jan 19, 2023
-
-
Abdul Lateef Attar authored
defines two PCDs, PcdShellFile and PcdShellFileDesc, which holds the GUID and description of the UEFI shell file to be loaded. A PCDs based solution gives flexibility to the user to load different images, by just overriding the DSC file. The user can load a diagnostic image or test image during PCDBootToShellOnly or later stages. Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Eric Dong <eric.dong@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Signed-off-by:
Abdul Lateef Attar <AbdulLateef.Attar@amd.com> Reviewed-by:
Isaac Oram <isaac.w.oram@intel.com>
-
Abdul Lateef Attar authored
GCC compiler puts the DevicePath PCDs to the read-only section. During boot if try to process the device path after PtrGetPtr it throws a page fault exception. Hence making a local copy using DuplicateDevicePath() to avoid the page fault exception. Cc: Isaac Oram <isaac.w.oram@intel.com> Cc: Eric Dong <eric.dong@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Signed-off-by:
Abdul Lateef Attar <abdattar@amd.com> Reviewed-by:
: Isaac Oram <isaac.w.oram@intel.com>
-
- Jan 18, 2023
-
-
Isaac Oram authored
This contains binary interface changes and requires FSP 4.2.0.2A or later Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Chasel Chiu <chasel.chiu@intel.com> Signed-off-by:
Isaac Oram <isaac.w.oram@intel.com> Reviewed-by:
Nate DeSimone <nathaniel.l.desimone@intel.com>
-
Isaac Oram authored
This contains binary interface changes and requires FSP 4.2.0.2A or later Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Chasel Chiu <chasel.chiu@intel.com> Signed-off-by:
Isaac Oram <isaac.w.oram@intel.com> Reviewed-by:
Nate DeSimone <nathaniel.l.desimone@intel.com>
-