Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/unikraft/unikraft

A next-generation cloud native kernel designed to unlock best-in-class performance, security primitives and efficiency savings.
https://github.com/unikraft/unikraft

lib/nolibc: Add `__errno_location` implementation

At link time, objects such as the ones derived from `gcov` which comes
with `gcc-13` require thi...

e4a6712e82d64fb9483a14fff99fe3292b30f1bf authored over 1 year ago by Eduard Mihailescu <[email protected]>
lib: Remove dirent64-related build warnings

Using Musl and the dirent64 structure causes build warnings. This is
because certain source code...

018fe1a4c408a2ca41beac79af95d7f2ef5794bf authored over 1 year ago by Tiago Andre Goncalves Oliveira <[email protected]>
plat/kvm: Fix typo in configuration variable

Remove a redundant `KVM_` in order to reference `KVM_KERNEL_SERIAL_CONSOLE`
when deciding if a s...

4cce8306abb8191d96ce2c14c72623db934eaa6d authored over 1 year ago by Robert Kuban <[email protected]>
Makefile: Fix support for external platforms

Set `KCONFIG_EPLAT_DIRS` to the list of external platforms `$(P)` instead
of `$(E)`, which is no...

30f63e93b1965d6c823eaa8b28f90733d9771975 authored over 1 year ago by Robert Kuban <[email protected]>
plat: Migrate VIRTIO headers to drivers/virtio/

Migrate include folder to the newly introduced VIRTIO drivers
subsystem.

Signed-off-by: Rares M...

3ed241395a73db624fe3f514c8ad1fdae237313b authored over 1 year ago by Rares Miculescu <[email protected]>
plat: Migrate VIRTIO 9P driver to drivers/virtio/

Migrate the VIRTIO 9P driver to the newly introduced VIRTIO drivers
subsystem.

Signed-off-by: R...

6454bd641cf296099567777e7da19da24ba883ab authored over 1 year ago by Rares Miculescu <[email protected]>
plat: Migrate VIRTIO BUS driver to drivers/virtio/

Migrate VIRTIO BUS driver to the newly introduced VIRTIO drivers
subsystem.

Signed-off-by: Rare...

9c3759a9efb573acf31ed5f6fbdb261536955a00 authored over 1 year ago by Rares Miculescu <[email protected]>
plat: Migrate VIRTIO NET driver to drivers/virtio/

Migrate VIRTIO NET driver to the newly introduced VIRTIO drivers
subsystem.

Signed-off-by: Rare...

40bc6445aa50ba01bf915a1d1aa585cdac2e8467 authored over 1 year ago by Rares Miculescu <[email protected]>
plat: Introduce VIRTIO to drivers subsystem

Introduce VIRTIO to newly introduced drivers subsystem.

Signed-off-by: Rares Miculescu <micules...

8aaa30eb989bb40884be621615b9812eff9bb957 authored over 1 year ago by Rares Miculescu <[email protected]>
plat/kvm: Update `kvm/Config.uk` and `kvm/Makefile.uk`

Remove VIRTIO from `kvm/Makefile.uk` and
update VIRTIO drivers on KVM:

* Enable the VIRTIO PCI ...

3de0f9a0ad7dbaf4c07cbdc21320d19d0a06869b authored over 1 year ago by Rares Miculescu <[email protected]>
plat: Migrate VIRTIO PCI driver to drivers/virtio/

Migrate VIRTIO PCI driver to the newly introduced VIRTIO drivers
subsystem.

Signed-off-by: Rare...

b1cb319360eae71286858645de1a2f78a779d4a1 authored over 1 year ago by Rares Miculescu <[email protected]>
drivers/virtio: Update include guards

Update include guards to the drivers convention.

Signed-off-by: Rares Miculescu <miculescur@gma...

78ddbc6d11d9fa71fd9246910839ead13c6a5122 authored over 1 year ago by Rares Miculescu <[email protected]>
plat: Migrate VIRTIO RING driver to drivers/virtio/

Migrate VIRTIO RING driver to the newly introduced VIRTIO drivers
subsystem.

Signed-off-by: Rar...

b08fd28116496d55488904d52149a035f65b6ed3 authored over 1 year ago by Rares Miculescu <[email protected]>
lib/ukofw: Fix configuration dependencies

