From patchwork Thu Feb 8 11:57:19 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?SsOpcsOpbXkgRmFuZ3XDqGRl?= X-Patchwork-Id: 870845 Return-Path: X-Original-To: incoming-imx@patchwork.ozlabs.org Delivered-To: patchwork-incoming-imx@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.infradead.org (client-ip=65.50.211.133; helo=bombadil.infradead.org; envelope-from=linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="VYM/vOze"; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=virtualopensystems-com.20150623.gappssmtp.com header.i=@virtualopensystems-com.20150623.gappssmtp.com header.b="F1yfhF5R"; dkim-atps=neutral Received: from bombadil.infradead.org (bombadil.infradead.org [65.50.211.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3zccC73KxKz9s7v for ; Thu, 8 Feb 2018 22:57:54 +1100 (AEDT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:To :From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=9Rj5RwcaIh61zMwNROCwEdlLZ4on88tEGmWh03ZRZJM=; b=VYM/vOzed90kUK QdXrCXN82d14+dZ+CGwAzUK1kCGxMl3tGA/RKZP+p2FRL1q4Ia70iyKIxbo3ECWuiTKOtZHhiyrJk D8SuJm/OmFkdOdRXRNYqlqyZqdzu3vS7ekwUxePNClHeN4KAi9H9iZNjsAI7wNOOWjhU4KFbVi/5S lbWRu/mlq/uzcR8FXrLOxzlp3QEdg7QUyzLhV6y8j3IzlBESmm3kwdQsacw6NE3QKqa34TiCHybck PS8S61VsEsncBg6VO1jyD7CSObNy3sFbYZOoEiAHta9g/HT4eH2drwStkVuE760N+OYOsAzmzWS+k nhqkoVa34UenOphKGEEw==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.89 #1 (Red Hat Linux)) id 1ejkpr-0006zw-Te; Thu, 08 Feb 2018 11:57:51 +0000 Received: from mail-wr0-x244.google.com ([2a00:1450:400c:c0c::244]) by bombadil.infradead.org with esmtps (Exim 4.89 #1 (Red Hat Linux)) id 1ejkpn-0006wj-LX for linux-arm-kernel@lists.infradead.org; Thu, 08 Feb 2018 11:57:49 +0000 Received: by mail-wr0-x244.google.com with SMTP id h9so4394637wre.12 for ; Thu, 08 Feb 2018 03:57:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtualopensystems-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=BIxOTLNaikByEFWKV4CInop2FjS1M1wzVjfX2FGat4k=; b=F1yfhF5RMgtBjUoYl26G4x4HvoP4pOdCcvQ2W7dRwQWXcyotFttQk+rvHdi6zGmBz+ 5sE3CgbJ8uSkpX8klFLvDTY0OmBZ2GJFjCzL2Nwen7lkgxu6RsI7oRfyOcWo+h1WsQ8X gsENvNlUKDwq2dfXvJKRyx58qVc1irlLlHKacFYR7aPrKiIqr9POA2sJ8Ynth2gRx2mo BtQbSB1fEqiqgoPRYWiSWBcwChw3wTIOhmH/6C/Cm1E9F8RCcevTPOvuPIBeL92NzXag M1Ds7Zbjsc3FE3ooS+4i54AOwSwacKW1Xnug4XrplES4fkkRG8FVROv/xnB1cc0hHGP9 lsFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=BIxOTLNaikByEFWKV4CInop2FjS1M1wzVjfX2FGat4k=; b=MIAABPhJPPV9uFpFjIWKnihifM3nzxfzLU5W5cw3pUccq64dz51ZEWFAq7UBZ/BntQ x65zuqqOCOdyJgjYv8QwWjKvWyfbZNzNLeLz1k22PUnuheoxhihZbIK23q0MlleKe7JM 9YXBCR4j5h0ybTEkf1NQtXwlzXrTAc3zjX31tauWtAhHAzQy6/reBChTb3Falx1MG8nk fEQ+jH/LbFuLO/xXbl9vwzkyM2WF63yPha/JsK+Go2ppI5ZEdUJVY/8Dfx3nd9ff410d jHveeecuf641iFi4khHtuafIXpK0alFLcqURx8+6bkb3hSvtkLbEq15W2DSNS+j3cHRi go9w== X-Gm-Message-State: APf1xPAagMiNKFd12G3mKNC9rBjK1/W6c+mPaSu+PCcZ3oCUbZRmWBjv UL2MNH5Y4QBtk5ndEkv4KzqJvA== X-Google-Smtp-Source: AH8x226AioFlokRbuJpLUuIrmJDoiAEaxnRFnPeduTvHFEWEqSDwKLoMhwE69FCzZ2l+qkIe58dxQA== X-Received: by 10.223.184.102 with SMTP id u35mr490336wrf.143.1518091055025; Thu, 08 Feb 2018 03:57:35 -0800 (PST) Received: from vosys-s4.vosys (LPuteaux-656-1-278-113.w80-15.abo.wanadoo.fr. [80.15.154.113]) by smtp.googlemail.com with ESMTPSA id j89sm2727233wrj.45.2018.02.08.03.57.33 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 08 Feb 2018 03:57:34 -0800 (PST) From: =?utf-8?b?SsOpcsOpbXkgRmFuZ3XDqGRl?= To: Christoffer Dall , Marc Zyngier , Catalin Marinas , Will Deacon , linux-arm-kernel@lists.infradead.org, kvmarm@lists.cs.columbia.edu, linux-kernel@vger.kernel.org Subject: [PATCH] KVM: arm64: Enable the EL1 physical timer for AArch32 guests Date: Thu, 8 Feb 2018 12:57:19 +0100 Message-Id: <1518091039-17356-1-git-send-email-j.fanguede@virtualopensystems.com> X-Mailer: git-send-email 2.7.4 MIME-Version: 1.0 X-Spam-Note: CRM114 invocation failed X-Spam-Score: -1.9 (-) X-Spam-Report: SpamAssassin version 3.4.1 on bombadil.infradead.org summary: Content analysis details: (-1.9 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at http://www.dnswl.org/, no trust [2a00:1450:400c:c0c:0:0:0:244 listed in] [list.dnswl.org] -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?utf-8?b?SsOpcsOpbXkgRmFuZ3XDqGRl?= , tech@virtualopensystems.com, Alvise Rigo Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org List-Id: linux-imx-kernel.lists.patchwork.ozlabs.org Some 32bits guest OS can use the CNTP timer, however KVM does not handle the accesses, injecting a fault instead. Use the proper handlers to emulate the EL1 Physical Timer (CNTP) register accesses of AArch32 guests. Signed-off-by: Jérémy Fanguède Signed-off-by: Alvise Rigo --- arch/arm64/kvm/sys_regs.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/arch/arm64/kvm/sys_regs.c b/arch/arm64/kvm/sys_regs.c index 50a43c7..c0ab4f7 100644 --- a/arch/arm64/kvm/sys_regs.c +++ b/arch/arm64/kvm/sys_regs.c @@ -1545,6 +1545,11 @@ static const struct sys_reg_desc cp15_regs[] = { { Op1( 0), CRn(13), CRm( 0), Op2( 1), access_vm_reg, NULL, c13_CID }, + /* CNTP_TVAL */ + { Op1( 0), CRn(14), CRm( 2), Op2( 0), access_cntp_tval }, + /* CNTP_CTL */ + { Op1( 0), CRn(14), CRm( 2), Op2( 1), access_cntp_ctl }, + /* PMEVCNTRn */ PMU_PMEVCNTR(0), PMU_PMEVCNTR(1), @@ -1618,6 +1623,7 @@ static const struct sys_reg_desc cp15_64_regs[] = { { Op1( 0), CRn( 0), CRm( 9), Op2( 0), access_pmu_evcntr }, { Op1( 0), CRn( 0), CRm(12), Op2( 0), access_gic_sgi }, { Op1( 1), CRn( 0), CRm( 2), Op2( 0), access_vm_reg, NULL, c2_TTBR1 }, + { Op1( 2), CRn( 0), CRm(14), Op2( 0), access_cntp_cval }, }; /* Target specific emulation tables */