From patchwork Wed May 4 15:18:07 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Auger Eric X-Patchwork-Id: 67153 Delivered-To: patches@linaro.org Received: by 10.140.92.199 with SMTP id b65csp241876qge; Wed, 4 May 2016 08:18:25 -0700 (PDT) X-Received: by 10.28.236.156 with SMTP id h28mr9349434wmi.25.1462375105504; Wed, 04 May 2016 08:18:25 -0700 (PDT) Return-Path: Received: from mail-wm0-x236.google.com (mail-wm0-x236.google.com. [2a00:1450:400c:c09::236]) by mx.google.com with ESMTPS id kn5si5479559wjc.117.2016.05.04.08.18.25 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 04 May 2016 08:18:25 -0700 (PDT) Received-SPF: pass (google.com: domain of eric.auger@linaro.org designates 2a00:1450:400c:c09::236 as permitted sender) client-ip=2a00:1450:400c:c09::236; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org; spf=pass (google.com: domain of eric.auger@linaro.org designates 2a00:1450:400c:c09::236 as permitted sender) smtp.mailfrom=eric.auger@linaro.org; dmarc=pass (p=NONE dis=NONE) header.from=linaro.org Received: by mail-wm0-x236.google.com with SMTP id e201so192641496wme.0 for ; Wed, 04 May 2016 08:18:25 -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; bh=+UdZMEJYjTYjk3eT/FOf6lNV1QTL6DVbdnW7Mleb8Mk=; b=XPdu7fXp21THAjjTELweh8I/MuJT3N7EFwaBM9K4uR1K598bnROX9aa8EuqQok3PBJ FAdNgib9ncfe+tO4+vpeJ1pa9Er23CS95qPOiJoUu6Yk+xDklY6oHfEHznM6sD5Lz/bv 15bdtP0M7V1byVuPXw3EIMvcJYNAcbXeHxQbE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=+UdZMEJYjTYjk3eT/FOf6lNV1QTL6DVbdnW7Mleb8Mk=; b=Bd0qpqSw/cs2PzojIdjXtDdlf2nEfkdK+74lmEUEAzBtSwyW/NBWBIH0gr0vOTQlU0 EaaGxCJdjMns7KWO/sMR2vN8QrEaH0nAV0bUjLCvwBI6eUzwr8QsEVpdbL8vI0KKLYVy OP4VrCvt4R/85RjuQsTqDWk/Ti3YDC2TRz8/i097d6Z2q90eIaMgTViktGnoc2SXhnwG 9S6kfCIp5yrAC4fZe53JcU6CQ88xj+7UcvWVyuyim9U20erfyEPklTNEh6ZzBndwVscL TrfUn+xnQw64mCxtjndmEiuhmcHoJRK3vnB3GLgU3d1ZcebrGQ3i4AqJflFfQn7VfbCF y2/g== X-Gm-Message-State: AOPr4FWO1haQjAnbtiGzYsOOp+oedXkBwjJ9Ixh967dPL3AzttmhplfMpTXlFRTMAOZz1jOFak4= X-Received: by 10.194.203.227 with SMTP id kt3mr9092893wjc.73.1462375105232; Wed, 04 May 2016 08:18:25 -0700 (PDT) Return-Path: Received: from new-host-57.home (LMontsouris-657-1-37-90.w80-11.abo.wanadoo.fr. [80.11.198.90]) by smtp.gmail.com with ESMTPSA id c4sm4773821wjm.24.2016.05.04.08.18.22 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 04 May 2016 08:18:23 -0700 (PDT) From: Eric Auger To: eric.auger@st.com, eric.auger@linaro.org, robin.murphy@arm.com, alex.williamson@redhat.com, will.deacon@arm.com, joro@8bytes.org, tglx@linutronix.de, jason@lakedaemon.net, marc.zyngier@arm.com, christoffer.dall@linaro.org, linux-arm-kernel@lists.infradead.org Cc: patches@linaro.org, linux-kernel@vger.kernel.org, Bharat.Bhushan@freescale.com, pranav.sawargaonkar@gmail.com, p.fedin@samsung.com, iommu@lists.linux-foundation.org, Jean-Philippe.Brucker@arm.com, julien.grall@arm.com, yehuday@marvell.com Subject: [PATCH v9 1/8] genirq/msi: Add a new MSI_FLAG_IRQ_REMAPPING flag Date: Wed, 4 May 2016 15:18:07 +0000 Message-Id: <1462375094-2390-2-git-send-email-eric.auger@linaro.org> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1462375094-2390-1-git-send-email-eric.auger@linaro.org> References: <1462375094-2390-1-git-send-email-eric.auger@linaro.org> Let's introduce a new msi_domain_info flag value, MSI_FLAG_IRQ_REMAPPING meant to tell the domain supports IRQ REMAPPING, also known as Interrupt Translation Service. On Intel HW this IRQ remapping capability is abstracted on IOMMU side while on ARM it is abstracted on MSI controller side. This flag will be used to know whether the MSI passthrough is safe. Signed-off-by: Eric Auger --- v4 -> v5: - seperate flag introduction from first user addition (ITS) --- include/linux/msi.h | 2 ++ 1 file changed, 2 insertions(+) -- 1.9.1 diff --git a/include/linux/msi.h b/include/linux/msi.h index 8b425c6..08441b1 100644 --- a/include/linux/msi.h +++ b/include/linux/msi.h @@ -270,6 +270,8 @@ enum { MSI_FLAG_MULTI_PCI_MSI = (1 << 3), /* Support PCI MSIX interrupts */ MSI_FLAG_PCI_MSIX = (1 << 4), + /* Support MSI IRQ remapping service */ + MSI_FLAG_IRQ_REMAPPING = (1 << 5), }; int msi_domain_set_affinity(struct irq_data *data, const struct cpumask *mask,