Replace `depends on` with `select` for `LIBFDT` to allow
chained dependency resolution.

Signed-...

5d304c915d1f73d22fd8cc15ccdd3e95261d26bf authored over 1 year ago by Rares Miculescu <[email protected]>
drivers/ukbus: Add `HAVE_PCI`

Add `HAVE_PCI` to limit menuconfig PCI options to
platforms that provide this feature.

Signed-o...

c87ecd64c25135fa75d1b643ab889fc2f61822f5 authored over 1 year ago by Rares Miculescu <[email protected]>
plat: Migrate VIRTIO MMIO driver to drivers/virtio/

Migrate VIRTIO MMIO driver to the newly introduced VIRTIO drivers
subsystem.

Signed-off-by: Rar...

d1e3eef4633aa2b9ae58c5aa3ac763c93f352240 authored over 1 year ago by Rares Miculescu <[email protected]>
plat: Migrate VIRTIO BLK driver to drivers/virtio/

Migrate VIRTIO BLK driver to the newly introduced VIRTIO drivers
subsystem.

Signed-off-by: Rare...

52a6ea2aedcef9075ebcb150b25b40c4857e5609 authored over 1 year ago by Rares Miculescu <[email protected]>
drivers/virtio: Add `VIRTIO_DEVICE`

Create `VIRTIO_DEVICE` to avoid typing all devices one by one.

Signed-off-by: Rares Miculescu <...

631b4f96f974dd499b2557ac56b2f50074069413 authored over 1 year ago by Rares Miculescu <[email protected]>
lib/9pfs: Add check for `NULL` `data` in `uk_9pfs_parse_options`

The `mount` system call may actually allow ignoring the `data`
argument depending on the usecase...

4166fbe6f363908ccbc0fb58ac37a3e748aed6ea authored over 1 year ago by Sergiu Moga <[email protected]>
lib/9pfs: Remove `__unused` from `uk_9pfs_parse_options`'s `data`

Since `uk_9pfs_parse_options` actually processes `data` it is actually
used, so remove this fals...

7b3da8e85e5c5ef875c9bc10c704f4a98df0a5ee authored over 1 year ago by Sergiu Moga <[email protected]>
arch/ctx.h: Update ctx members declaration order

Out-of-order designated initialization is not allowed in C++, so change
the `ctx` declaration or...

64e5443f3fee471c12b017cbd26b39c6b342417c authored over 1 year ago by Stefan Jumarea <[email protected]>
doc: Add KIT to ADOPTERS.md

Signed-off-by: Lukas Werling <[email protected]>
Reviewed-by: Razvan Deaconescu <razvand@uni...

a45354b42b3295a91be7474fd42335890e0f0d5c authored over 1 year ago by Lukas Werling <[email protected]>
drivers/ukbus/pci: Memset dummy_imask using size not element count

The call of memset in the initialization of dummy_imask in the fdt
irq parser of pci_ecam would ...

b5c68c8e70b09ce47bec66afe00f767fb3e42947 authored over 1 year ago by Michalis Pappas <[email protected]>
plat: Migrate the platform bus driver to drivers/ukbus/

Migrate the platform bus driver to the newly introduced ukbus drivers
subsystem.

Notice that th...

ee3c3af2b90e45055214d6c20bcfc88d7d982ba2 authored over 1 year ago by Michalis Pappas <[email protected]>
plat/kvm: Enable the PCI driver by default

Enable LIBUKBUS_PCI on all KVM VMMs. That will be eventually replaced
by VIRTIO_PCI, yet we add ...

972443db8fc4b9c3357a4c0f754aa6d13bdd2455 authored over 1 year ago by Michalis Pappas <[email protected]>
drivers/ukbus/pci: Fix checkpatch styling issues

Fix some coding style issues reported by checkpatch
about space after cast on arm64.

Signed-off...

64262774d88a7cfd32ac122b78f07baef91f237f authored over 1 year ago by Michalis Pappas <[email protected]>
drivers/ukbus/pci: Fix result check of drv->add_dev() operation

Fix a bug in pci_ecam where a check against the result of drv->add_dev()
would happen outside th...

aab41b3957af7b592ba3adc1dc10f54614579414 authored over 1 year ago by Michalis Pappas <[email protected]>
plat: Migrate PCI bus driver to drivers/ukbus/

