From patchwork Fri May 18 10:31:24 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Ulf Hansson X-Patchwork-Id: 136281 Delivered-To: patches@linaro.org Received: by 2002:a2e:9706:0:0:0:0:0 with SMTP id r6-v6csp1056585lji; Fri, 18 May 2018 03:31:51 -0700 (PDT) X-Received: by 2002:a19:a70f:: with SMTP id q15-v6mr10060839lfe.39.1526639511742; Fri, 18 May 2018 03:31:51 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1526639511; cv=none; d=google.com; s=arc-20160816; b=C7/BsTKINmkTG5bNnnZJ169xmGkJizFXrOK7rYm5T4UkK6aM05otFTcTDVrkAMmhMx KvJwcMOIc4A0my/CO9GjVqmhr/tA20lr2hYcdaTmQNJ44v9Dxk+Kc9RhWAvAJhooJTFD ejUXORLrpj0t6tqVhmMQAKtt2n4tYs2YXLxGGBdYJ4O64Bz30ZCMfBY5i4UsVLSl0KEy wkpU7soujwqxS9JQo9Kk/Xb9BTUfNhn+iAiuGNaHL7B6y5UUlUl9fE5goRQopM81VYiE Hp3hBlJxUFdQPBIfvM4xibjEncuzyN86TZ/qNxHClhqgqZEz3HCxHX/busby3acm2WWA L8ZQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature :arc-authentication-results; bh=mrlhryGd1zUtOvLg/ngqC5LqE3Y8XGBVqRFwggWHaTs=; b=vTKjE7wqBVDuFrSchNhhGH0OxNwCnuTnKufmUHAm4IwaoSenKsGMg3HdpPFmOlL6Lf 5zAo/0JeAUm3hi+EbBTluRAFmd8wVVT6MRnkJzZbgDIym7d3WjtoyKMp/HClOeaQG/Ex UXlpYLESw7kA9bq4j7WbEKauP4o9lf3rzvsSvTJUiJqS3v8lKGWdLDOMQ2a0gne2yh6l xjD/IotHj2U62929ibfRjDYNM0x3cT35Nd5TNvbX+C+EIyFneszX9v2uV/P8laJqweAH 7aFq6h1yAoYZriY2sIMsynuXbwi06EeNy7Txv7Z8FH+HkZAhnkACTQhY/86oDZyUQERg ibXA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=S+B602X/; spf=pass (google.com: domain of ulf.hansson@linaro.org designates 209.85.220.65 as permitted sender) smtp.mailfrom=ulf.hansson@linaro.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from mail-sor-f65.google.com (mail-sor-f65.google.com. [209.85.220.65]) by mx.google.com with SMTPS id y22-v6sor2006025lfb.88.2018.05.18.03.31.51 for (Google Transport Security); Fri, 18 May 2018 03:31:51 -0700 (PDT) Received-SPF: pass (google.com: domain of ulf.hansson@linaro.org designates 209.85.220.65 as permitted sender) client-ip=209.85.220.65; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=S+B602X/; spf=pass (google.com: domain of ulf.hansson@linaro.org designates 209.85.220.65 as permitted sender) smtp.mailfrom=ulf.hansson@linaro.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org 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=mrlhryGd1zUtOvLg/ngqC5LqE3Y8XGBVqRFwggWHaTs=; b=S+B602X/KlaCWP6uFlXFWrmH7FqhohWe3/D8x92HusdtLldYaRE5dNHWk6+tDLjw5C oYLPx+Xo29TLaZl3/QXuTkXBywtGOLhZMRhcGM7MgV1IhMqKuTmDVFtRCpmG/jUeV1Q9 I262o1K0k4KxyM0u1qXUJLFjbbC03HiUS2hC4= 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=mrlhryGd1zUtOvLg/ngqC5LqE3Y8XGBVqRFwggWHaTs=; b=RvbKzr1exqSkphgMUkAayFINOvUNkqkySDAowUpWXxJbYDCR2kVmf4GWLRJkqtmvkk tFJHxcgWdGue8UBeCKTa8KLeh8A2gSycXnl2diMeecpcUp4UtM92EPMZVJRNh5XL4pIW U6dX2Jg1GLl8O1BoWSqUHn2q0p2HzzeC9BluTrZWlCaryN52QPSQYGf3DXVMjAgvibVC 6zEj7GJ8p8foXug92mNaPjcvV6mFYSgO/WSii8OoMu7O2cqb3JLoG26H2e7xTeV5jwKB zZLAobvBteVtgB+OLK0RmqhR2MvYOB+f66ZyHIjue570Koz9IEQ1sG+lmdjcAbB6sSQZ 9APQ== X-Gm-Message-State: ALKqPwd+YOg02GMXClOCOILu5GMxOmAxR5tEeUGMLMX9N0wUWcTvcI7+ wJJYfKRJYn9kP8inx4AjiazhzZ6S X-Google-Smtp-Source: AB8JxZoSU9iG6mBQQ90xm13k33Urc/Ocnxvp2NGBAuipMgL7V/kLR5ZV9/9m953bZZMGjTSF1DXxZQ== X-Received: by 2002:a19:e99b:: with SMTP id j27-v6mr19990694lfk.93.1526639511483; Fri, 18 May 2018 03:31:51 -0700 (PDT) Return-Path: Received: from localhost.localdomain (h-158-174-22-210.NA.cust.bahnhof.se. [158.174.22.210]) by smtp.gmail.com with ESMTPSA id u14-v6sm393447lfk.55.2018.05.18.03.31.49 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 18 May 2018 03:31:50 -0700 (PDT) From: Ulf Hansson To: "Rafael J . Wysocki" , linux-pm@vger.kernel.org Cc: Ulf Hansson , Greg Kroah-Hartman , Jon Hunter , Geert Uytterhoeven , Todor Tomov , Rajendra Nayak , Viresh Kumar , Vincent Guittot , Kevin Hilman , linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-tegra@vger.kernel.org, Alex Deucher , =?utf-8?q?Christian_K=C3=B6?= =?utf-8?q?nig?= , David Zhou Subject: [PATCH 3/9] PM / Domains: Drop genpd as in-param for pm_genpd_remove_device() Date: Fri, 18 May 2018 12:31:24 +0200 Message-Id: <1526639490-12167-4-git-send-email-ulf.hansson@linaro.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1526639490-12167-1-git-send-email-ulf.hansson@linaro.org> References: <1526639490-12167-1-git-send-email-ulf.hansson@linaro.org> MIME-Version: 1.0 There is no need to pass a genpd struct to pm_genpd_remove_device(), as we already have the information about the PM domain (genpd) through the device structure. Additionally, we don't allow to remove a PM domain from a device, other than the one it may have assigned to it, so really it does not make sense to have a separate in-param for it. For these reason, drop it and update the current only call to pm_genpd_remove_device() from amdgpu_acp. Cc: Alex Deucher Cc: Christian König Cc: David (ChunMing) Zhou Signed-off-by: Ulf Hansson --- drivers/base/power/domain.c | 8 ++++---- drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c | 2 +- include/linux/pm_domain.h | 5 ++--- 3 files changed, 7 insertions(+), 8 deletions(-) -- 2.7.4 diff --git a/drivers/base/power/domain.c b/drivers/base/power/domain.c index d58aee3..f08fa15 100644 --- a/drivers/base/power/domain.c +++ b/drivers/base/power/domain.c @@ -1475,13 +1475,13 @@ static int genpd_remove_device(struct generic_pm_domain *genpd, /** * pm_genpd_remove_device - Remove a device from an I/O PM domain. - * @genpd: PM domain to remove the device from. * @dev: Device to be removed. */ -int pm_genpd_remove_device(struct generic_pm_domain *genpd, - struct device *dev) +int pm_genpd_remove_device(struct device *dev) { - if (!genpd || genpd != genpd_lookup_dev(dev)) + struct generic_pm_domain *genpd = genpd_lookup_dev(dev); + + if (!genpd) return -EINVAL; return genpd_remove_device(genpd, dev); diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c index a29362f..1255804 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c @@ -513,7 +513,7 @@ static int acp_hw_fini(void *handle) if (adev->acp.acp_genpd) { for (i = 0; i < ACP_DEVS ; i++) { dev = get_mfd_cell_dev(adev->acp.acp_cell[i].name, i); - ret = pm_genpd_remove_device(&adev->acp.acp_genpd->gpd, dev); + ret = pm_genpd_remove_device(dev); /* If removal fails, dont giveup and try rest */ if (ret) dev_err(dev, "remove dev from genpd failed\n"); diff --git a/include/linux/pm_domain.h b/include/linux/pm_domain.h index 79888fb..42e0d64 100644 --- a/include/linux/pm_domain.h +++ b/include/linux/pm_domain.h @@ -144,7 +144,7 @@ static inline struct generic_pm_domain_data *dev_gpd_data(struct device *dev) } int pm_genpd_add_device(struct generic_pm_domain *genpd, struct device *dev); -int pm_genpd_remove_device(struct generic_pm_domain *genpd, struct device *dev); +int pm_genpd_remove_device(struct device *dev); int pm_genpd_add_subdomain(struct generic_pm_domain *genpd, struct generic_pm_domain *new_subdomain); int pm_genpd_remove_subdomain(struct generic_pm_domain *genpd, @@ -167,8 +167,7 @@ static inline int pm_genpd_add_device(struct generic_pm_domain *genpd, { return -ENOSYS; } -static inline int pm_genpd_remove_device(struct generic_pm_domain *genpd, - struct device *dev) +static inline int pm_genpd_remove_device(struct device *dev) { return -ENOSYS; }