Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp761983ybt; Fri, 26 Jun 2020 10:55:48 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyPbAyCBwU4SXyTQ9QbSqzBztYyq2/q8rDEvBtmq5gVoio/CP9jck7k9poP/I+QYHgj6Nsk X-Received: by 2002:a17:906:ae56:: with SMTP id lf22mr3559635ejb.59.1593194148198; Fri, 26 Jun 2020 10:55:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1593194148; cv=none; d=google.com; s=arc-20160816; b=l4WJ1GC+gxyBTovGG/4a8kK96fTIuyxxVfAcvcRT8Tj76a2sPLKi2hfjTp4KaGCWJQ msYqh87jNranc+yKLz7U/T8suLQs9qoNefLKy7gddMOPL6LEbkB3roL+F69d9yCuBR8p mg8zF71qXZZGODc4PojJOSyw5J50CDlQd0agAHswvBVQhiEUUJkAFVkUJXzMnNQv0UDg XHnduavlGlaFr7zSUSlHrHQQYO1/vtjFTJcukTTCvjj66JxbjwVi+NEMnOMI9SzBMebR tB4VT3JtYyWGRPvZbD35gWKNAykSaBbM17/4JkrPAJ6HuQSepFnPbRdQU4kWOI9rE/1x 8mVw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dmarc-filter:dkim-signature; bh=xlfKejIeWCNOCmR4gQB4q+2NKMCwGd3A49MjSQpPeyE=; b=iW/qcWdSbtdSgCjIVDAhWRtT2tacEu1eN1K8WoB4jcw5IUvydNelHmnQNumP/TUmL+ EI9UdsJRFrkplgwfFBD3LARtGcjAUeJCKXpNV68+HdEZSDTeLITV54bipq5eYPMVG2ja TLVzksKn2z9UnAPdmlFrNNCRot0mh7AdBXF/vDooCpiarBpCLmLdj/SkAgatIMT99+YN +aFmAWVfzMkotQ+lA8Rga6nwB5GPbm45d/M4jiDbNcWe/Rb+rr8arHasaX74f5LKUlxN coPBMbZWO3Zc1/s1SnUvEUUeoEoVIfgi6EyFxSfP9IKuA0BRfoX+Mi3DIKadtQy47ND/ 0dWw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@mg.codeaurora.org header.s=smtp header.b=JxO0tHdC; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id f22si6914516edw.472.2020.06.26.10.55.24; Fri, 26 Jun 2020 10:55:48 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=fail header.i=@mg.codeaurora.org header.s=smtp header.b=JxO0tHdC; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726705AbgFZRxK (ORCPT + 99 others); Fri, 26 Jun 2020 13:53:10 -0400 Received: from m43-7.mailgun.net ([69.72.43.7]:22938 "EHLO m43-7.mailgun.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726687AbgFZRxJ (ORCPT ); Fri, 26 Jun 2020 13:53:09 -0400 DKIM-Signature: a=rsa-sha256; v=1; c=relaxed/relaxed; d=mg.codeaurora.org; q=dns/txt; s=smtp; t=1593193989; h=Message-Id: Date: Subject: Cc: To: From: Sender; bh=xlfKejIeWCNOCmR4gQB4q+2NKMCwGd3A49MjSQpPeyE=; b=JxO0tHdCyTUgpy2qftxuiM+Omztzusx09aL6hCTAABnXQc5ITJ8RgmXjlu8cQ64WF1AJZO4r ZqcJ2ptFHgqZqAKTdOL/Y/5JgEx5pTdGCrqKhEJ1EXpbsENetPr8cqqNdYZfs3fgi6i6Jk/j vvr8UT5lKmZICpGD14FoGf35Hws= X-Mailgun-Sending-Ip: 69.72.43.7 X-Mailgun-Sid: WyI3YTAwOSIsICJsaW51eC13aXJlbGVzc0B2Z2VyLmtlcm5lbC5vcmciLCAiYmU5ZTRhIl0= Received: from smtp.codeaurora.org (ec2-35-166-182-171.us-west-2.compute.amazonaws.com [35.166.182.171]) by smtp-out-n02.prod.us-east-1.postgun.com with SMTP id 5ef6360586de6ccd44c0c04d (version=TLS1.2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256); Fri, 26 Jun 2020 17:53:09 GMT Received: by smtp.codeaurora.org (Postfix, from userid 1001) id 8C991C433C6; Fri, 26 Jun 2020 17:53:08 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-caf-mail-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=2.0 tests=ALL_TRUSTED,SPF_NONE autolearn=unavailable autolearn_force=no version=3.4.0 Received: from pillair-linux.qualcomm.com (blr-c-bdr-fw-01_GlobalNAT_AllZones-Outside.qualcomm.com [103.229.19.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: pillair) by smtp.codeaurora.org (Postfix) with ESMTPSA id 9BE87C433C8; Fri, 26 Jun 2020 17:53:06 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org 9BE87C433C8 Authentication-Results: aws-us-west-2-caf-mail-1.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: aws-us-west-2-caf-mail-1.web.codeaurora.org; spf=none smtp.mailfrom=pillair@codeaurora.org From: Rakesh Pillai To: ath10k@lists.infradead.org Cc: linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org, Rakesh Pillai Subject: [PATCH] ath10k: Register shutdown handler Date: Fri, 26 Jun 2020 23:23:01 +0530 Message-Id: <1593193981-30161-1-git-send-email-pillair@codeaurora.org> X-Mailer: git-send-email 2.7.4 Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org As a part of device shutdown the smmu driver will be stopped and henceforth any IOVA address translation will not be done. The wlan driver, being one of the smmu driver consumer, should stop all the dma related activity as a part of shutdown, and thereby ensuring that no dma activity is done once the smmu driver shuts down. During the device shutdown, the smmu calls shutdown for all its consumers in order to indicate them to stop all their dma activities. Register the shutdown handler to stop the wlan driver and avoid any dma operations. Tested-on: WCN3990 hw1.0 SNOC WLAN.HL.3.1-01040-QCAHLSWMTPLZ-1 Signed-off-by: Rakesh Pillai --- drivers/net/wireless/ath/ath10k/snoc.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/net/wireless/ath/ath10k/snoc.c b/drivers/net/wireless/ath/ath10k/snoc.c index 354d49b..645ed5f 100644 --- a/drivers/net/wireless/ath/ath10k/snoc.c +++ b/drivers/net/wireless/ath/ath10k/snoc.c @@ -1772,9 +1772,18 @@ static int ath10k_snoc_remove(struct platform_device *pdev) return 0; } +static void ath10k_snoc_shutdown(struct platform_device *pdev) +{ + struct ath10k *ar = platform_get_drvdata(pdev); + + ath10k_dbg(ar, ATH10K_DBG_SNOC, "snoc shutdown\n"); + ath10k_snoc_remove(pdev); +} + static struct platform_driver ath10k_snoc_driver = { .probe = ath10k_snoc_probe, .remove = ath10k_snoc_remove, + .shutdown = ath10k_snoc_shutdown, .driver = { .name = "ath10k_snoc", .of_match_table = ath10k_snoc_dt_match, -- 2.7.4