- Dec 27, 2018
-
-
sughoshg authored
The ArmMmCommunication module is used for communication between non-secure and secure world using Arm's Management Mode Specification. Enable this module on Sgi platforms. This would be used subsequently by the RAS and SecureBoot features, support for which is to be added on the platform. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Sughosh Ganu <sughosh.ganu@arm.com> Reviewed-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org>
-
sughoshg authored
Add memory regions for MmCommuncate buffers into the virtual memory table. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Sughosh Ganu <sughosh.ganu@arm.com> Reviewed-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org>
-
sughoshg authored
Add the build infrastructure for compilation of StandaloneMm image files and FD file. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Sughosh Ganu <sughosh.ganu@arm.com> Reviewed-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org>
-
- Dec 20, 2018
-
-
Ard Biesheuvel authored
The FVP models expose several emulated serial ports, and always start with Xterm windows connected to at least two of them. So let's switch to the second one for DEBUG output, leaving the original one for console output via SerialDxe. Note that explicit SerialPortWrite() calls made from other modules will now also end up on the DEBUG console. Conversely, DEBUG output generated in the context of SerialDxe will end up on the primary serial console. This is a fundamental consequence of the way DEBUG() that is built on top of SerialPortWrite(), which can only be implemented in one way in each module (but can differe between modules, hence this patch) Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
On the FVP Foundation model, the SP805 watchdog appears to be 'wired' incorrectly, resulting in a watchdog counter that decrements at the APB clock rate of 24 MHz instead of the usual 32 kHz. Since the timer start value is only 32-bits wide, this makes the watchdog unusable in UEFI, since the default timeout set by the DXE core is 5 minutes, which is not representable in 32-bit at this clock rate. So switch to the SBSA watchdog instead, which is wired up to the generic timer, and ticks at the correct rate. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Sumit Garg authored
This driver uses OpteeLib to interface with OP-TEE based RNG service (pseudo trusted application) to implement EFI_RNG_PROTOCOL that is used to seed kernel entropy pool. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Sumit Garg <sumit.garg@linaro.org> Reviewed-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org>
-
- Dec 19, 2018
-
-
Ard Biesheuvel authored
Remove the DO_CAPSULE conditionals so that the capsules are always built. This fixes a build issue that exists currently, since the IPv6 enabled version of IScsiDxe that we now include depends on a library class that can only be resolved if building with DO_CAPSULE=TRUE. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Vijayenthiran Subramaniam authored
SgiClark Helios include an instance of the virtio network device. Add a representation for it in the ACPI tables. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Vijayenthiran Subramaniam <vijayenthiran.subramaniam@arm.com> Reviewed-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org>
-
Vijayenthiran Subramaniam authored
Use PCDs instead of hardcoded values for virtio disk in DSDT. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Vijayenthiran Subramaniam <vijayenthiran.subramaniam@arm.com> Reviewed-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org>
-
Vijayenthiran Subramaniam authored
Use PCDs instead of hardcoded values for virtio disk in DSDT. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Vijayenthiran Subramaniam <vijayenthiran.subramaniam@arm.com> Reviewed-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org>
-
Daniil Egranov authored
SGI575 include an instance of the virtio network device. So add a representation for it in the ACPI tables. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Daniil Egranov <daniil.egranov@arm.com> Reviewed-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org>
-
Daniil Egranov authored
Use PCDs instead of hardcoded values for virtio disk in DSDT. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Daniil Egranov <daniil.egranov@arm.com> Reviewed-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org>
-
Daniil Egranov authored
Add support for virtio net device by adding PCDs to specify the data required to setup the virtio net device and register it. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Daniil Egranov <daniil.egranov@arm.com> Reviewed-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org>
-
Daniil Egranov authored
SGI platforms support multiple virtio devices. So the existing code, that supports registration of only the virtio disk, is restructured to accommodate the registration of additional virtio devices. In addition to this, PCDs to represent the virtio controller base and address space size are introduced. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Daniil Egranov <daniil.egranov@arm.com> Reviewed-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org>
-
Leif Lindholm authored
ArmPkg PcdArmLinuxFdtMaxOffset and PcdArmLinuxFdtAlignment are still referenced in StyxDtbLoaderLib.inf, but not actually used anywhere - so drop them. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Leif Lindholm <leif.lindholm@linaro.org> Reviewed-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org>
-
- Dec 13, 2018
-
-
Ard Biesheuvel authored
Align the ACPI platform driver with the DT patching code, which only enables the IPMI/KCS device node on B1 silicon (or later). Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
Now that all code references the PCD instead, let's drop the macro from all Styx platforms. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
Get rid of the CPP conditionals, and use the new boolean PCD for KCS support instead. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
Move the IPMI/KCS device node from the DSDT into its own SSDT, and only install it if we have support for KCS enabled in the platform. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
In order to get rid of another CPP macro, introduce a boolean PCD that we will set in the platform to enable IPMI/KCS support. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
Now that all code relies on the PCD rather than the DO_XGBE macro, get rid of it. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
We already have a boolean PCD that tells us whether XGBE support should be enabled, so use it instead of C preprocessor conditionals. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
We already have a boolean PCD that tells us whether XGBE support should be enabled, so use it instead of C preprocessor conditionals. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
We already have a boolean PCD that tells us whether XGBE support should be enabled, so use it instead of C preprocessor conditionals. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
Remove the references to the XGBE SNP drivers, which are inside a !ifdef() that never gets enabled anyway. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
The I/O Remapping Table (IORT) does not require that each device of which it describes the I/O remapping actually exists in the namespace. So let's simplify the code by always including the XGBE nodes, and just let them be unused if the platform does not include XGBE controllers. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
- Dec 11, 2018
-
-
Nariman Poushin authored
Openssl is fetched as a git submodule, so make sure git clone --recursive is specified in the instructions to fetch a full source tree. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Nariman Poushin <nariman.poushin@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
Instead of incorporating the prebuilt device tree binary as a FREEFORM FFS file into the build, define a module that contains the source so that the device tree compiler is invoked at build time. The original .dts file is moved into the new module, and cleaned up a little so that explicit phandle properties are dropped, and unused clocks and other redudant pieces are removed as well. The existing prebuilt binary is deleted. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
Enable the various bits and pieces that implement IPv6 networking and HTTP/HTTPS boot from UEFI. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
Replace the default resolution of the DevicePathLib library with the version that invokes the DevicePathDxe protocol driver, which was created to avoid having to carry a copy of the entire library in each module. Note that this driver itself incorporates on the NULL PcdLib instance, to avoid creating a circular dependency on the PCD DXE driver. The driver itself nor the DXE core can depend on the protocol, so they keep using the library directly. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
Instead of relying on the compiler command line to pass the value of NUM_CORES as a preprocessor define, use the value of the PcdCoreCount PCD that we already set in the platform .DSC. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
The define ARM_CPU_AARCH64 is only tested once, in the SMBIOS driver, to decide whether to emit 'v8' or 'v7' as processor architecture. However, this platform has no 32-bit addressable DRAM, and so it cannot be built or executed in 32-bit mode anyway, making the test rather pointless. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
The PCDs containing the default MAC addresses are of type UINT64, and so the byte order needs to be inverted. As they are currently, both default MAC addresses are invalid since they have the multicast bit set. For readability, let's switch to a VOID* type PCD while at it. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Marcin Wojtas authored
Recent changes in EDK2 resulted in compilation break of all Marvell platforms, because the applications include deprecated ShellBase.h header. Fix that. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Marcin Wojtas <mw@semihalf.com> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
The MADT generation code is rather unpolished and overcomplicated, and rewrites most of the table with information that is known statically at build time, with the exception of which CPUs are actually online. So remove all the runtime generation code, and replace it with a simple loop that sets the 'enabled' flag on each CPU that is reported as present by the secure firmware. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
ACPI table support on Seattle is split into two parts for no good reason: AcpiPlatformDxe and AmdStyxAcpiLib. Let's merge them together, and clean up the code that iterates over the tables and installs them. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
Set the GOP resolution to 0x0 so that the resolution will be chosen by the driver, usually based on the capabilities of the connected display. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
Enable the 'acpiview' UEFI shell command so we can inspect the ACPI tables at boot time. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
Instead of emitting the DSDT by incorporating the intermediate output of [some version of] the iasl compiler, move the DSDT source file to the ACPI platform driver, which will install it directly. This permits us to drop a lot of cruft related to handling of this intermediate output. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-
Ard Biesheuvel authored
Move the XGBE out of the DSDT, and along with it the logic that patches the correct MAC address into the device nodes. However, this time we patch the SSDT binary directly rather than relying on intermediate output of an outdated version of the iasl compiler. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by:
Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by:
Leif Lindholm <leif.lindholm@linaro.org>
-