From patchwork Fri Sep 25 11:57:15 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lucas Stach X-Patchwork-Id: 7263751 Return-Path: X-Original-To: patchwork-dri-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 43ECA9F380 for ; Fri, 25 Sep 2015 11:58:38 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 6EAAF20A6D for ; Fri, 25 Sep 2015 11:58:37 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id 34D3B20A74 for ; Fri, 25 Sep 2015 11:58:34 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id C5C38A53F; Fri, 25 Sep 2015 04:58:09 -0700 (PDT) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from metis.ext.pengutronix.de (metis.ext.4.pengutronix.de [92.198.50.35]) by gabe.freedesktop.org (Postfix) with ESMTPS id D7DF96F09B for ; Fri, 25 Sep 2015 04:58:04 -0700 (PDT) Received: from weser.hi.4.pengutronix.de ([10.1.0.109] helo=weser.pengutronix.de.) by metis.ext.pengutronix.de with esmtp (Exim 4.80) (envelope-from ) id 1ZfRdZ-0004Em-UK; Fri, 25 Sep 2015 13:58:01 +0200 From: Lucas Stach To: Russell King , Christian Gmeiner Subject: [PATCH 03/48] staging: etnaviv: remove compat MMU code Date: Fri, 25 Sep 2015 13:57:15 +0200 Message-Id: <1443182280-15868-4-git-send-email-l.stach@pengutronix.de> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1443182280-15868-1-git-send-email-l.stach@pengutronix.de> References: <20150916080435.GA21084@n2100.arm.linux.org.uk> <1443182280-15868-1-git-send-email-l.stach@pengutronix.de> X-SA-Exim-Connect-IP: 10.1.0.109 X-SA-Exim-Mail-From: l.stach@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: dri-devel@lists.freedesktop.org Cc: dri-devel@lists.freedesktop.org X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP There is no point in keeping backwards compatibility to older kernel versions in a driver destined to mainline. May squash this patch into "staging: etnaviv: restructure iommu handling" Signed-off-by: Lucas Stach --- drivers/staging/etnaviv/etnaviv_iommu.c | 33 +++------------------------------ 1 file changed, 3 insertions(+), 30 deletions(-) diff --git a/drivers/staging/etnaviv/etnaviv_iommu.c b/drivers/staging/etnaviv/etnaviv_iommu.c index 5735319215a3..8f92578ea3ee 100644 --- a/drivers/staging/etnaviv/etnaviv_iommu.c +++ b/drivers/staging/etnaviv/etnaviv_iommu.c @@ -20,16 +20,11 @@ #include #include #include -#include #include "etnaviv_gpu.h" #include "etnaviv_iommu.h" #include "state_hi.xml.h" -#if LINUX_VERSION_CODE < KERNEL_VERSION(4,1,0) -#define OLD_IOMMU -#endif - #define PT_SIZE SZ_512K #define PT_ENTRIES (PT_SIZE / sizeof(uint32_t)) @@ -126,33 +121,17 @@ static int __etnaviv_iommu_init(struct etnaviv_iommu_domain *etnaviv_domain) return 0; } -static void __etnaviv_iommu_free(struct etnaviv_iommu_domain *etnaviv_domain) +static void etnaviv_domain_free(struct iommu_domain *domain) { - pgtable_free(&etnaviv_domain->pgtable, PT_SIZE); + struct etnaviv_iommu_domain *etnaviv_domain = to_etnaviv_domain(domain); + pgtable_free(&etnaviv_domain->pgtable, PT_SIZE); dma_free_coherent(etnaviv_domain->dev, SZ_4K, etnaviv_domain->bad_page_cpu, etnaviv_domain->bad_page_dma); - kfree(etnaviv_domain); } -#ifdef OLD_IOMMU -static void etnaviv_iommu_domain_destroy(struct iommu_domain *domain) -{ - struct etnaviv_iommu_domain *etnaviv_domain = domain->priv; - - __etnaviv_iommu_free(etnaviv_domain); - - domain->priv = NULL; -} -#else -static void etnaviv_domain_free(struct iommu_domain *domain) -{ - __etnaviv_iommu_free(to_etnaviv_domain(domain)); -} -#endif - static int etnaviv_iommu_map(struct iommu_domain *domain, unsigned long iova, phys_addr_t paddr, size_t size, int prot) { @@ -193,11 +172,7 @@ static phys_addr_t etnaviv_iommu_iova_to_phys(struct iommu_domain *domain, } static struct iommu_ops etnaviv_iommu_ops = { -#ifdef OLD_IOMMU - .domain_destroy = etnaviv_iommu_domain_destroy, -#else .domain_free = etnaviv_domain_free, -#endif .map = etnaviv_iommu_map, .unmap = etnaviv_iommu_unmap, .iova_to_phys = etnaviv_iommu_iova_to_phys, @@ -231,9 +206,7 @@ struct iommu_domain *etnaviv_iommu_domain_alloc(struct etnaviv_gpu *gpu) etnaviv_domain->dev = gpu->dev; -#ifndef OLD_IOMMU etnaviv_domain->domain.type = __IOMMU_DOMAIN_PAGING; -#endif etnaviv_domain->domain.ops = &etnaviv_iommu_ops; etnaviv_domain->domain.geometry.aperture_start = GPU_MEM_START; etnaviv_domain->domain.geometry.aperture_end = GPU_MEM_START + PT_ENTRIES * SZ_4K;