Introduce the ukbus drivers subsystem and migrate the PCI driver from
plat/common.

Notice that ...

ea5bb92ed57903cead17298319de76d67c9f7f30 authored over 1 year ago by Michalis Pappas <[email protected]>
drivers/ukbus/pci: Update include guards

Update include guards to the drivers conventions and add guards for
linkage with C++.

Signed-of...

c0830eed178adae369fcd79802aef7c6860c9482 authored over 1 year ago by Michalis Pappas <[email protected]>
drivers: Update includes to the new PCI bus driver headers path

With the PCI driver being migrated to the ukbus drivers subsystem
its headers path and names hav...

129714cd7be8a5e11355ee055ae3be4ceb1f417c authored over 1 year ago by Michalis Pappas <[email protected]>
plat/kvm: Enable the platform bus by default on arm64

Enable the platform bus driver on all KVM VMMs for arm64.

Signed-off-by: Michalis Pappas <micha...

334251f2bb067f38ed0efec5087aec04a90fbf5a authored over 1 year ago by Michalis Pappas <[email protected]>
plat/kvm: Update Kconfig options to use LIBUKBUS_PCI

The migration of PCI to the drivers subsystem has caused the update
of its Kconfig options accor...

b74e7f8f166ebc20f65d09d63c26334e49dc6673 authored over 1 year ago by Michalis Pappas <[email protected]>
drivers/ukbus/platform: Update include guards

Update include guards to the drivers convention and add guards for
linkage with C++.

Signed-off...

9fc1ae9a448fe22a5cd9de7edbcf38e4550b3201 authored over 1 year ago by Michalis Pappas <[email protected]>
drivers: Update includes to the new platform bus headers path

With the platform bus driver being migrated to the ukbus drivers subsystem
its headers path and ...

2815208c6aec9813dd5cc4496e466bd763a4cbcb authored over 1 year ago by Michalis Pappas <[email protected]>
drivers: Move GIC to drivers/ukintctlr

Migrate GIC to newly introduced drivers subsystem.

Signed-off-by: Rares Miculescu <miculescur@g...

0014cf34ec27ad2ec5afb156328ce98cef764481 authored over 1 year ago by Rares Miculescu <[email protected]>
lib: Add ukintctlr as library

Move the API from `plat/kvm/` into `lib/`.

Signed-off-by: Rares Miculescu <[email protected]...

0913cc341699636ba1be3b7fa3a830edfc1c76b8 authored over 1 year ago by Rares Miculescu <[email protected]>
plat: Move GIC from plat/drivers

Migrate GIC to newly introduced drivers subsystem.

Signed-off-by: Rares Miculescu <miculescur@g...

245a68292a40ccb35f56ea8023c824fba39189e5 authored over 1 year ago by Rares Miculescu <[email protected]>
build: Fix stdout descriptor duplication in config-submenu.sh on linux

The original way to duplicate stdout to a new file descriptor fails on
Ubuntu 22.04 with error:
...

bc8285577076fe75838b055a5dc2a41c1b593beb authored over 1 year ago by Michalis Pappas <[email protected]>
build: Introduce drivers subsystem

