#
0cc3a351 |
| 22-Feb-2025 |
Sean Christopherson <seanjc@google.com> |
lib: Use __ASSEMBLER__ instead of __ASSEMBLY__
Convert all non-x86 #ifdefs from __ASSEMBLY__ to __ASSEMBLER__, and remove all manual __ASSEMBLY__ #defines. __ASSEMBLY_ was inherited blindly from th
lib: Use __ASSEMBLER__ instead of __ASSEMBLY__
Convert all non-x86 #ifdefs from __ASSEMBLY__ to __ASSEMBLER__, and remove all manual __ASSEMBLY__ #defines. __ASSEMBLY_ was inherited blindly from the Linux kernel, and must be manually defined, e.g. through build rules or with the aforementioned explicit #defines in assembly code.
__ASSEMBLER__ on the other hand is automatically defined by the compiler when preprocessing assembly, i.e. doesn't require manually #defines for the code to function correctly.
Ignore x86, as x86 doesn't actually rely on __ASSEMBLY__ at the moment, and is undergoing a parallel cleanup.
Signed-off-by: Sean Christopherson <seanjc@google.com> Reviewed-by: Andrew Jones <andrew.jones@linux.dev> Message-ID: <20250222014526.2302653-1-seanjc@google.com> [thuth: Fix three more occurances in libfdt.h and sbi-tests.h] Signed-off-by: Thomas Huth <thuth@redhat.com>
show more ...
|
#
74ff0e96 |
| 18-May-2021 |
Paolo Bonzini <bonzini@gnu.org> |
Merge branch 'arm/queue' into 'master'
arm/arm64: target-efi prep
This series mostly prepares kvm-unit-tests/arm for targeting EFI platforms. The actually EFI support will come in another series, b
Merge branch 'arm/queue' into 'master'
arm/arm64: target-efi prep
This series mostly prepares kvm-unit-tests/arm for targeting EFI platforms. The actually EFI support will come in another series, but these patches are good for removing assumptions from our memory maps and about our PSCI conduit, even if we never merge EFI support.
See merge request kvm-unit-tests/kvm-unit-tests!8
show more ...
|
#
e97e1c82 |
| 11-Nov-2020 |
Andrew Jones <drjones@redhat.com> |
arm/arm64: mmu: Stop mapping an assumed IO region
By providing a proper ioremap function, we can just rely on devices calling it for each region they need (as they already do) instead of mapping a b
arm/arm64: mmu: Stop mapping an assumed IO region
By providing a proper ioremap function, we can just rely on devices calling it for each region they need (as they already do) instead of mapping a big assumed I/O range. We don't require the MMU to be enabled at the time of the ioremap. In that case, we add the mapping to the identity map anyway. This allows us to call setup_vm after io_init. Why don't we just call setup_vm before io_init, I hear you ask? Well, that's because tests like sieve want to start with the MMU off, later call setup_vm, and all the while have working I/O. Some unit tests are just really demanding...
While at it, ensure we map the I/O regions with XN (execute never), as suggested by Alexandru Elisei.
Reviewed-by: Alexandru Elisei <alexandru.elisei@arm.com> Tested-by: Alexandru Elisei <alexandru.elisei@arm.com> Signed-off-by: Andrew Jones <drjones@redhat.com>
show more ...
|
#
1a00120a |
| 11-Nov-2020 |
Andrew Jones <drjones@redhat.com> |
Merge branch 'arm-pull-11-11-2020' into 'master'
Arm pull 11.11.2020
See merge request kvm-unit-tests/kvm-unit-tests!2
|
#
a2d06852 |
| 04-Nov-2020 |
Nikos Nikoleris <nikos.nikoleris@arm.com> |
arm64: Add support for configuring the translation granule
Make the translation granule configurable for arm64. arm64 supports page sizes of 4K, 16K and 64K. By default, arm64 is configured with 64K
arm64: Add support for configuring the translation granule
Make the translation granule configurable for arm64. arm64 supports page sizes of 4K, 16K and 64K. By default, arm64 is configured with 64K pages. configure has been extended with a new argument:
--page-size=PAGE_SIZE
which allows the user to set the page shift and therefore the page size for arm64. Using the --page-size for any other architecture results an error message.
In addition, bump the VA size from 42 to 48 bits. To enable 48 bit VAs for all translation granules, add support for 4-level and 3-level page tables. At compile time, we determine how many levels in the page tables we needed.
Reviewed-by: Andrew Jones <drjones@redhat.com> Reviewed-by: Alexandru Elisei <alexandru.elisei@arm.com> Tested-by: Alexandru Elisei <alexandru.elisei@arm.com> Signed-off-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Signed-off-by: Andrew Jones <drjones@redhat.com>
show more ...
|
#
f02b6363 |
| 17-Jan-2018 |
Andrew Jones <drjones@redhat.com> |
arm/arm64: fix virt_to_phys
Since switching to the vm_memalign() allocator virt_to_phys() hasn't been returning the correct address, as it was assuming an identity map.
Signed-off-by: Andrew Jones
arm/arm64: fix virt_to_phys
Since switching to the vm_memalign() allocator virt_to_phys() hasn't been returning the correct address, as it was assuming an identity map.
Signed-off-by: Andrew Jones <drjones@redhat.com> Signed-off-by: Radim Krčmář <rkrcmar@redhat.com>
show more ...
|
#
3c36da79 |
| 17-Jan-2018 |
Andrew Jones <drjones@redhat.com> |
arm/arm64: cleanup alloc.h includes
It used to be necessary for the phys_addr_t typedef, but now it doesn't make sense in a few places.
Signed-off-by: Andrew Jones <drjones@redhat.com> Signed-off-b
arm/arm64: cleanup alloc.h includes
It used to be necessary for the phys_addr_t typedef, but now it doesn't make sense in a few places.
Signed-off-by: Andrew Jones <drjones@redhat.com> Signed-off-by: Radim Krčmář <rkrcmar@redhat.com>
show more ...
|
#
0226e262 |
| 23-Oct-2017 |
Paolo Bonzini <pbonzini@redhat.com> |
arm: get rid of pud
We do not need four levels of page tables in either 32-bit or 64-bit ARM, so remove the useless indirection.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
#
49f758b8 |
| 29-May-2017 |
Andrew Jones <drjones@redhat.com> |
arm/arm64: code derived from Linux must be GPL not LGPL
Also update copyrights.
Reported-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Andrew Jones <drjones@redhat.com> [Amend two other "Adapat
arm/arm64: code derived from Linux must be GPL not LGPL
Also update copyrights.
Reported-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Andrew Jones <drjones@redhat.com> [Amend two other "Adapated" typos as well.] Signed-off-by: Radim Krčmář <rkrcmar@redhat.com>
show more ...
|
#
f3bd1e05 |
| 18-Jan-2016 |
Andrew Jones <drjones@redhat.com> |
lib: add linux dir for kernel uapi headers
We needed to import some uapi headers, e.g. lib/arm/asm/uapi-psci.h, and will need some others, e.g. pci_regs.h, in the future. Create a linux directory fo
lib: add linux dir for kernel uapi headers
We needed to import some uapi headers, e.g. lib/arm/asm/uapi-psci.h, and will need some others, e.g. pci_regs.h, in the future. Create a linux directory for them in lib so that they can be included with the familiar <linux/header.h> reference.
(Note, x86 has been cheating. lib/x86/pci.c already includes <linux/pci_regs.h>, which it's been getting away with as its include paths are less strict than arm's, i.e. it *does* look in /usr/include)
Signed-off-by: Andrew Jones <drjones@redhat.com> Reviewed-by: Radim KrÄmář <rkrcmar@redhat.com> Message-Id: <1453140064-9040-2-git-send-email-drjones@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
show more ...
|
#
30b1bc86 |
| 10-Dec-2014 |
Andrew Jones <drjones@redhat.com> |
arm64: import some Linux page table API
Signed-off-by: Andrew Jones <drjones@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
#
39ac3f84 |
| 10-Dec-2014 |
Andrew Jones <drjones@redhat.com> |
arm64: initial drop
This is the initial drop of the arm64 test framework and a first test that just checks that setup completed (a selftest). kvm isn't needed to run this test unless testing with sm
arm64: initial drop
This is the initial drop of the arm64 test framework and a first test that just checks that setup completed (a selftest). kvm isn't needed to run this test unless testing with smp > 1.
Try it out with yum install gcc-aarch64-linux-gnu ./configure --cross-prefix=aarch64-linux-gnu- --arch=arm64 make QEMU=[qemu with aarch64, mach-virt, and chr-testdev] ./run_tests.sh
Signed-off-by: Andrew Jones <drjones@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
show more ...
|