Received: by 2002:a25:824b:0:0:0:0:0 with SMTP id d11csp1265837ybn; Wed, 25 Sep 2019 15:18:27 -0700 (PDT) X-Google-Smtp-Source: APXvYqy+AFydbJdhym6f1umPa/6AH6TtGmzM1hcJDqiedauMtvG8nMMJfLHXuUJ4l7WQFZEkKEVv X-Received: by 2002:a50:8b61:: with SMTP id l88mr301503edl.244.1569449907162; Wed, 25 Sep 2019 15:18:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1569449907; cv=none; d=google.com; s=arc-20160816; b=YSKly3FVyA0XeD/YErmdGd6h5Vi/hEhgIu94CFa7Wq/nzZjxii1sBzJYC5zT5pDqD1 YcYWO5ma6fSXuCOOa9/fDgONM8mgmrSxxU0xiGND5wIOvKYh2uW5nfwhkp6mwr2fzLiU WjC7NLSdartTWcGNAA+hOlA5vJft1MAY1eOFfXoI2eQs40aRON+raQUHx5n1ZoXtB+XA /l8VTX8O7fhwX2JEiasGi9mXiidqPRBKQVIioqgy0fiS6N3mGYJN0uORhCamfJTz33ey /kVD+SlSnn+/i0E4R1c5cf1WZ4KL+jRlbNkm0suWgJPuxv4g6YuxfzHsMSJshazr+BF1 QpPA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=NnMDjI2eU0p6rFDrPl4mqcq0poNJBRkTQLBCgZL71+0=; b=cC7SZQn2D6wqTWQsTQscICc/nKiR7/10WxUsJWDXhsDD4l4Ltwg4OjyeuYsL4afaBz 5r2s46KZvvus5RyjfXOCvgYN9tGy7wd8rreKNfibo4BEtYttbgDvvZRzGdz8k1KPa+1a UTsT6t2cNc5o3I8yMah0ri8VLR3WREr/1ZwSgih++S3rHjqlWqbdt3qEWppFSoIKEt7/ NJOY0Fe8j7blT4XMlOz0Ipa1BsN767PoJNBmYI0Ln+SQbHvSaes/HTxtiXSJ0R2vLQ1p wXv8qrnua9YRjFDd5xNgcOzOxZPUz0WtPhTEyBWoDx8rAN1X6eJnfPZ+e0GrSDHFmgyB kshQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id o17si89169ejm.261.2019.09.25.15.18.02; Wed, 25 Sep 2019 15:18:27 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1733059AbfIWS2W (ORCPT + 99 others); Mon, 23 Sep 2019 14:28:22 -0400 Received: from foss.arm.com ([217.140.110.172]:47208 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1733006AbfIWS2S (ORCPT ); Mon, 23 Sep 2019 14:28:18 -0400 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 09DEF2972; Mon, 23 Sep 2019 11:28:18 -0700 (PDT) Received: from big-swifty.lan (unknown [172.31.20.19]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 0E8623F694; Mon, 23 Sep 2019 11:28:14 -0700 (PDT) From: Marc Zyngier To: kvmarm@lists.cs.columbia.edu, linux-kernel@vger.kernel.org Cc: Eric Auger , James Morse , Julien Thierry , Suzuki K Poulose , Thomas Gleixner , Jason Cooper , Lorenzo Pieralisi , Andrew Murray Subject: [PATCH 30/35] irqchip/gic-v4.1: Add VSGI property setup Date: Mon, 23 Sep 2019 19:26:01 +0100 Message-Id: <20190923182606.32100-31-maz@kernel.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190923182606.32100-1-maz@kernel.org> References: <20190923182606.32100-1-maz@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Add the SGI configuration entry point for KVM to use. Signed-off-by: Marc Zyngier --- drivers/irqchip/irq-gic-v4.c | 13 +++++++++++++ include/linux/irqchip/arm-gic-v4.h | 1 + 2 files changed, 14 insertions(+) diff --git a/drivers/irqchip/irq-gic-v4.c b/drivers/irqchip/irq-gic-v4.c index a29a063861bc..b937e51a9178 100644 --- a/drivers/irqchip/irq-gic-v4.c +++ b/drivers/irqchip/irq-gic-v4.c @@ -324,6 +324,19 @@ int its_prop_update_vlpi(int irq, u8 config, bool inv) return irq_set_vcpu_affinity(irq, &info); } +int its_prop_update_vsgi(int irq, u8 priority, bool group) +{ + struct its_cmd_info info = { + .cmd_type = PROP_UPDATE_SGI, + { + .priority = priority, + .group = group, + }, + }; + + return irq_set_vcpu_affinity(irq, &info); +} + int its_init_v4(struct irq_domain *domain, const struct irq_domain_ops *vpe_ops, const struct irq_domain_ops *sgi_ops) diff --git a/include/linux/irqchip/arm-gic-v4.h b/include/linux/irqchip/arm-gic-v4.h index 5578cbe7430b..b894796df9ab 100644 --- a/include/linux/irqchip/arm-gic-v4.h +++ b/include/linux/irqchip/arm-gic-v4.h @@ -127,6 +127,7 @@ int its_map_vlpi(int irq, struct its_vlpi_map *map); int its_get_vlpi(int irq, struct its_vlpi_map *map); int its_unmap_vlpi(int irq); int its_prop_update_vlpi(int irq, u8 config, bool inv); +int its_prop_update_vsgi(int irq, u8 priority, bool group); struct irq_domain_ops; int its_init_v4(struct irq_domain *domain, -- 2.20.1