This commit adds a drivers subsystem to Unikraft. Drivers are placed
under the top-level `driver...

a58a56e89371069a0096f9c741980024efcf4594 authored over 1 year ago by Michalis Pappas <[email protected]>
lib/ukofw: Move ofw into lib/

Move ofw driver from plat/drivers to lib/ukofw.
Create and update configuration files for migrat...

2ebfa32b8cf758f19fbdb8ee5c06a433b6eb85e6 authored over 1 year ago by Rares Miculescu <[email protected]>
plat: Move ofw from plat/drivers/

Move ofw driver from plat/drivers/ into lib/.
Update files that depend on headers from the drive...

b7c584fe2973687de5a94adf2d9f7591259dd93d authored over 1 year ago by Rares Miculescu <[email protected]>
Release: v0.14.0 Atlas

Signed-off-by: Razvan Deaconescu <[email protected]>
Signed-off-by: Marc Rittinghaus <marc@uni...

70bc0af0bd1c74b3af3c0584d7b7373dc42b2ce7 authored over 1 year ago by Razvan Deaconescu <[email protected]>
lib/uknetdev: Collect stats and export via uk_store

Collect per-interface statistics and export them as dynamic
uk_store objects.

Signed-off-by: Ce...

fd6738104b7d0c4bc54437bc1c75ac91b8e46bfc authored over 1 year ago by Michalis Pappas <[email protected]>
lib/ukalloc: Remove deprecated cookie parameter from static entry definitions

Update calls to UK_STORE_STATIC_ENTRIES to remove the deprecated
cookie parameter.

Signed-off-b...

6717c2b25539e9df6466934ee240137f6b26224d authored over 1 year ago by Michalis Pappas <[email protected]>
lib/ukstore: Lookup entries by id

Introduce an id property to uk_store entries and replace name with id
on lookup operations, to a...

737b68420620b84c54a9539cee0fd87fbff8eba0 authored over 1 year ago by Michalis Pappas <[email protected]>
lib/ukstore: Remove cookie from static entries

Remove cookie from static uk_store entries. This is in anticipation of
dynamic entries that prov...

1de9465d9dc1a0aadab30ad9cc41ab04e5a83f61 authored over 1 year ago by Michalis Pappas <[email protected]>
lib/ukalloc: Add entry IDs and update static entry definitions

Introduce header for definitions related to uk_store. Add
entry IDs for stats tracked by uk_allo...

2f10c56561a904357c7785fac450ddee4120607a authored over 1 year ago by Michalis Pappas <[email protected]>
lib/ukstore: Add README.md

Signed-off-by: Michalis Pappas <[email protected]>
Reviewed-by: Simon Kuenzer <simon@unikraft...

3026583ac4e577eaf006eeaf79f659001d0f3e8a authored over 1 year ago by Michalis Pappas <[email protected]>
lib/ukstore: Introduce dynamic API

This commit adds dynamic entry support to uk_store. Libraries can
dynamically register uk_store ...

c3c660851fb6f91ddc65e396ab6dec17b1fe6f32 authored over 1 year ago by Cezar Craciunoiu <[email protected]>
plat/drivers/virtio: Fix virtio_9p tag read

Swap the last two arguments of virtio_9p_feature_negotiate's first
call to virtio_config_get. As...

21511f461de1a786786a4e83eca4cef8f48d683b authored over 1 year ago by Xingjian Zhang <[email protected]>
lib/posix-environ: Remove unused variable warnings

If an environment variable is not set, the
`DECLARE_LIBPOSIX_ENVIRON_ENV_VAR` macros end up decl...

4a5d17337ad24d9fbc00321401bdfca368e6c940 authored over 1 year ago by Sergiu Moga <[email protected]>
plat/kvm/x86: Ensure that lxboot initrd/cmdl regions are aligned

All memory region descriptors must be aligned. Therefore, ensure
that the initrd and command-lin...

65ba7213e3732ccdecd1ee7db6f1cbddb131277c authored over 1 year ago by Sergiu Moga <[email protected]>
support/qemu-guest: Workaround for TCG/x86 and Unikraft paging

Limits QEMU PC machine model up to version 7.0 (pc-i440fx-7.0) for
x86. This is primarily done t...

a0d33c97606fa10f4b0d0e12fabc52bc3146fd6a authored over 1 year ago by Simon Kuenzer <[email protected]>
lib/vfscore: Remove readdir_r result from TLS

The `result` structure of the `readdir_r` function will not need to be
part of the TLS, the `ent...

43ee3b3930d9a6d05fafc1f08d16d3be3480a3e3 authored over 1 year ago by Stefan Jumarea <[email protected]>
lib/vfscore: Add non-largefile variant for dirent

Unikraft defines the `dirent` structure as identical to `dirent64`.
This works fine if not using...

2ea08f394205f703e926df6b974d24865a8b1b58 authored over 1 year ago by Stefan Jumarea <[email protected]>
plat/kvm/arm: Use length when clean/invalidating cache in `KVM` entry

Fix second argument of [clean_and_]invalidate_dcache_range in `KVM`
entry to use the length of t...

796b246902a32d5bd76ba0f6f69ec2f0d521d12d authored over 1 year ago by Sergiu Moga <[email protected]>
plat/drivers: Add two configurations to ns16550

The register shift of ns16550 is hard-coded in the driver, but it does
not match the hardware on...

