mirror of
https://git.yoctoproject.org/meta-arm
synced 2026-06-01 01:00:15 +00:00
arm-autonomy: Add support for N1SDP
This patch includes the following changes for n1sdp: * Add the Xen defconfig and early printk setting; * Setting the proper Xen device-tree boot args; * Remove some entries in xen devicetree (PM and SMMU) to make is compatible with XEN and extra registers settings required for PCI quirks to communicate with SCP. Change-Id: Ic968728115787de8d9bfcaaf883fd8573ff6c9c9 Issue-Id: SCM-888 Signed-off-by: Diego Sueiro <diego.sueiro@arm.com> Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
This commit is contained in:
+39
@@ -0,0 +1,39 @@
|
|||||||
|
/*
|
||||||
|
* Modify N1SDP DTB to work properly when Xen is used
|
||||||
|
*/
|
||||||
|
|
||||||
|
/ {
|
||||||
|
|
||||||
|
/*
|
||||||
|
* pmu is using PPI interrupts which are reserved by xen
|
||||||
|
* remove pm nodes
|
||||||
|
*/
|
||||||
|
/delete-node/ pmu;
|
||||||
|
/delete-node/ spe-pmu;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* disable IOMMU until we have a proper support in xen
|
||||||
|
*/
|
||||||
|
/delete-node/ iommu@4f000000;
|
||||||
|
/delete-node/ iommu@4f400000;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Set extra registers required for PCI quirks to communicate with SCP
|
||||||
|
* and remove invalid properties due to removal
|
||||||
|
*/
|
||||||
|
pcie@68000000 {
|
||||||
|
reg = <0 0x68000000 0 0x1200000>,
|
||||||
|
<0 0x06000000 0 0x80000>,
|
||||||
|
<0 0x62000000 0 0x80000>;
|
||||||
|
/delete-property/ msi-map;
|
||||||
|
/delete-property/ iommu-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
pcie@70000000 {
|
||||||
|
reg = <0 0x70000000 0 0x1200000>,
|
||||||
|
<0 0x06000000 0 0x80000>,
|
||||||
|
<0 0x60000000 0 0x80000>;
|
||||||
|
/delete-property/ msi-map;
|
||||||
|
/delete-property/ iommu-map;
|
||||||
|
};
|
||||||
|
};
|
||||||
+7
@@ -6,10 +6,17 @@ FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
|
|||||||
SRC_URI_append_juno = " file://xen-juno.dtsi"
|
SRC_URI_append_juno = " file://xen-juno.dtsi"
|
||||||
XEN_DEVICETREE_DTSI_MERGE_append_juno = " xen-juno.dtsi"
|
XEN_DEVICETREE_DTSI_MERGE_append_juno = " xen-juno.dtsi"
|
||||||
|
|
||||||
|
# Add a dtb snippet to remove pmu and iommu in dom0 on N1SDP
|
||||||
|
SRC_URI_append_n1sdp = " file://xen-n1sdp.dtsi"
|
||||||
|
XEN_DEVICETREE_DTSI_MERGE_append_n1sdp = " xen-n1sdp.dtsi"
|
||||||
|
|
||||||
# Board specific configs
|
# Board specific configs
|
||||||
XEN_DEVICETREE_DOM0_BOOTARGS_append_juno = " root=/dev/sda1 rootwait"
|
XEN_DEVICETREE_DOM0_BOOTARGS_append_juno = " root=/dev/sda1 rootwait"
|
||||||
XEN_DEVICETREE_XEN_BOOTARGS_append_juno = " console=dtuart dtuart=serial0 bootscrub=0 iommu=no"
|
XEN_DEVICETREE_XEN_BOOTARGS_append_juno = " console=dtuart dtuart=serial0 bootscrub=0 iommu=no"
|
||||||
|
|
||||||
|
XEN_DEVICETREE_DOM0_BOOTARGS_append_n1sdp = " root=/dev/sda1 rootwait"
|
||||||
|
XEN_DEVICETREE_XEN_BOOTARGS_append_n1sdp = " console=dtuart dtuart=serial0 bootscrub=0 iommu=no"
|
||||||
|
|
||||||
XEN_DEVICETREE_DOM0_BOOTARGS_append_fvp-base = " root=/dev/vda2"
|
XEN_DEVICETREE_DOM0_BOOTARGS_append_fvp-base = " root=/dev/vda2"
|
||||||
XEN_DEVICETREE_XEN_BOOTARGS_append_fvp-base = " console=dtuart dtuart=serial0 bootscrub=0"
|
XEN_DEVICETREE_XEN_BOOTARGS_append_fvp-base = " console=dtuart dtuart=serial0 bootscrub=0"
|
||||||
|
|
||||||
|
|||||||
+100
@@ -0,0 +1,100 @@
|
|||||||
|
#
|
||||||
|
# Automatically generated file; DO NOT EDIT.
|
||||||
|
# Xen/arm 4.12.2 Configuration
|
||||||
|
#
|
||||||
|
CONFIG_64BIT=y
|
||||||
|
CONFIG_ARM_64=y
|
||||||
|
CONFIG_ARM=y
|
||||||
|
CONFIG_ARCH_DEFCONFIG="arch/arm/configs/arm64_defconfig"
|
||||||
|
|
||||||
|
#
|
||||||
|
# Architecture Features
|
||||||
|
#
|
||||||
|
CONFIG_NR_CPUS=128
|
||||||
|
CONFIG_ACPI=y
|
||||||
|
CONFIG_GICV3=y
|
||||||
|
CONFIG_HAS_ITS=y
|
||||||
|
CONFIG_HVM=y
|
||||||
|
# CONFIG_NEW_VGIC is not set
|
||||||
|
CONFIG_SBSA_VUART_CONSOLE=y
|
||||||
|
CONFIG_ARM_SSBD=y
|
||||||
|
CONFIG_HARDEN_BRANCH_PREDICTOR=y
|
||||||
|
|
||||||
|
#
|
||||||
|
# ARM errata workaround via the alternative framework
|
||||||
|
#
|
||||||
|
CONFIG_ARM64_ERRATUM_827319=y
|
||||||
|
CONFIG_ARM64_ERRATUM_824069=y
|
||||||
|
CONFIG_ARM64_ERRATUM_819472=y
|
||||||
|
CONFIG_ARM64_ERRATUM_832075=y
|
||||||
|
CONFIG_ARM64_ERRATUM_834220=y
|
||||||
|
CONFIG_ARM64_HARDEN_BRANCH_PREDICTOR=y
|
||||||
|
CONFIG_ALL_PLAT=y
|
||||||
|
# CONFIG_QEMU is not set
|
||||||
|
# CONFIG_RCAR3 is not set
|
||||||
|
# CONFIG_MPSOC is not set
|
||||||
|
# CONFIG_NO_PLAT is not set
|
||||||
|
CONFIG_ALL64_PLAT=y
|
||||||
|
# CONFIG_ALL32_PLAT is not set
|
||||||
|
CONFIG_MPSOC_PLATFORM=y
|
||||||
|
|
||||||
|
#
|
||||||
|
# Common Features
|
||||||
|
#
|
||||||
|
CONFIG_HAS_ALTERNATIVE=y
|
||||||
|
CONFIG_HAS_DEVICE_TREE=y
|
||||||
|
# CONFIG_MEM_ACCESS is not set
|
||||||
|
CONFIG_HAS_PDX=y
|
||||||
|
# CONFIG_TMEM is not set
|
||||||
|
CONFIG_XSM=y
|
||||||
|
CONFIG_XSM_FLASK=y
|
||||||
|
CONFIG_XSM_FLASK_AVC_STATS=y
|
||||||
|
# CONFIG_XSM_FLASK_POLICY is not set
|
||||||
|
CONFIG_XSM_SILO=y
|
||||||
|
# CONFIG_XSM_DUMMY_DEFAULT is not set
|
||||||
|
# CONFIG_XSM_FLASK_DEFAULT is not set
|
||||||
|
CONFIG_XSM_SILO_DEFAULT=y
|
||||||
|
# CONFIG_ARGO is not set
|
||||||
|
|
||||||
|
#
|
||||||
|
# Schedulers
|
||||||
|
#
|
||||||
|
CONFIG_SCHED_CREDIT=y
|
||||||
|
CONFIG_SCHED_CREDIT2=y
|
||||||
|
CONFIG_SCHED_RTDS=y
|
||||||
|
# CONFIG_SCHED_ARINC653 is not set
|
||||||
|
CONFIG_SCHED_NULL=y
|
||||||
|
# CONFIG_SCHED_CREDIT_DEFAULT is not set
|
||||||
|
CONFIG_SCHED_CREDIT2_DEFAULT=y
|
||||||
|
# CONFIG_SCHED_RTDS_DEFAULT is not set
|
||||||
|
# CONFIG_SCHED_NULL_DEFAULT is not set
|
||||||
|
CONFIG_SCHED_DEFAULT="credit2"
|
||||||
|
# CONFIG_LIVEPATCH is not set
|
||||||
|
CONFIG_SUPPRESS_DUPLICATE_SYMBOL_WARNINGS=y
|
||||||
|
CONFIG_CMDLINE=""
|
||||||
|
CONFIG_DOM0_MEM=""
|
||||||
|
|
||||||
|
#
|
||||||
|
# Device Drivers
|
||||||
|
#
|
||||||
|
CONFIG_HAS_NS16550=y
|
||||||
|
CONFIG_HAS_CADENCE_UART=y
|
||||||
|
CONFIG_HAS_MVEBU=y
|
||||||
|
CONFIG_HAS_PL011=y
|
||||||
|
CONFIG_HAS_SCIF=y
|
||||||
|
CONFIG_HAS_PASSTHROUGH=y
|
||||||
|
CONFIG_ARM_SMMU=y
|
||||||
|
CONFIG_DEFCONFIG_LIST="arch/arm/configs/arm64_defconfig"
|
||||||
|
|
||||||
|
#
|
||||||
|
# Debugging Options
|
||||||
|
#
|
||||||
|
# CONFIG_DEBUG is not set
|
||||||
|
CONFIG_DEBUG_INFO=y
|
||||||
|
# CONFIG_FRAME_POINTER is not set
|
||||||
|
# CONFIG_COVERAGE is not set
|
||||||
|
# CONFIG_LOCK_PROFILE is not set
|
||||||
|
# CONFIG_PERF_COUNTERS is not set
|
||||||
|
CONFIG_VERBOSE_DEBUG=y
|
||||||
|
# CONFIG_DEVICE_TREE_DEBUG is not set
|
||||||
|
# CONFIG_SCRUB_DEBUG is not set
|
||||||
@@ -5,6 +5,7 @@ XEN_CONFIG_EARLY_PRINTK_juno = "juno"
|
|||||||
XEN_CONFIG_EARLY_PRINTK_gem5-arm64 = "vexpress"
|
XEN_CONFIG_EARLY_PRINTK_gem5-arm64 = "vexpress"
|
||||||
XEN_CONFIG_EARLY_PRINTK_fvp-base = "fastmodel"
|
XEN_CONFIG_EARLY_PRINTK_fvp-base = "fastmodel"
|
||||||
XEN_CONFIG_EARLY_PRINTK_foundation-armv8 = "fastmodel"
|
XEN_CONFIG_EARLY_PRINTK_foundation-armv8 = "fastmodel"
|
||||||
|
XEN_CONFIG_EARLY_PRINTK_n1sdp = "pl011,0x2a400000"
|
||||||
|
|
||||||
# Foundation-armv8 support
|
# Foundation-armv8 support
|
||||||
COMPATIBLE_MACHINE_foundation-armv8 = "foundation-armv8"
|
COMPATIBLE_MACHINE_foundation-armv8 = "foundation-armv8"
|
||||||
@@ -25,3 +26,7 @@ SRC_URI_append_juno = " file://juno/defconfig"
|
|||||||
# Fix problem with number of interrupts on gem5
|
# Fix problem with number of interrupts on gem5
|
||||||
SRC_URI_append_gem5-arm64 = " file://4.12.0/0001-xen-arm-Cap-the-number-of-interrupt-lines-for-dom0.patch"
|
SRC_URI_append_gem5-arm64 = " file://4.12.0/0001-xen-arm-Cap-the-number-of-interrupt-lines-for-dom0.patch"
|
||||||
|
|
||||||
|
# N1SDP support
|
||||||
|
COMPATIBLE_MACHINE_n1sdp = "n1sdp"
|
||||||
|
|
||||||
|
SRC_URI_append_n1sdp = " file://n1sdp/defconfig"
|
||||||
|
|||||||
Reference in New Issue
Block a user