1# © 2021 Qualcomm Innovation Center, Inc. All rights reserved.
2#
3# SPDX-License-Identifier: BSD-3-Clause
4
5configs PLATFORM_QEMU=1
6configs PLATFORM_HAS_NO_ETM_BASE=1
7
8base_arch qemu-armv8-5a-rng
9base_arch gic-qemu
10module platform/soc_qemu
11module platform/arm_arch_timer
12module platform/arm_pmu
13module platform/arm_rng
14
15# PLATFORM_LMA_BASE is used in linker script
16# this is used to link Hyp image to this address
17configs PLATFORM_LMA_BASE=0x80000000
18
19# These define what is the installed memory range of
20# the platform hardware (memsize while invoking qemu)
21configs PLATFORM_DDR_BASE=0x40000000U
22configs PLATFORM_DDR_SIZE=0x80000000U
23
24# These define the amount of memory given to the HLOS
25# which is defined in the DT loaded for linux
26configs HLOS_VM_DDR_BASE=0x40000000U
27configs HLOS_VM_DDR_SIZE=0x40000000U
28
29# Address locations where Linux kernel, DT and RAMFS are
30# loaded when Qemu is started
31configs HLOS_ENTRY_POINT=0x41000000
32configs HLOS_DT_BASE=0x40F00000
33configs HLOS_RAM_FS_BASE=0x40800000
34
35configs PLATFORM_HEAP_PRIVATE_SIZE=0x200000
36configs PLATFORM_RW_DATA_SIZE=0x200000
37configs PLATFORM_ROOTVM_LMA_BASE=0x80480000U
38configs PLATFORM_ROOTVM_LMA_SIZE=0xa0000U
39configs PLATFORM_PHYS_ADDRESS_BITS=36
40configs PLATFORM_VM_ADDRESS_SPACE_BITS=36
41configs PLATFORM_PGTABLE_4K_GRANULE=1
42configs PLATFORM_ARCH_TIMER_FREQ=62500000
43configs PLATFORM_HYP_ARCH_TIMER_IRQ=26
44configs PLATFORM_VM_ARCH_VIRTUAL_TIMER_IRQ=27U
45configs PLATFORM_VM_ARCH_PHYSICAL_TIMER_IRQ=30
46configs PLATFORM_GIC_BASE=0x08000000U
47configs PLATFORM_GICR_COUNT=PLATFORM_MAX_CORES
48configs PLATFORM_MAX_CLUSTERS=1U
49configs PLATFORM_MAX_HIERARCHY=1U
50configs PLATFORM_GITS_COUNT=1
51configs PLATFORM_GICH_IRQ=25
52configs PLATFORM_PMU_IRQ=23
53configs PLATFORM_VM_PMU_IRQ=23
54configs PLATFORM_PMU_CNT_NUM=4
55# We currently do not have a wdog QEMU platform implementation
56configs WATCHDOG_DISABLE=1
57# QEMU does not use affinity levels and uses original powerstate format
58configs PLATFORM_PSCI_USE_ORIGINAL_POWERSTATE_FORMAT=1
59configs PSCI_AFFINITY_LEVELS_NOT_SUPPORTED=1
60configs PLATFORM_HAS_NO_DBGCLAIM_EL1=1
61# QEMU supports version 0.2, which does not have set_suspend_mode call
62configs PSCI_SET_SUSPEND_MODE_NOT_SUPPORTED=1
63
64configs QCBOR_ENV_CONFIG_SIZE=0x4000
65