df423aa25ec0e1f4a6dfd2f969fb43f684ec8667 authored over 1 year ago by Xingjian Zhang <[email protected]>
plat/common/arm: Do not use a barrier on every invalidation

The current implementation of clean and invalidate by region uses
a barrier after every cache li...

08db3e412c0a1367d22e7f03d4f98aa46233a6ca authored over 1 year ago by Michalis Pappas <[email protected]>
plat/kvm/arm: Do not clean & invalidate the cache after enabling the MMU

To maximize boot performance we only invalidate the cache for regions
accessed before enabling t...

f8cf67399ab8c5b2cbf4f2a50ebbbd5acfa8c4f5 authored over 1 year ago by Michalis Pappas <[email protected]>
plat/kvm: Do not unconditionally clean and invalidate the cache

The arm64 linux boot protocol provides the requirements for
the system's state before jumping in...

a3c74da53303ff1eab828d2c753a8624fddec7bf authored over 1 year ago by Michalis Pappas <[email protected]>
lib/posix-environ: Ensure that compiled-in strings are writable

Previously, the elements of `__init_env` would be compile-in strings
that would correspond to `C...

ad856986c86b3b4fdf78be76582530c96ec47cb1 authored over 1 year ago by Sergiu Moga <[email protected]>
plat/common: Align TLS sections to PAGE_SIZE

`mkbootinfo.py` takes each ELF segment and aligns it to PAGE_SIZE to
convert it to a `struct ukp...

968b68f343c0971f486b42a31239301ed8daacd9 authored over 1 year ago by Sergiu Moga <[email protected]>
plat/kvm: Enable 8250 / NS16550

Update the KVM configuration to enable the 8250 / NS16550 UART driver.
This driver is selected w...

e3e1cb63f0311d6c3c1ed6b7f0468f8ac51580fb authored over 1 year ago by Michalis Pappas <[email protected]>
plat/kvm: Check return code of all memory region inserting methods

Make sure that we do check the return codes of all of the memory region
inserting methods so tha...

62827fe30c0954fc2f4fb3d81fe86fd3db5599ab authored over 1 year ago by Sergiu Moga <[email protected]>
build: Adjust fixdep to the changed config.h location

PR unikraft/unikraft#1034 moved the header to a different location, causing
full rebuilds for ev...

5056034b699e6349263ed55d2bb358bde2d0c2fa authored over 1 year ago by Marco Schlumpp <[email protected]>
plat/common: Increase granularity of hardcoded legacy high memory

To ensure compatibility with boot protocols that do report the
BIOS System Memory region as a re...

97525927ab1a0ab1721c283d2770fc09fc5ed0f0 authored over 1 year ago by Sergiu Moga <[email protected]>
plat/kvm/arm: Fix default choice in arm64 VMM menu

Fix the default selection of the VMM in Config.uk. Kconfig requires
that the default is defined ...

38d565587d9d4c7bc2532b73a4bc01b1189b8588 authored over 1 year ago by Michalis Pappas <[email protected]>
build: Use -fcf-protection for GCC >= 8 or Clang >= 7

Signed-off-by: Andrei Tudor TOPALĂ <[email protected]>
Reviewed-by: Maria Sfiraiala <maria...

bc9a34657b02a40900826fcf707849292e4fba7a authored over 1 year ago by Andrei Tudor TOPALĂ (101668) <[email protected]>
plat/kvm/arm: Fix bootstack base alignment on arm64

280c69559 introduces a regression to the alignment of the
bootstack. Update __libkvmplat_entry t...

51fbc908f270f6f76d4cd6aa6f43fa1ad52c3c00 authored over 1 year ago by Michalis Pappas <[email protected]>
plat/common: Add BIOS system memory in legacy high memory region

