Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp2146094ybt; Fri, 3 Jul 2020 01:56:52 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzdiNrDnKXoMqOfMgU/huzPMdr83ZbjOUvkqoNH3eM7mu3geTWcMhM3lS8FT1+Z+bwP09VK X-Received: by 2002:aa7:d043:: with SMTP id n3mr40945058edo.102.1593766612748; Fri, 03 Jul 2020 01:56:52 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1593766612; cv=none; d=google.com; s=arc-20160816; b=zGWoIaxCPKRAFuuPAqdrPgWGfM2/c27JCfaoRvYK9xwWqp2G/mq+hmCSwbF6owFoXu UztSCX+7ZHWikRomBjn4JGjT3k2WgDZuULXTtYdj+6vv4c1QiqcHDeL5hCQT0VTrLXzd O0Z7bvu5jNj4a0WyH+0+2tzqQclRrZRzHx4rqZop3XW9T4xL0seKo9xC3G0r38Ptbd9d mGYwtTqEDL/wyBVKl8d3GEod6oShjnUESSuwpa5EWImzJlCF1U8Utha5GzaiZ2byYmwy xAKjUimAdcWX6qaIod8vTq2WZGnviViaasVkLz03cDg54W+CycqdDukwco3dQ0mwAYv6 idlQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature; bh=p8WFiVjLmVPpS5PevlndhZ530MlitNcSeEqWsFmmzog=; b=AdBXFycHqTcQ3GyQRJbilM14tQOBcNL0YVDNfiNha8skH6KbO0kszyAhktj0llhsl7 m1YalFDZzj63iuqKC9h6kUFKd4UmWCmqOSB9+oIZeLMXDOnR4teDRJUOzrBH4s3guEl8 T+2kjL4z5B3QBkp2upr8bqHwwFGvB0fUUsneYs9rSV+J8iajYA9RFq+WwIW9DUS5ahhi hSCh3m70Ah/HKnDcPgG6EDnm75AEUL6sOLMZ3CcRML9+ZdTlHfgqcnLrnd06b67vPSTJ IJw5AavqME12aB/tLAgAydmK3jATerjzThvla0i84H7Gck+QQyHmbYVLV9/mo1UnJPyE f3jA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=UvOQ2AGY; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-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 o21si7280952ejb.37.2020.07.03.01.56.29; Fri, 03 Jul 2020 01:56:52 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-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=UvOQ2AGY; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-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 S1726244AbgGCIxb (ORCPT + 99 others); Fri, 3 Jul 2020 04:53:31 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47974 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726184AbgGCIx2 (ORCPT ); Fri, 3 Jul 2020 04:53:28 -0400 Received: from mail-wm1-x344.google.com (mail-wm1-x344.google.com [IPv6:2a00:1450:4864:20::344]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CE0BFC08C5DD for ; Fri, 3 Jul 2020 01:53:27 -0700 (PDT) Received: by mail-wm1-x344.google.com with SMTP id l17so31298199wmj.0 for ; Fri, 03 Jul 2020 01:53:27 -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=p8WFiVjLmVPpS5PevlndhZ530MlitNcSeEqWsFmmzog=; b=UvOQ2AGYQsTWQAF7d27PvZa/2GDvllXMrGI4ZrUBhv48EF7sRFGe57nPEC0RcvqgZ+ uF3df68BntrYSEYXhoqsJjLi2AHwDhLY9hS5PTbm6waUGX/F8aahXKUjM/icL5BlEfq0 GUnmKwQLsaMcyjj5UkU82dNHmDO4b97xlbWI8IHyWrIt1L2jYkGOTfoLjGkY4d+eDtQA OxJAA0EvgHdgrGHW7nkJJ3na0xbSEmCr9uwxSdqJ6VBq0Tt+M51XuMUHEwhua00s3ksw R2Xhra1KyslJyyrbHCmOrMd6lSIXjlXQMU6odWJShU7FNlc6e/xyfSLMyd24xilGATOV EmUQ== 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; bh=p8WFiVjLmVPpS5PevlndhZ530MlitNcSeEqWsFmmzog=; b=JC+MrHi9Y2TCVsXWZeSeIjNxMsqWduE8IlJnLGY1s3k95ULqAOZQjwgG1WTV7LGx0G CfvWIQbbEX4C/lyg8mug4MaD9MJmm4tn/IyAl6MKbjCmM2roenMoj6PmmI0s5xgt+fl9 6t30ECvdSWY3U+iMcYR430jziYsyr47F3XN/9KojFrCgFI+bOVChDlzncK84fOiONBKo hLf91LZfmLEX0RojXHelxVAYkJFUQoJ48qr4jmiN3g5ho3oqJqKQFJ3v7IHIXwWDPxI+ sYO97MxS1ZQcPAxMMpZ2jAOtpACMWae+WbsmZ1DjelLI6BL5gMKcBExlE24b2oivSK/u HpiA== X-Gm-Message-State: AOAM531ZDmMlVXpsHZb+GBL10GdXPluiBprgybbrCgziiiZzxQ5ecFQa Qw9UWQbHgntRhcuNdfDzoZcjFg== X-Received: by 2002:a1c:7204:: with SMTP id n4mr28098059wmc.9.1593766406490; Fri, 03 Jul 2020 01:53:26 -0700 (PDT) Received: from localhost.localdomain (lns-bzn-59-82-252-131-168.adsl.proxad.net. [82.252.131.168]) by smtp.gmail.com with ESMTPSA id z6sm12543611wmf.33.2020.07.03.01.53.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 03 Jul 2020 01:53:25 -0700 (PDT) From: Daniel Lezcano To: rui.zhang@intel.com, daniel.lezcano@linaro.org Cc: srinivas.pandruvada@linux.intel.com, rkumbako@codeaurora.org, amit.kucheria@linaro.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org Subject: [PATCH v3 2/4] thermal: core: Get thermal zone by id Date: Fri, 3 Jul 2020 10:53:07 +0200 Message-Id: <20200703085309.32166-2-daniel.lezcano@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200703085309.32166-1-daniel.lezcano@linaro.org> References: <20200703085309.32166-1-daniel.lezcano@linaro.org> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The next patch will introduce the generic netlink protocol to handle events, sampling and command from the thermal framework. In order to deal with the thermal zone, it uses its unique identifier to characterize it in the message. Passing an integer is more efficient than passing an entire string. This change provides a function returning back a thermal zone pointer corresponding to the identifier passed as parameter. Signed-off-by: Daniel Lezcano Reviewed-by: Amit Kucheria --- drivers/thermal/thermal_core.c | 14 ++++++++++++++ drivers/thermal/thermal_core.h | 2 ++ 2 files changed, 16 insertions(+) diff --git a/drivers/thermal/thermal_core.c b/drivers/thermal/thermal_core.c index 9caaa0b6d662..5fae1621fb01 100644 --- a/drivers/thermal/thermal_core.c +++ b/drivers/thermal/thermal_core.c @@ -668,6 +668,20 @@ int for_each_thermal_zone(int (*cb)(struct thermal_zone_device *, void *), return ret; } +struct thermal_zone_device *thermal_zone_get_by_id(int id) +{ + struct thermal_zone_device *tz = NULL; + + mutex_lock(&thermal_list_lock); + list_for_each_entry(tz, &thermal_tz_list, node) { + if (tz->id == id) + break; + } + mutex_unlock(&thermal_list_lock); + + return tz; +} + void thermal_zone_device_unbind_exception(struct thermal_zone_device *tz, const char *cdev_type, size_t size) { diff --git a/drivers/thermal/thermal_core.h b/drivers/thermal/thermal_core.h index 71d88dac0791..4f8389efaa62 100644 --- a/drivers/thermal/thermal_core.h +++ b/drivers/thermal/thermal_core.h @@ -50,6 +50,8 @@ int for_each_thermal_cooling_device(int (*cb)(struct thermal_cooling_device *, int for_each_thermal_governor(int (*cb)(struct thermal_governor *, void *), void *thermal_governor); +struct thermal_zone_device *thermal_zone_get_by_id(int id); + struct thermal_attr { struct device_attribute attr; char name[THERMAL_NAME_LENGTH]; -- 2.17.1