From patchwork Thu Jul 9 05:01:43 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bjorn Andersson X-Patchwork-Id: 235123 Delivered-To: patch@linaro.org Received: by 2002:a92:d244:0:0:0:0:0 with SMTP id v4csp1067744ilg; Wed, 8 Jul 2020 22:02:03 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwPjwlcWeWP+IiXOuyiuvIRWHtj3H/gytjc/43P7pUmh06CkhyfR/q0hOXyR55o07mjafYs X-Received: by 2002:a17:906:c943:: with SMTP id fw3mr53771378ejb.55.1594270922921; Wed, 08 Jul 2020 22:02:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1594270922; cv=none; d=google.com; s=arc-20160816; b=kraDkdKSOxE5DC1huU+kqvdnFVr6xmRACdSVlIdAqyEyhpFhzRb5bL1i3lFHcsMGh6 TJ1sVVAjVerqsfg8t43Vpy/Lwn4WuwWJ6LnbH1JJcydW6jN19xXf8v73KxGVUcE/ubjh yO134pY/CXVLF+u/01yb/Z0TPACsVxs2uoOm6219gJkQUrNfcYbOZWtlbu/x2KlWJSD4 nhaUMZUL5m4OyfH8CcBYI2fx/6b011fVbajkLYILFUdFAEybbaFskY2soHi1W6YxYT3Y o8DAIwBLY05ziOaySBdnkzmzEI59T4ClUmoj6pnoLFle+8Ow6z8SOVzdHJzx0C5lj1kh I4IQ== 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 :dkim-signature; bh=Hqoe1VtzzAa4w0lrTNILxm5TZOFtQ6ZqFKD8K8ft5H8=; b=1A1u7KeaiWKIIT9+3djhqN0Kp3a5crJ1YS/sUGyD2fpHLa5HTAsEd0judNGyKeU3R8 YUvGikkvi9DvwMVBk7wdHoZJg61RJ2SIXqFlrf2FOtd/VBgcc3X8Hw+S6ez3elSjbNcQ RdF4hrEv3lllEbFDt/KPga5aSOCNTEIsACrfLwp5F9iaWaM7EkSEJLfl95zkNUp8wTxz 53cmDP8veQnuVYyVpv9DmKwvNDb/KOnY4bYb8gh7kxRKgpXyCphUXAxpfnKzsvX9Lmsz 8EI6zKxQ17IeRW4XkYlyRqUbrDCldLNOnpazWTgUFWOhj4vci835IXOYNmcqL4AWv9lr 4zKA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=oi9P502f; spf=pass (google.com: domain of linux-arm-msm-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-arm-msm-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id bz8si1139541ejc.744.2020.07.08.22.02.02; Wed, 08 Jul 2020 22:02:02 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-arm-msm-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=oi9P502f; spf=pass (google.com: domain of linux-arm-msm-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-arm-msm-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726260AbgGIFBq (ORCPT + 15 others); Thu, 9 Jul 2020 01:01:46 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43750 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726251AbgGIFBp (ORCPT ); Thu, 9 Jul 2020 01:01:45 -0400 Received: from mail-pj1-x1043.google.com (mail-pj1-x1043.google.com [IPv6:2607:f8b0:4864:20::1043]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2CF60C08C5CE for ; Wed, 8 Jul 2020 22:01:45 -0700 (PDT) Received: by mail-pj1-x1043.google.com with SMTP id f16so563238pjt.0 for ; Wed, 08 Jul 2020 22:01:45 -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=Hqoe1VtzzAa4w0lrTNILxm5TZOFtQ6ZqFKD8K8ft5H8=; b=oi9P502fvIr5PyRQt5SQntHS3N3rx17AUMRRDrMtGMGII+nqCiGfEZ2jmn+Oitn9pt wlCSE90hhoVr6uoZKD+LbMQ5/Y9+xcLTPqnch8CseRIy2aPJnDwDAeis1HABlWtDOBy7 oKrHCpxZYZ9hLcBNAeQVP+cwUqCU2ANOYryvP9QJm+yNkv9tQahz++BfsI6BXQI+jDxj xTnQFcZxteOYJ5U7JqW918NzOFQnWnQDEbicTDOR+IZkCAeVuIuonOeNa+Cy/Fu/mvWd YPdVIRstiJ4F39m1b+ee9XpFEzYr38DuHaRZUFKsUNdfwzRteCm8CiBS+tK7rDMK18Kv 5ToQ== 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:in-reply-to :references:mime-version:content-transfer-encoding; bh=Hqoe1VtzzAa4w0lrTNILxm5TZOFtQ6ZqFKD8K8ft5H8=; b=XknLRWTb7DYLNzrRJf5Zp004Uq7gmuttVraacEDdiiwVMQNYvoZR94ajBa/Ln0F6O3 KHwqabeFQkuMpXuk7gkdJdgm26QUAieInFuNhnoG+A+VE4a2gH8ahCiIpR5BvceiUui6 9E71hFggoNEJQl7q3rMshkth/sGkSNtkiVNGvZLFhWiQc3CEWBadeOi/5eJwFpnHMgd2 CRo7llKM49TxIzyt4qLNRqink5EHkPqjiS3nDB7PjMpiF6nm6Mz3dPNzsJULPSUCc5Rn sE2iBcp3tqKKIyahPYZTgk1JRM/TVdhscESauTOHyTf5f7o+gdyRtM1JuwGkoYqWsGq0 5qow== X-Gm-Message-State: AOAM531Hq6j0YGAxzQOEWS6g6W7aDKCEDp71ceB5aHbIVCElUn9Y6ZYC BfaPUlJlyAy8Bxke7I0Id2xoZQ== X-Received: by 2002:a17:90b:1a86:: with SMTP id ng6mr13156196pjb.88.1594270904651; Wed, 08 Jul 2020 22:01:44 -0700 (PDT) Received: from localhost.localdomain (104-188-17-28.lightspeed.sndgca.sbcglobal.net. [104.188.17.28]) by smtp.gmail.com with ESMTPSA id h15sm999974pjc.14.2020.07.08.22.01.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 08 Jul 2020 22:01:43 -0700 (PDT) From: Bjorn Andersson To: Will Deacon , Robin Murphy , Joerg Roedel , Thierry Reding , Laurentiu Tudor Cc: linux-arm-kernel@lists.infradead.org, iommu@lists.linux-foundation.org, linux-kernel@vger.kernel.org, Jonathan Marek , linux-arm-msm@vger.kernel.org Subject: [PATCH 3/5] iommu/arm-smmu: Move SMR and S2CR definitions to header file Date: Wed, 8 Jul 2020 22:01:43 -0700 Message-Id: <20200709050145.3520931-4-bjorn.andersson@linaro.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200709050145.3520931-1-bjorn.andersson@linaro.org> References: <20200709050145.3520931-1-bjorn.andersson@linaro.org> MIME-Version: 1.0 Sender: linux-arm-msm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-arm-msm@vger.kernel.org Expose the SMR and S2CR structs in the header file, to allow platform specific implementations to populate/initialize the smrs and s2cr arrays. Signed-off-by: Bjorn Andersson --- drivers/iommu/arm-smmu.c | 14 -------------- drivers/iommu/arm-smmu.h | 15 +++++++++++++++ 2 files changed, 15 insertions(+), 14 deletions(-) -- 2.26.2 diff --git a/drivers/iommu/arm-smmu.c b/drivers/iommu/arm-smmu.c index f33eda3117fa..e2d6c0aaf1ea 100644 --- a/drivers/iommu/arm-smmu.c +++ b/drivers/iommu/arm-smmu.c @@ -68,24 +68,10 @@ module_param(disable_bypass, bool, S_IRUGO); MODULE_PARM_DESC(disable_bypass, "Disable bypass streams such that incoming transactions from devices that are not attached to an iommu domain will report an abort back to the device and will not be allowed to pass through the SMMU."); -struct arm_smmu_s2cr { - struct iommu_group *group; - int count; - enum arm_smmu_s2cr_type type; - enum arm_smmu_s2cr_privcfg privcfg; - u8 cbndx; -}; - #define s2cr_init_val (struct arm_smmu_s2cr){ \ .type = disable_bypass ? S2CR_TYPE_FAULT : S2CR_TYPE_BYPASS, \ } -struct arm_smmu_smr { - u16 mask; - u16 id; - bool valid; -}; - struct arm_smmu_cb { u64 ttbr[2]; u32 tcr[2]; diff --git a/drivers/iommu/arm-smmu.h b/drivers/iommu/arm-smmu.h index a71d193073e4..bcd160d01c53 100644 --- a/drivers/iommu/arm-smmu.h +++ b/drivers/iommu/arm-smmu.h @@ -251,6 +251,21 @@ enum arm_smmu_implementation { QCOM_SMMUV2, }; +struct arm_smmu_s2cr { + struct iommu_group *group; + int count; + enum arm_smmu_s2cr_type type; + enum arm_smmu_s2cr_privcfg privcfg; + u8 cbndx; +}; + +struct arm_smmu_smr { + u16 mask; + u16 id; + bool valid; + bool pinned; +}; + struct arm_smmu_device { struct device *dev;