Previously, `ukplat_memregion_list_insert_legacy_hi_mem` did not
include the `0xf0000 -> 0x10000...

6d7ee0cb12050170081d023bfb56af830ab90d74 authored over 1 year ago by Sergiu Moga <[email protected]>
plat/kvm/x86: Enable relocation for `Firecracker` `PIE` builds

Previously, `PIE` builds for `Firecracker VMM` would fail at runtime
due to the fact that the st...

08ac9820323068c2b0af565976cc29be06563307 authored over 1 year ago by Sergiu Moga <[email protected]>
plat/kvm: Fix guest hang on `UKPLAT_HALT` during shutdown request

As soon as
commit 170a8a4fb242 ("plat/kvm/shutdown.c: If on a `UEFI` system, rely on Runtime Ser...

b59c47ac6f16c5796bf00b8ea677ce8fdba0df51 authored over 1 year ago by Sergiu Moga <[email protected]>
plat/kvm/arm: Add pagetables for Firecracker

The memory map of Firecracker on Arm64 is:

0x0000000000000000 - 0x000000007fffffff Devices:...

65aac2e5cc27fac36c33634cdd14c52d1b72970d authored over 1 year ago by Michalis Pappas <[email protected]>
plat/kvm: Enable Firecracker on arm64

Signed-off-by: Michalis Pappas <[email protected]>
Reviewed-by: Sergiu Moga <sergiu@unikraft....

cca7dfd052ff5fcf21f94196ba1f097aa5d9fa7a authored over 1 year ago by Michalis Pappas <[email protected]>
support/scripts: Add script to generate arm64 linux boot header

The Linux arm64 boot protocol [1] prepends the image with a modified
MZ header:

u32 code0; ...

bdeef8585d6a0fcac0075c5619baf2e2bd0fa2f0 authored over 1 year ago by Michalis Pappas <[email protected]>
plat/kvm/arm64: Enable lxboot on arm64

Now that all requirements to support the arm64 linux boot protocol
are implemented, enable CONFI...

47f5056eb29b2c8848f45a4391e096c73656f858 authored over 1 year ago by Michalis Pappas <[email protected]>
plat/common: Populate the initrd bootinfo memreg from dtb

Linux arm64 systems obtain the initrd address from the "linux,initrd-start"
and "linux,initrd-en...

92f2b5ff41eb96cf73fbc693649df956b1c87f17 authored over 1 year ago by Michalis Pappas <[email protected]>
plat/kvm/arm: Obtain dtb address from x0 when using lxboot

According to the arm64 linux boot protocol [1] the address of the
fdt blob is passed on x0. This...

fc0576bc20d18e2cf6af83719bd341b2ac95286d authored over 1 year ago by Michalis Pappas <[email protected]>
plat/common: Generate an arm64 linux image when LXBOOT is enabled

Update Linker.uk to generate a raw binary image prepended with the
arm64 linux boot header when ...

ad562cec28c20854120f52028eac4135be0c5750 authored over 1 year ago by Michalis Pappas <[email protected]>
plat/kvm: Make Kconfig boot protocol option naming consistent

Rename the Kconfig options for QEMU virt and EFI stub to align them
with the rest of boot protoc...

ba7fa25697a62a0190251105f7f12fa71e1ed770 authored over 1 year ago by Michalis Pappas <[email protected]>
plat/kvm: Update entry point for LXBOOT on arm64

Update Linker.uk to use the same entry point for both QEMU_VIRT and
LXBOOT protocols.

Signed-of...

893ae5741522bdabbfaa08bd89597009345e7da0 authored over 1 year ago by Michalis Pappas <[email protected]>
plat/kvm/arm: Move image definitions to init.h

In anticipation of additional platforms and boot protocols
on arm64 move image definitions to a ...

7532827c37ce591c2560b593e19c6a93af6a9d2b authored over 1 year ago by Michalis Pappas <[email protected]>
plat/kvm/arm: Enable enumerating secondary cores through `ACPI`

Allow the existence of two ways to enumerate secondary cores:
`ACPI` and `Devicetree`.

Signed-o...

73f83209f3b1d2eecff9f7e51dc4476f889f5e49 authored over 1 year ago by Sergiu Moga <[email protected]>
plat/drivers/gic: Add a method for fetching the `GICD` from `MADT`

Since this applies for both `GICv2` and `GICv3`, implement a generic
method of fetching the uniq...

625bb7a8e06ef47bad196ff4501e98863be71b08 authored over 1 year ago by Sergiu Moga <[email protected]>
plat/drivers/gic: Remove `fdt` argument from initialization methods

Now that we have separated the ways we probe the `GIC` (`Devicetree`
vs `ACPI`) and the `Devicet...

4ff8a4ee4252d4e518d394a6330657eb4bc61fbe authored over 1 year ago by Sergiu Moga <[email protected]>
plat/kvm/arm: Enable fetching of the `PSCI` method through `ACPI`

