From patchwork Fri May 6 18:02:32 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Henderson X-Patchwork-Id: 570218 Delivered-To: patch@linaro.org Received: by 2002:a05:7000:66c4:0:0:0:0 with SMTP id x4csp1926629mal; Fri, 6 May 2022 11:21:39 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxynRZRatpFctKVVf2n6/5wv8SF9XPMioUxfdrbs4uzLrJAsvdI91/R0Zq/CfHR6pIAh5g+ X-Received: by 2002:ac8:5e4e:0:b0:2f3:5df5:5b3f with SMTP id i14-20020ac85e4e000000b002f35df55b3fmr3990002qtx.295.1651861299062; Fri, 06 May 2022 11:21:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1651861299; cv=none; d=google.com; s=arc-20160816; b=aHUSxdpL5lC2YxycXNBuZ2diL3yO7wmRPMLb4jHfE8d27HCYv9zGX+85gDLahBf7ZL hcNTDoFglbVDDEaLHm1X697IGGtZJVE1NNnJWjzWQS2y99HjCZ8J6/2gQf73JGug2Ewb UbrOmZIdZDRKUVIFy0qmPRTfuJb814yXB4GeqULRyRfGxjm3z+bvyVIWNNmuFHhSLM9r 3j6bITliIb4UjQ+QhYHHKVxuyLdNbhvjOjFUIpBcbmaZDdNeNZoqaV+oOlvm4vmC/m12 tNJz6VmXXKz2L4JK9HwwpDV+kthobgXg157+exmctQxGk6swjmMeNCXQQwLAP0ZF6Z5g kWxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=QgQ5KSLzutwoLc046w/8oKdisj0tzJaMrdZLKPhobI8=; b=BqpY0V6dhEgBWXtjZUPq2QQp1DyeTpIq6jzIycvvK+Aeci9r4+YtEeCWX20i0hEMYG 92q6aGY2s9g4xnjjtNe8X1+6ncC9tfJQ+hhxANjHRhCURie7tt6FRBJZNgkBMYXmbDjx lxDrsoLVFhrO8bWmwrUacv9Z1vl+cQNrKKfmh7WaPWhLPLX5DlxycS7tPB0QMaiG11Fg 2IxLFeWvqDp9GwVkRdYD+JBvkHgbVDzaVZgRVA7T0RCdGcEJBuQva5f3vE2EX9wUP+It CHUmxoBN4Yy6U0BKSopEpKMd+jgkkufuniy4wBv02PWkLr+Rep7QoNNLGQZzrRnmHp6L GBTA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=igzE6ZVs; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id 13-20020a05620a048d00b006a00791588fsi2508321qkr.592.2022.05.06.11.21.39 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 06 May 2022 11:21:39 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=igzE6ZVs; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:37202 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nn2aA-0005cO-Gt for patch@linaro.org; Fri, 06 May 2022 14:21:38 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59878) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nn2IJ-0005xr-S5 for qemu-devel@nongnu.org; Fri, 06 May 2022 14:03:15 -0400 Received: from mail-oa1-x34.google.com ([2001:4860:4864:20::34]:45546) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nn2IH-0003sN-O6 for qemu-devel@nongnu.org; Fri, 06 May 2022 14:03:11 -0400 Received: by mail-oa1-x34.google.com with SMTP id 586e51a60fabf-e93bbb54f9so7965018fac.12 for ; Fri, 06 May 2022 11:03:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=QgQ5KSLzutwoLc046w/8oKdisj0tzJaMrdZLKPhobI8=; b=igzE6ZVstxe+YSXa7OJlktNKrEuARDLIG7h/HIbOSjjoE+yGqX2cjxsIUmrRwC1O4b INAkI+jo45+9MqatTMSuVkIBwxbZuF/knTKElGlEq92KllSRFXEYwMSur9ZdDhvIJXzt p0gOQIdBEhh5Z/uGCiW5XXt3c41QXRHAeAj1k4/4Lzeeg4o0nfrkXebzBJsNkziMMKW/ SzT6eYswgeD81yPEg+OlurnjRQQFd+kxOYK9zg/ejsXqUVPgClamxeSMqZVqCe6mXr9c rzaQ7W4PSLwRRlEJpM4vL6EkqTaRp6SWoQ8GvILFLHOoQHDGiUGl1RpeMjUbZeTSKo1Y LmFw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=QgQ5KSLzutwoLc046w/8oKdisj0tzJaMrdZLKPhobI8=; b=Pc9CV56nzPMtJ2Gz+vXIQV1/5e5VkBoSh2rIpRB31oNt7BqCFOESaSeH6CXOaMoSNr EZA8xmRifM6I8FMqqgdF10JdtH02kPpenrPUsr4EFfIhnfdKFmBjtf5Q2AIQz8NkFo74 O0N+JekkG9/vHw6roTfUk65kMLG9GIXX48wyqUIhVHg8ddzaMph+yO62UYpCTpr6QsIe 3EzzidMAVsPfZaC+v+x6YRd45sc9BZjTFYiHkm89N+hw7ONfZeFg+a21rHB0Y3er2cNs O0oYISSzSupbVDKM00+qNuD4uuAGjgQFE4TQIgZCcPAJzXRRtH9v98w5ZThXTID82HZj s8jA== X-Gm-Message-State: AOAM530BUbHECONRh2R3tVdFRxM2FpuNWjW+0a+XJNq/zAMefF+w+2/i eqomdN4Gm/HjGONHct7Wb7F6ybp616DYYGYW X-Received: by 2002:a05:6870:796:b0:da:3d6a:101d with SMTP id en22-20020a056870079600b000da3d6a101dmr1863301oab.20.1651860188493; Fri, 06 May 2022 11:03:08 -0700 (PDT) Received: from stoup.. ([2607:fb90:5fe1:b497:51bb:ba21:d1a7:eac2]) by smtp.gmail.com with ESMTPSA id e4-20020a056870c0c400b000e686d1389esm1780002oad.56.2022.05.06.11.03.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 06 May 2022 11:03:07 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, Peter Maydell Subject: [PATCH v6 14/24] target/arm: Enable SCR and HCR bits for RAS Date: Fri, 6 May 2022 13:02:32 -0500 Message-Id: <20220506180242.216785-15-richard.henderson@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220506180242.216785-1-richard.henderson@linaro.org> References: <20220506180242.216785-1-richard.henderson@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2001:4860:4864:20::34; envelope-from=richard.henderson@linaro.org; helo=mail-oa1-x34.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Enable writes to the TERR and TEA bits when RAS is enabled. These bits are otherwise RES0. Reviewed-by: Peter Maydell Signed-off-by: Richard Henderson --- target/arm/helper.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/target/arm/helper.c b/target/arm/helper.c index 37c5e42bc0..b6faebf4a7 100644 --- a/target/arm/helper.c +++ b/target/arm/helper.c @@ -1755,6 +1755,9 @@ static void scr_write(CPUARMState *env, const ARMCPRegInfo *ri, uint64_t value) } valid_mask &= ~SCR_NET; + if (cpu_isar_feature(aa64_ras, cpu)) { + valid_mask |= SCR_TERR; + } if (cpu_isar_feature(aa64_lor, cpu)) { valid_mask |= SCR_TLOR; } @@ -1769,6 +1772,9 @@ static void scr_write(CPUARMState *env, const ARMCPRegInfo *ri, uint64_t value) } } else { valid_mask &= ~(SCR_RW | SCR_ST); + if (cpu_isar_feature(aa32_ras, cpu)) { + valid_mask |= SCR_TERR; + } } if (!arm_feature(env, ARM_FEATURE_EL2)) { @@ -5126,6 +5132,9 @@ static void do_hcr_write(CPUARMState *env, uint64_t value, uint64_t valid_mask) if (cpu_isar_feature(aa64_vh, cpu)) { valid_mask |= HCR_E2H; } + if (cpu_isar_feature(aa64_ras, cpu)) { + valid_mask |= HCR_TERR | HCR_TEA; + } if (cpu_isar_feature(aa64_lor, cpu)) { valid_mask |= HCR_TLOR; }