Add the alternative of fetching the `PSCI` method from `ACPI`'s
`FADT`'s `ARM Boot Flags` field....

b0aee57ae9ad1503ee7faa58cd5d53d1d168c072 authored over 1 year ago by Sergiu Moga <[email protected]>
plat/drivers/gic: Enable `GICv2` probing through `ACPI`

If `ACPI` is enabled, rely on it for probing the `GICv2`. Thus, we
need to take two steps for th...

3110f3cb863364e193faa49624ea6a81c4d292c7 authored over 1 year ago by Sergiu Moga <[email protected]>
plat: Enable secondary cores allocation through `ACPI` on `ARM64`

Split secondary cores enumeration in two methods:
- if CONFIG_UKPLAT_ACPI is enabled then get th...

0b02ff343b36203d17eb4461f588cadee07e286a authored over 1 year ago by Sergiu Moga <[email protected]>
plat/drivers/gic: Enable `GICv3` probing through `ACPI`

If `ACPI` is enabled, rely on it for probing the `GICv3`. Thus, we
need to take two steps for th...

6f0198f3878784510dc343b1b953221d06d36846 authored over 1 year ago by Sergiu Moga <[email protected]>
build: Explain OPTIMIZE_PIE

Adds an explanation for the OPTIMIZE_PIE configuration option.

Signed-off-by: Simon Kuenzer <si...

2ee5283ff8f6fc4139b3ad5fe841e554bfca1b22 authored over 1 year ago by Simon Kuenzer <[email protected]>
plat/kvm: Add configuration hint for EFI

Adds an hint in `menuconfig` that appears if the configuration dependencies
are not met for buil...

750096a9238f52a311c725e01747085af4b6bab0 authored over 1 year ago by Simon Kuenzer <[email protected]>
plat/common/x86: Fix `libukreloc` error for non-`PIE` `SMP` builds

After the merge of
commit cf8cc65cb0ae ("plat/kvm/x86: Make SMP init code resolve its own `start...

762cc5db03ece3677bbc64faa084f88b540c8ae9 authored over 1 year ago by Sergiu Moga <[email protected]>
build: Add option to place build objects in a tree

This adds the feature to place build products in a directory tree
mirroring the tree their sourc...

44e7fcd5f371cc88c59481c09837a3a1b400594d authored over 1 year ago by Andrei Tatar <[email protected]>
build: Add library registration for tree build

This change adds `addlib_tree` and `addlib_tree_s` as library
registration functions that enable...

ae1cb65410f66666f65befb7f92d9f09d5e90bdb authored over 1 year ago by Andrei Tatar <[email protected]>
build: Add option for dedicated build directory

This change adds the option to place build files in a dedicated
`.../build/` directory under the...

5bdc8d94b9ef6e5ce372e425a68c28273e3b6bb5 authored over 1 year ago by Andrei Tatar <[email protected]>
plat/common/include/x86/acpi: Move `MADT` definition to sdt.h

Since `MADT` is a System Descriptor Table itself, move it to `sdt.h`
and keep in `madt.h` only t...

c7b518f6a1fc062786a4ec42539ee46003658184 authored over 1 year ago by Sergiu Moga <[email protected]>
plat/common/x86: Add the `FADT` among the fetched tables

Add the definition for `FADT` and its related structures. Implement
a getter for it and add its ...

e40de99d46f997129e518d1fc57eb3dccbd40675 authored over 1 year ago by Sergiu Moga <[email protected]>
plat/common/x86: Re-define ACPI structures

Redefine ACPI structures so that they comply with the coding style
and fix Local SAPIC's wrong d...

b9f222cda139246549534bc37512234231501e1e authored over 1 year ago by Sergiu Moga <[email protected]>
plat/common/x86/acpi.c: Generalize checksum verification

Since all structures calculate their checksum in the same manner,
use only one general checksum ...

70cb5d7b82186a514f9b2df4f54258b5f8148a55 authored over 1 year ago by Sergiu Moga <[email protected]>
plat/common/bootinfo: Add `UEFI` System Tables address in `bootinfo`

Allow quick access to the `UEFI` System Tables through a field in
the `bootinfo` structure.

Sig...

64a2dcf05788a0b6000754ec203405c909659a88 authored over 1 year ago by Sergiu Moga <[email protected]>