From patchwork Tue Mar 7 13:37:25 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Lezcano X-Patchwork-Id: 65518 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:5915:0:0:0:0:0 with SMTP id v21csp2448697wrd; Tue, 7 Mar 2023 06:07:21 -0800 (PST) X-Google-Smtp-Source: AK7set+wa1ygf3wIGKb3qY7UKSPLDhcGObBpGWf6D1icDxQci+wdnm0TMIraYTi3QabkLHNXF31n X-Received: by 2002:a62:3182:0:b0:617:bce6:f033 with SMTP id x124-20020a623182000000b00617bce6f033mr8078796pfx.14.1678198040950; Tue, 07 Mar 2023 06:07:20 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1678198040; cv=none; d=google.com; s=arc-20160816; b=Q42jtIieuOUtXCm5DZd6/MCX6ee/+cKmYY7FuEFjVbUfkzHd0bZ/Z47hFyZnQ7rdlc k0V90FUtpK/acblKsz5OHn87g2SqX9mRYimYYCyFDutuaFlwHqORzmMxQIlhktwGJTh5 1X8H1gOv+ofDkGv2m5v1nhqXAFhHM2FuMRIHEx2xab/5668F0YOAMVg0HcmiivfHWVzI Qv94xVy++jdBAmez5mjDR0IXBdUb2rJSxXLFZiE2CSm5kczB3y/VYANBl2epAnwy2muV 7zvYwWIAPk0f7bCQ9WqttEdDO3ExONbNKEpzDLBh/R3L7Jay6x8BKLwSvnmf/heVLorR a28A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=b5lJEnGWoR5daba7syY/YlJQMJlulw+k3BHuc1yDN1U=; b=s9PdrQ3B244CYZYwRhHKGE4SquDrZwRFpwZdvnzisyOQ94bMGlXWRAHR6ZCOKCjRqN YZtsuMy9b+R0NbAPHYd4jh5qwSdSVD6191EL736A3r9IJ9+dMTH7R75E9G9wMfmz7Wbe 0rIiNREsYoLEJQnS3Mqswueb+i2ohc3vMOtWnnZneusjP2tGVU/3t+0GH6sDJN6L+O/e eZ7F/iQKOJbqPAcsJzzGxVA9r3tu2VLdeU7TIIIQgEe5JBqmbSWWxwy8m3WPnKllPJwd zNRVIlwuph43bUeYgw1RKAqIwHdPi2qzAhNRZe0cSehmqWtaWx71mzYQqbcnv0/hdiHQ lP4g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=HNwN9xLj; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id 72-20020a62174b000000b005a8adf87826si10763551pfx.174.2023.03.07.06.07.07; Tue, 07 Mar 2023 06:07:20 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=HNwN9xLj; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 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 S230244AbjCGNiA (ORCPT + 99 others); Tue, 7 Mar 2023 08:38:00 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33538 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229832AbjCGNh6 (ORCPT ); Tue, 7 Mar 2023 08:37:58 -0500 Received: from mail-wr1-x42e.google.com (mail-wr1-x42e.google.com [IPv6:2a00:1450:4864:20::42e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 770A14EF8 for ; Tue, 7 Mar 2023 05:37:56 -0800 (PST) Received: by mail-wr1-x42e.google.com with SMTP id r18so12162598wrx.1 for ; Tue, 07 Mar 2023 05:37:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1678196275; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=b5lJEnGWoR5daba7syY/YlJQMJlulw+k3BHuc1yDN1U=; b=HNwN9xLjHkYN2k4XJ8+FCxhbozlsuAWJRVES03TTNWLuJDi7/D9zR0blvPsClZ4aJF dZVBH9kFIfyJNf3aBDJqkT/ANpEmjPCvvMpjtEVRpbSzXmJKheHZkXa/xF2aCcoUksQG /OHuCQKOOxEDZu67yNYMjHLCbqBQ7uQNupFZKwbvHiTGsnjdtceKUahaCVtpqEa0P5BL yZ7RFojSHhXPz0U3y2KlOY3Vnagf+/0/imHZ/YHPIsbGd+BtzVH9Jnb3EyKFJoEkIHb6 XMLn49DMTSr7koKc390uGmGAn0KPKhDsaY/9OjWfea4UP28n3QM7vmfL86Rfl69LBlQM 2f+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678196275; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=b5lJEnGWoR5daba7syY/YlJQMJlulw+k3BHuc1yDN1U=; b=N2SMO65mOwdZzYIMHR/z830PHUrR9bIWCtAeafyJHL4bQ5So0I1E6tpbAoMOy0M9SW IQtoq5ms9Eg6QqrOjTpSH/T0t7VFFlk2KUaAUJTxFEfbBz3nQq7av3cND1vEfF1bckuw HBx3dNPGrnTuBdj4LaYkioC6kWd6PsWYj0zy4e3SmY9bX0vegoCoVDMhXpl4kaJb6l75 ORtAwIBkVU/jSl3ogclf5620cemiaxTeyZHINA8GfAJ1ji0CoKHHT5xrWaCST3dAPpUC CnO5z+zNfXAYE8dKQ7J4nSQOn2w0uYv1nlgtTkov1oHUrdzcOrGvfrh0ghwfSMNFWA4c ITAg== X-Gm-Message-State: AO0yUKXDbZWlrYKydulbWgVgmSB7T8THewFe5S1b4j/sNo9J8XeLXQ/u YPA9M/z1AI92OR2Q0WcLSYIYGg== X-Received: by 2002:adf:e745:0:b0:2c5:a38f:ca3a with SMTP id c5-20020adfe745000000b002c5a38fca3amr13239879wrn.10.1678196274952; Tue, 07 Mar 2023 05:37:54 -0800 (PST) Received: from mai.box.freepro.com ([2a05:6e02:1041:c10:5ab9:1ac6:870d:35c]) by smtp.gmail.com with ESMTPSA id v5-20020a5d43c5000000b002c55de1c72bsm12311477wrr.62.2023.03.07.05.37.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Mar 2023 05:37:54 -0800 (PST) From: Daniel Lezcano To: daniel.lezcano@linaro.org, rafael@kernel.org Cc: rui.zhang@intel.com, amitk@kernel.org, Steven Rostedt , Amit Daniel Kachhap , Viresh Kumar , Lukasz Luba , Masami Hiramatsu , linux-pm@vger.kernel.org (open list:THERMAL), linux-kernel@vger.kernel.org (open list), linux-trace-kernel@vger.kernel.org (open list:TRACING) Subject: [PATCH v1 01/11] thermal/core: Relocate the traces definition in thermal directory Date: Tue, 7 Mar 2023 14:37:25 +0100 Message-Id: <20230307133735.90772-2-daniel.lezcano@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230307133735.90772-1-daniel.lezcano@linaro.org> References: <20230307133735.90772-1-daniel.lezcano@linaro.org> MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1759718188925984512?= X-GMAIL-MSGID: =?utf-8?q?1759718188925984512?= The traces are exported but only local to the thermal core code. On the other side, the traces take the thermal zone device structure as argument, thus they have to rely on the exported thermal.h header file. As we want to move the structure to the private thermal core header, first we have to relocate those traces to the same place as many drivers do. Cc: Steven Rostedt Suggested-by: Steven Rostedt Signed-off-by: Daniel Lezcano Reviewed-by: Steven Rostedt (Google) --- drivers/thermal/Makefile | 3 ++- drivers/thermal/cpufreq_cooling.c | 2 +- drivers/thermal/devfreq_cooling.c | 2 +- drivers/thermal/gov_fair_share.c | 2 +- drivers/thermal/gov_power_allocator.c | 2 +- drivers/thermal/gov_step_wise.c | 2 +- drivers/thermal/thermal_core.c | 2 +- drivers/thermal/thermal_helpers.c | 3 +-- .../events/thermal.h => drivers/thermal/thermal_trace.h | 6 ++++++ .../thermal/thermal_trace_ipa.h | 6 ++++++ 10 files changed, 21 insertions(+), 9 deletions(-) rename include/trace/events/thermal.h => drivers/thermal/thermal_trace.h (97%) rename include/trace/events/thermal_power_allocator.h => drivers/thermal/thermal_trace_ipa.h (96%) diff --git a/drivers/thermal/Makefile b/drivers/thermal/Makefile index eed300e83d48..058664bc3ec0 100644 --- a/drivers/thermal/Makefile +++ b/drivers/thermal/Makefile @@ -2,7 +2,7 @@ # # Makefile for sensor chip drivers. # - +CFLAGS_thermal_core.o := -I$(src) obj-$(CONFIG_THERMAL) += thermal_sys.o thermal_sys-y += thermal_core.o thermal_sysfs.o thermal_sys-y += thermal_trip.o thermal_helpers.o @@ -16,6 +16,7 @@ thermal_sys-$(CONFIG_THERMAL_OF) += thermal_of.o thermal_sys-$(CONFIG_THERMAL_ACPI) += thermal_acpi.o # governors +CFLAGS_gov_power_allocator.o := -I$(src) thermal_sys-$(CONFIG_THERMAL_GOV_FAIR_SHARE) += gov_fair_share.o thermal_sys-$(CONFIG_THERMAL_GOV_BANG_BANG) += gov_bang_bang.o thermal_sys-$(CONFIG_THERMAL_GOV_STEP_WISE) += gov_step_wise.o diff --git a/drivers/thermal/cpufreq_cooling.c b/drivers/thermal/cpufreq_cooling.c index 9f8b438fcf8f..65ef08b30334 100644 --- a/drivers/thermal/cpufreq_cooling.c +++ b/drivers/thermal/cpufreq_cooling.c @@ -23,7 +23,7 @@ #include #include -#include +#include "thermal_trace.h" /* * Cooling state <-> CPUFreq frequency diff --git a/drivers/thermal/devfreq_cooling.c b/drivers/thermal/devfreq_cooling.c index 24b474925cd6..262e62ab6cf2 100644 --- a/drivers/thermal/devfreq_cooling.c +++ b/drivers/thermal/devfreq_cooling.c @@ -20,7 +20,7 @@ #include #include -#include +#include "thermal_trace.h" #define SCALE_ERROR_MITIGATION 100 diff --git a/drivers/thermal/gov_fair_share.c b/drivers/thermal/gov_fair_share.c index aad7d5fe3a14..1ce5692151f5 100644 --- a/drivers/thermal/gov_fair_share.c +++ b/drivers/thermal/gov_fair_share.c @@ -11,7 +11,7 @@ */ #include -#include +#include "thermal_trace.h" #include "thermal_core.h" diff --git a/drivers/thermal/gov_power_allocator.c b/drivers/thermal/gov_power_allocator.c index 0eaf1527d3e3..3df2d440d73d 100644 --- a/drivers/thermal/gov_power_allocator.c +++ b/drivers/thermal/gov_power_allocator.c @@ -12,7 +12,7 @@ #include #define CREATE_TRACE_POINTS -#include +#include "thermal_trace_ipa.h" #include "thermal_core.h" diff --git a/drivers/thermal/gov_step_wise.c b/drivers/thermal/gov_step_wise.c index 31235e169c5a..f69c83e2992d 100644 --- a/drivers/thermal/gov_step_wise.c +++ b/drivers/thermal/gov_step_wise.c @@ -12,7 +12,7 @@ #include #include -#include +#include "thermal_trace.h" #include "thermal_core.h" diff --git a/drivers/thermal/thermal_core.c b/drivers/thermal/thermal_core.c index 46dedfe061df..cec72c6673a5 100644 --- a/drivers/thermal/thermal_core.c +++ b/drivers/thermal/thermal_core.c @@ -22,7 +22,7 @@ #include #define CREATE_TRACE_POINTS -#include +#include "thermal_trace.h" #include "thermal_core.h" #include "thermal_hwmon.h" diff --git a/drivers/thermal/thermal_helpers.c b/drivers/thermal/thermal_helpers.c index 9558339f5633..c41b1a5700a5 100644 --- a/drivers/thermal/thermal_helpers.c +++ b/drivers/thermal/thermal_helpers.c @@ -19,9 +19,8 @@ #include #include -#include - #include "thermal_core.h" +#include "thermal_trace.h" int get_tz_trend(struct thermal_zone_device *tz, int trip) { diff --git a/include/trace/events/thermal.h b/drivers/thermal/thermal_trace.h similarity index 97% rename from include/trace/events/thermal.h rename to drivers/thermal/thermal_trace.h index e58bf3072f32..459c8ce6cf3b 100644 --- a/include/trace/events/thermal.h +++ b/drivers/thermal/thermal_trace.h @@ -195,5 +195,11 @@ TRACE_EVENT(thermal_power_devfreq_limit, #endif /* CONFIG_DEVFREQ_THERMAL */ #endif /* _TRACE_THERMAL_H */ +#undef TRACE_INCLUDE_PATH +#define TRACE_INCLUDE_PATH . + +#undef TRACE_INCLUDE_FILE +#define TRACE_INCLUDE_FILE thermal_trace + /* This part must be outside protection */ #include diff --git a/include/trace/events/thermal_power_allocator.h b/drivers/thermal/thermal_trace_ipa.h similarity index 96% rename from include/trace/events/thermal_power_allocator.h rename to drivers/thermal/thermal_trace_ipa.h index 1c8fb95544f9..84568db5421b 100644 --- a/include/trace/events/thermal_power_allocator.h +++ b/drivers/thermal/thermal_trace_ipa.h @@ -84,5 +84,11 @@ TRACE_EVENT(thermal_power_allocator_pid, ); #endif /* _TRACE_THERMAL_POWER_ALLOCATOR_H */ +#undef TRACE_INCLUDE_PATH +#define TRACE_INCLUDE_PATH . + +#undef TRACE_INCLUDE_FILE +#define TRACE_INCLUDE_FILE thermal_trace_ipa + /* This part must be outside protection */ #include From patchwork Tue Mar 7 13:37:26 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Lezcano X-Patchwork-Id: 65506 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:5915:0:0:0:0:0 with SMTP id v21csp2436489wrd; Tue, 7 Mar 2023 05:45:15 -0800 (PST) X-Google-Smtp-Source: AK7set9zVeq3pRHjBPxu+3tbpSGTkYWCslkf0+3Ff71gFPj4kkBFzB37Wjz0fF83Lz29F6Fb1ANS X-Received: by 2002:a05:6402:1854:b0:4ac:b614:dd00 with SMTP id v20-20020a056402185400b004acb614dd00mr11653512edy.30.1678196714941; Tue, 07 Mar 2023 05:45:14 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1678196714; cv=none; d=google.com; s=arc-20160816; b=LKxNgLAdXdmp/t2ozQd64hQQncxZ3T2oeRaRS3AxZ0BiiTm8SsPzcJn6Bn1A1F+zsX L3nJhLvh//Yv7C7pm2zOh3jN5IFsjw+ekyoDoaZeRzZe+UkoTdcgUfd4rLLdt4pxUlAr OaV14eEXbh52Wh3Aed2xi1bNJGLLIBUJzcm+EnOxw5IGip0bQUk9H1TkexEtNhytCWR8 BwPDU4LXL4ipjLKDbrqU3IMbSTASsCqEiHGKnNTpn8tb84s+LET34MvysOqkydPQQ4KW DbG8vx22+glDpjrg3UaMclqFmT+VRO09+JYiNgTIbnh94mTdEXfssvgJxB3jxKXmOXfL ZbXA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=mIjogzcbB9NbNQDtYcUOxd5sO+Lh6rQ2yVngUMiZyBg=; b=AzHbOzWeI7f5CYqUxaFP1rz/z8jKcswROym0fSe/tbTm3d3QqYlpqOuiomQADkFLW1 vts5nS9tr1F7QitZ5SoD3c3Lwc9p4aFgJixGcNi+OxLiZFakUdNgGc159RS5OKHJs838 fTDC0irJahyP5PU77sll5NNx+zlEM8byGOwaMAgOxyPXKIK0HJH7j06WjcaRwNIFMIHx QsICyL3mfB63hmxIEeKXd2HPKi+++aO4EvM3AjQjAs0KTTukBEmvpnwOttrjmIHoW/0K pzUBJvKpdtsv7feIkSZAiiwNhCTZfhlLIicypbNvHsAOaH5MdHBxvq7o3N6MyeDLt30D mWeA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=YG5ga49p; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id f10-20020a056402160a00b004aaa653a74asi95702edv.596.2023.03.07.05.43.51; Tue, 07 Mar 2023 05:45:14 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=YG5ga49p; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 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 S230365AbjCGNiC (ORCPT + 99 others); Tue, 7 Mar 2023 08:38:02 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33576 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230193AbjCGNh7 (ORCPT ); Tue, 7 Mar 2023 08:37:59 -0500 Received: from mail-wr1-x432.google.com (mail-wr1-x432.google.com [IPv6:2a00:1450:4864:20::432]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C9516976D for ; Tue, 7 Mar 2023 05:37:57 -0800 (PST) Received: by mail-wr1-x432.google.com with SMTP id e13so12119166wro.10 for ; Tue, 07 Mar 2023 05:37:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1678196276; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=mIjogzcbB9NbNQDtYcUOxd5sO+Lh6rQ2yVngUMiZyBg=; b=YG5ga49pJHXfSemMbf0p1srILRTv58YCHpLvV/P7+8IagzwrOhVhY7ZKGa0EYsmRo/ G2CoSa4u0ZEPOC0Vr70fZU1bQ41CO1Y4MMaxwuSbD7SbxOR1Dzpss8lJ/qrzohTOAMFs TWxHtI4ngmaSsg3tMPJcWKwjqdVjAyBsxhGaReWOJlZo4/jUDQVQSh+7eDi7aKiHqvWq Vs/+qJbWZzqKUHoiZSdeKb362nA3ACs5FJymKmMPaLPNbJgJYa34BxAVmMeOvtmasGxV EgAlVDdpg2jnHLSqMEooMAFjtMZYCMpfINVTeqnOeyNAxNeurKrrDromBo23nT+lHimD 0F5A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678196276; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=mIjogzcbB9NbNQDtYcUOxd5sO+Lh6rQ2yVngUMiZyBg=; b=a3uc/jx6d+ouo6E2LFpZdcTK8fE4MZ1FhhA1Vp0ZJcaj5yktPVJWbTjpsP4bo/H26M TW4RB2EdPpoKu9BT/DYY1toeYdJdIkPFNAP58GsRJj6USk9glE68Sq0u8YZcR3amjqpy +ho98qfKCHqhVExrAQRFECZJWTURGi8PLFpbH1MNbW1jbIAOVeqZwfFvduyHdNayW+5N cxyv+sC/UjxYyVHEDajR935Pa55Vmi5UaJ1i9iByCZZzBS3N5kSJhxdPwOFg08/fwqjB nqPOBq2lSRDKw60E9rB42G9QVL3RaZdB2DPe0OrKj49Lxz+xI2cL2pB/9rlUsygMETfz JrSg== X-Gm-Message-State: AO0yUKWs9n35/d1PBRmiLDAGHQDFBLzORumJ8INESI2uAIUNxJ2Woat7 s8fDIp0gm/sc3vd7Jfz70WySVg== X-Received: by 2002:a5d:5253:0:b0:2c5:5d21:7d4c with SMTP id k19-20020a5d5253000000b002c55d217d4cmr9400374wrc.43.1678196276323; Tue, 07 Mar 2023 05:37:56 -0800 (PST) Received: from mai.box.freepro.com ([2a05:6e02:1041:c10:5ab9:1ac6:870d:35c]) by smtp.gmail.com with ESMTPSA id v5-20020a5d43c5000000b002c55de1c72bsm12311477wrr.62.2023.03.07.05.37.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Mar 2023 05:37:56 -0800 (PST) From: Daniel Lezcano To: daniel.lezcano@linaro.org, rafael@kernel.org Cc: rui.zhang@intel.com, amitk@kernel.org, Jernej Skrabec , Adam Ward , Tim Zimmermann , linux-pm@vger.kernel.org (open list:THERMAL), linux-kernel@vger.kernel.org (open list) Subject: [PATCH v1 02/11] thermal/drivers/intel_pch_thermal: Use thermal driver device to write a trace Date: Tue, 7 Mar 2023 14:37:26 +0100 Message-Id: <20230307133735.90772-3-daniel.lezcano@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230307133735.90772-1-daniel.lezcano@linaro.org> References: <20230307133735.90772-1-daniel.lezcano@linaro.org> MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1759716798225624081?= X-GMAIL-MSGID: =?utf-8?q?1759716798225624081?= The pch_critical() callback accesses the thermal zone device structure internals, it dereferences the thermal zone struct device and the 'type'. For the former, the driver related device should be use instead and for the latter an accessor already exists. Use them instead of accessing the internals. Signed-off-by: Daniel Lezcano --- drivers/thermal/intel/intel_pch_thermal.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/thermal/intel/intel_pch_thermal.c b/drivers/thermal/intel/intel_pch_thermal.c index dce50d239357..0de46057db2a 100644 --- a/drivers/thermal/intel/intel_pch_thermal.c +++ b/drivers/thermal/intel/intel_pch_thermal.c @@ -127,7 +127,10 @@ static int pch_thermal_get_temp(struct thermal_zone_device *tzd, int *temp) static void pch_critical(struct thermal_zone_device *tzd) { - dev_dbg(&tzd->device, "%s: critical temperature reached\n", tzd->type); + struct pch_thermal_device *ptd = thermal_zone_device_priv(tzd); + + dev_dbg(&ptd->pdev->dev, "%s: critical temperature reached\n", + thermal_zone_device_type(tzd)); } static struct thermal_zone_device_ops tzd_ops = { From patchwork Tue Mar 7 13:37:27 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Lezcano X-Patchwork-Id: 65500 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:5915:0:0:0:0:0 with SMTP id v21csp2436027wrd; Tue, 7 Mar 2023 05:44:14 -0800 (PST) X-Google-Smtp-Source: AK7set+l3rHm51RLXmwTG6DCNHzaOWMzOOIHRM56UdjyVMPiHgntzHutPgrHTXnPVWsi6DYBWGs8 X-Received: by 2002:a17:906:ca5a:b0:8b2:abc7:1ef9 with SMTP id jx26-20020a170906ca5a00b008b2abc71ef9mr14618189ejb.68.1678196654591; Tue, 07 Mar 2023 05:44:14 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1678196654; cv=none; d=google.com; s=arc-20160816; b=n3BhSNgCOmioYb5iQLxenNnnzrXzO7JnQNwjJ7hhYA6bDLEPklEq6q0VA3QBQO8oxN UBy301RKEs1vx/NIvR3J05dUxkJT+PfmUTTuM09b9pop2UnIk4hvXpaeIDXQbO0PWR25 5GwqE32tCJ36U1Xb8RqY72G0HZHzDQFr+CubF1u7taIsHuHURESIaJvI9ZT3h522Vjyu 3XRm0UviP62dWAm3OY6GTyiaFg8rEQN+0Imy2xCqTGeOQ0tlYs979L0LEySS5zf2hAJy uZuR7eK0+srkG9h5P1auSy/jPNoX5X6LUXDThXnFqvxPM8UOvwqwcacNjhTaI1lCzogC YEYw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=nLUnfNdm2yVAS1wkgyhep1P3VK/E8L4MHqepWzvtV2A=; b=IubDOLXyDUcZVglAKZrr5QDTuhi+KnneAlXg5Zh6dR8nK7k8KlI1BkH2ucejLMk6ze 8VpbRGhfr4hdbFHUgpgnFpXihDUFr9ClZnX347jM8rBN4K3A+cfj24oXjjeBMJuZFd0a 8UQNHwlTHQMxbFiAbBTewXEEXjgFr7KqUlVIgZfwwRurGmfRXilX/ZFOW79DOWvKfvki zLFlJAfPV8CEC/ebY0cFxDLavmwD6LCiuV4At681AyvRF5xQZO9EV6crq5E/ZwjtdFIE QKxMmTb519M/N0Yy20ZQD4AICMUujE+ZyoIAmOZfFAv8PORx2TFJVJbA8PtNGntI5cy2 JYJw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=qKIJrWS9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id a7-20020aa7d907000000b004cfc2f60ca6si9477766edr.349.2023.03.07.05.43.51; Tue, 07 Mar 2023 05:44:14 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=qKIJrWS9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 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 S230509AbjCGNiG (ORCPT + 99 others); Tue, 7 Mar 2023 08:38:06 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33766 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229832AbjCGNiB (ORCPT ); Tue, 7 Mar 2023 08:38:01 -0500 Received: from mail-wr1-x42e.google.com (mail-wr1-x42e.google.com [IPv6:2a00:1450:4864:20::42e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id AEA93E076 for ; Tue, 7 Mar 2023 05:37:58 -0800 (PST) Received: by mail-wr1-x42e.google.com with SMTP id bw19so12117645wrb.13 for ; Tue, 07 Mar 2023 05:37:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1678196277; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=nLUnfNdm2yVAS1wkgyhep1P3VK/E8L4MHqepWzvtV2A=; b=qKIJrWS9HlseEtztfIrN6k80cK8FLhU5mOoTqsxRKIDDswm6hrdb/9FJXWSrtgL4Pm ZymY4A+L/FR0vKcMRpxJnpy3ko7ZviX2L3xB7TSfO4MkZ5K4R5T7I6j2QJO/IV2kfHfa xRqWqAfhDP64AdJkXBlw4aRFPruwVqGBE9ynzgRIdvtK8gIYV3EbAI7UtfctX4+wYbIN bMGDMVGkXtrCoEnJcQJBTZ58XDpIflI+VbB0IaYvqcKCQ/6UeWX4Am5pQ3QL1N23Kf+T qNq7IV3DjqUzZ5e0CsHVPgb0IYpSE/rwbzlDfi4qNQ1X4w8H8QslY8Sjm5y/QHleuooc 8giw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678196277; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=nLUnfNdm2yVAS1wkgyhep1P3VK/E8L4MHqepWzvtV2A=; b=UCuhCHmgXDRs6BMh+sgyuxB8Hgf1AhG6DZEojsi49XMrMycx03M/B4F3vGBLa/e1L4 jmFykb/95jD2tXtlVuu4/JkNAufJihURwFkFwJcKMNDVCVtFG8MKP0+spl8Znv3WTZuL sNCb9nL+RGgzrAtgjllh4/KXmHCJpnhix4A695RV4TYPI+sLzYJFEoO2Fr4eV9ddGxJe boELoqk84msP4hjowvj47jJ76iiYUGylynGjIUCalWsUE1jW5ep+uPeYE+VXEquxMZgq +JCSnpZwa5UuzCLBdHHY2rEr/Q8dshvdSwkghJeR+PVHIk1PCcyHM6b/f6aHCj9cZj0k tJBw== X-Gm-Message-State: AO0yUKWkvjik/k+P6OMUlL0UpsZSU0B0imimJZsQq4EanGY2DAbuFQ7s oCKU3es0V/klgVR4jQF09gX5fg== X-Received: by 2002:adf:e948:0:b0:2c7:478:d1d9 with SMTP id m8-20020adfe948000000b002c70478d1d9mr9055975wrn.33.1678196277140; Tue, 07 Mar 2023 05:37:57 -0800 (PST) Received: from mai.box.freepro.com ([2a05:6e02:1041:c10:5ab9:1ac6:870d:35c]) by smtp.gmail.com with ESMTPSA id v5-20020a5d43c5000000b002c55de1c72bsm12311477wrr.62.2023.03.07.05.37.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Mar 2023 05:37:56 -0800 (PST) From: Daniel Lezcano To: daniel.lezcano@linaro.org, rafael@kernel.org Cc: rui.zhang@intel.com, amitk@kernel.org, Sujith Thomas , linux-pm@vger.kernel.org (open list:INTEL MENLOW THERMAL DRIVER), linux-kernel@vger.kernel.org (open list) Subject: [PATCH v1 03/11] thermal/drivers/intel_menlow: Remove add_one_attribute Date: Tue, 7 Mar 2023 14:37:27 +0100 Message-Id: <20230307133735.90772-4-daniel.lezcano@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230307133735.90772-1-daniel.lezcano@linaro.org> References: <20230307133735.90772-1-daniel.lezcano@linaro.org> MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1759716735175858969?= X-GMAIL-MSGID: =?utf-8?q?1759716735175858969?= The driver hooks the thermal framework sysfs to add some driver specific information. A debatable approach as that may belong the device sysfs directory, not the thermal zone directory. As the driver is accessing the thermal internals, we should provide at least an API to the thermal framework to add an attribute to the existing sysfs thermal zone entry. Before doing that and given the age of the driver (2008) may be it is worth to double check if these attributes are really needed. So my first proposal is to remove them if that does not hurt. Signed-off-by: Daniel Lezcano --- drivers/thermal/intel/intel_menlow.c | 193 --------------------------- 1 file changed, 193 deletions(-) diff --git a/drivers/thermal/intel/intel_menlow.c b/drivers/thermal/intel/intel_menlow.c index 5a6ad0552311..5a9738a93083 100644 --- a/drivers/thermal/intel/intel_menlow.c +++ b/drivers/thermal/intel/intel_menlow.c @@ -230,174 +230,8 @@ struct intel_menlow_attribute { static LIST_HEAD(intel_menlow_attr_list); static DEFINE_MUTEX(intel_menlow_attr_lock); -/* - * sensor_get_auxtrip - get the current auxtrip value from sensor - * @handle: Object handle - * @index : GET_AUX1/GET_AUX0 - * @value : The address will be fill by the value - */ -static int sensor_get_auxtrip(acpi_handle handle, int index, - unsigned long long *value) -{ - acpi_status status; - - if ((index != 0 && index != 1) || !value) - return -EINVAL; - - status = acpi_evaluate_integer(handle, index ? GET_AUX1 : GET_AUX0, - NULL, value); - if (ACPI_FAILURE(status)) - return -EIO; - - return 0; -} - -/* - * sensor_set_auxtrip - set the new auxtrip value to sensor - * @handle: Object handle - * @index : GET_AUX1/GET_AUX0 - * @value : The value will be set - */ -static int sensor_set_auxtrip(acpi_handle handle, int index, int value) -{ - acpi_status status; - union acpi_object arg = { - ACPI_TYPE_INTEGER - }; - struct acpi_object_list args = { - 1, &arg - }; - unsigned long long temp; - - if (index != 0 && index != 1) - return -EINVAL; - - status = acpi_evaluate_integer(handle, index ? GET_AUX0 : GET_AUX1, - NULL, &temp); - if (ACPI_FAILURE(status)) - return -EIO; - if ((index && value < temp) || (!index && value > temp)) - return -EINVAL; - - arg.integer.value = value; - status = acpi_evaluate_integer(handle, index ? SET_AUX1 : SET_AUX0, - &args, &temp); - if (ACPI_FAILURE(status)) - return -EIO; - - /* do we need to check the return value of SAX0/SAX1 ? */ - - return 0; -} - -#define to_intel_menlow_attr(_attr) \ - container_of(_attr, struct intel_menlow_attribute, attr) - -static ssize_t aux_show(struct device *dev, struct device_attribute *dev_attr, - char *buf, int idx) -{ - struct intel_menlow_attribute *attr = to_intel_menlow_attr(dev_attr); - unsigned long long value; - int result; - - result = sensor_get_auxtrip(attr->handle, idx, &value); - if (result) - return result; - - return sprintf(buf, "%lu", deci_kelvin_to_celsius(value)); -} - -static ssize_t aux0_show(struct device *dev, - struct device_attribute *dev_attr, char *buf) -{ - return aux_show(dev, dev_attr, buf, 0); -} - -static ssize_t aux1_show(struct device *dev, - struct device_attribute *dev_attr, char *buf) -{ - return aux_show(dev, dev_attr, buf, 1); -} - -static ssize_t aux_store(struct device *dev, struct device_attribute *dev_attr, - const char *buf, size_t count, int idx) -{ - struct intel_menlow_attribute *attr = to_intel_menlow_attr(dev_attr); - int value; - int result; - - /*Sanity check; should be a positive integer */ - if (!sscanf(buf, "%d", &value)) - return -EINVAL; - - if (value < 0) - return -EINVAL; - - result = sensor_set_auxtrip(attr->handle, idx, - celsius_to_deci_kelvin(value)); - return result ? result : count; -} - -static ssize_t aux0_store(struct device *dev, - struct device_attribute *dev_attr, - const char *buf, size_t count) -{ - return aux_store(dev, dev_attr, buf, count, 0); -} - -static ssize_t aux1_store(struct device *dev, - struct device_attribute *dev_attr, - const char *buf, size_t count) -{ - return aux_store(dev, dev_attr, buf, count, 1); -} - /* BIOS can enable/disable the thermal user application in dabney platform */ #define BIOS_ENABLED "\\_TZ.GSTS" -static ssize_t bios_enabled_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - acpi_status status; - unsigned long long bios_enabled; - - status = acpi_evaluate_integer(NULL, BIOS_ENABLED, NULL, &bios_enabled); - if (ACPI_FAILURE(status)) - return -ENODEV; - - return sprintf(buf, "%s\n", bios_enabled ? "enabled" : "disabled"); -} - -static int intel_menlow_add_one_attribute(char *name, umode_t mode, void *show, - void *store, struct device *dev, - acpi_handle handle) -{ - struct intel_menlow_attribute *attr; - int result; - - attr = kzalloc(sizeof(struct intel_menlow_attribute), GFP_KERNEL); - if (!attr) - return -ENOMEM; - - sysfs_attr_init(&attr->attr.attr); /* That is consistent naming :D */ - attr->attr.attr.name = name; - attr->attr.attr.mode = mode; - attr->attr.show = show; - attr->attr.store = store; - attr->device = dev; - attr->handle = handle; - - result = device_create_file(dev, &attr->attr); - if (result) { - kfree(attr); - return result; - } - - mutex_lock(&intel_menlow_attr_lock); - list_add_tail(&attr->node, &intel_menlow_attr_list); - mutex_unlock(&intel_menlow_attr_lock); - - return 0; -} static acpi_status intel_menlow_register_sensor(acpi_handle handle, u32 lvl, void *context, void **rv) @@ -420,12 +254,6 @@ static acpi_status intel_menlow_register_sensor(acpi_handle handle, u32 lvl, if (ACPI_FAILURE(status)) return (status == AE_NOT_FOUND) ? AE_OK : status; - result = intel_menlow_add_one_attribute("aux0", 0644, - aux0_show, aux0_store, - &thermal->device, handle); - if (result) - return AE_ERROR; - status = acpi_get_handle(handle, GET_AUX1, &dummy); if (ACPI_FAILURE(status)) goto aux1_not_found; @@ -434,27 +262,6 @@ static acpi_status intel_menlow_register_sensor(acpi_handle handle, u32 lvl, if (ACPI_FAILURE(status)) goto aux1_not_found; - result = intel_menlow_add_one_attribute("aux1", 0644, - aux1_show, aux1_store, - &thermal->device, handle); - if (result) { - intel_menlow_unregister_sensor(); - return AE_ERROR; - } - - /* - * create the "dabney_enabled" attribute which means the user app - * should be loaded or not - */ - - result = intel_menlow_add_one_attribute("bios_enabled", 0444, - bios_enabled_show, NULL, - &thermal->device, handle); - if (result) { - intel_menlow_unregister_sensor(); - return AE_ERROR; - } - return AE_OK; aux1_not_found: From patchwork Tue Mar 7 13:37:28 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Lezcano X-Patchwork-Id: 65501 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:5915:0:0:0:0:0 with SMTP id v21csp2436044wrd; Tue, 7 Mar 2023 05:44:16 -0800 (PST) X-Google-Smtp-Source: AK7set/IF89sQGqb8/txeviIjCOK+RzJOAJKJiMTwLZs20jFFEberzy2s8Pcsvg5/Kf20rjA8InA X-Received: by 2002:a17:906:fe0c:b0:8b3:b74:aeb5 with SMTP id wy12-20020a170906fe0c00b008b30b74aeb5mr18593781ejb.30.1678196656775; Tue, 07 Mar 2023 05:44:16 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1678196656; cv=none; d=google.com; s=arc-20160816; b=toE05c4JlD9CAyaafidmeQ//mnUvujF9HakkaLkEjfqhiGnLJkJeci7MHfCskJKYo+ RuV49FTyQUEBqZ6jaSK7qAChoe/260vKXW6Arj0tCSyEX7VsbJLMvnaM0yNxxVzDRkWR o22r7EVa50VkflVbZkzBUZBUfM0uwOrvfc8HH0cdEiE/kPNRv2UAFG2YCEX5DKZ+UqcW 7sCEPmHjceAgqScehjQN5NBWqZ6w3tBd7IOk2Xu/4meub/sbWiiVzhHOfz90VAfEAPJU DuHxX2xWxIiY5Akcj4tYQsE4hCoComZ4/uhp4BQOXmbL9XUi9tjrxzgYsAvJoXryVKpG 3k4g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=tjVs2mfF+5OS1VMRPgk5J2R/XS+QKw7GSrWzqh0h9oE=; b=XEjCZOqSV4Qqyzt+l8R6Q7oBL07/e6yvvbBO/SuHhsH1S9a5o8ckGWlDmXXcUv1wfy eh7MsxBP3Kb8+p6S7KHf145xDxPh1BggICNLJ6mlMgF9J2TOqkbR3CFveHHkxktsCl64 1zp9zXPWhLW9lg/D/ki+n+JMAaSyTb2qyfM2hRQFocahtgrkBGSYWJ6OwtovA5dt5606 Oc6EJWAQlWT894Pu5XzWAi7niRdVFoQE3HrxvtrD0yRpPfmunsTOSlYZjUsoQH9Dt+aa 9vbhC5Jn/d/Exd7vQkdMUOfQdChnIR74oz55X/BVu6pcJTrnsLFw/ONreJgXj60u5gBX N2Qw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=nwuS1n1d; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id ga22-20020a1709070c1600b008caedbfc3b0si1965651ejc.755.2023.03.07.05.43.53; Tue, 07 Mar 2023 05:44:16 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=nwuS1n1d; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 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 S230341AbjCGNiJ (ORCPT + 99 others); Tue, 7 Mar 2023 08:38:09 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33830 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230320AbjCGNiC (ORCPT ); Tue, 7 Mar 2023 08:38:02 -0500 Received: from mail-wm1-x32d.google.com (mail-wm1-x32d.google.com [IPv6:2a00:1450:4864:20::32d]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8D0281025B for ; Tue, 7 Mar 2023 05:37:59 -0800 (PST) Received: by mail-wm1-x32d.google.com with SMTP id az36so7790736wmb.1 for ; Tue, 07 Mar 2023 05:37:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1678196278; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=tjVs2mfF+5OS1VMRPgk5J2R/XS+QKw7GSrWzqh0h9oE=; b=nwuS1n1dGQucPh2XKQbKMbOfHQRb0TXCyHjqV8hQgGiVYUnv0Z3JoxSW+QcolIIoIx KeP+LoD37PZSFj1miZWKNKd6cf47xdV05BRMhAyd0n+h7HXQ5MD0UA1CZUPtdge59bPX X3yl2i2+ZXMnPdjps2s4t/n8BjImhsnOmUzRdHGT4V8hSkxpcwZgpxakbO56kEjzLtNs e+aEFbPjVqMBaygI1zsl/2MZsMjItMSs3LTCaJyWJhb0sLDRFZXFOabMbcyVeapHf1k3 Ats2QvQeA8o4+B45RMyqkJNqoxVUdxPQKUgWlZ6VIYugABEn3NSbi5gHPXfxR2+mt6w5 PBtQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678196278; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=tjVs2mfF+5OS1VMRPgk5J2R/XS+QKw7GSrWzqh0h9oE=; b=sc6x5ncAGzz+Prz9w97Ix9dPqfEnxja+hh+FTSuxtMJ4tTnxiRK9zSkIJn7yLXCJhP qCH27xPe0FAJ9lL9KJM28fdbbw7g64mYKv7N+hWL+WB0evsOHZVV740PQLoM+PTAzLF5 Qj8WjohCC4ZveAAR3w8advIPYdV/AKJ2fasMJtm/5blJ0BLS3gFhqld++LzhWmmfnBGs qsWihpMHwMh3UZe+eml/S5NnbFMGgOly1dJmQe3mBojKbrRQG9hBm8Y8Er9F9CkYnETB gIA7v0oX26r1IAKmQM9ObE/xDaBEkOCj+gpS4BzNJftA6wnEUVABHOevmdpz3vY8mpa+ Dcgg== X-Gm-Message-State: AO0yUKUJ7bC5g4IgbQdz+KzNXp281DGT498Iz6gvu72OCDidLCyvQ4NW rWIaEnVM/rRtxT2hzNoUD36Id755ps6a9m37s/E= X-Received: by 2002:a05:600c:ad3:b0:3ea:e667:b1ee with SMTP id c19-20020a05600c0ad300b003eae667b1eemr12281365wmr.38.1678196277915; Tue, 07 Mar 2023 05:37:57 -0800 (PST) Received: from mai.box.freepro.com ([2a05:6e02:1041:c10:5ab9:1ac6:870d:35c]) by smtp.gmail.com with ESMTPSA id v5-20020a5d43c5000000b002c55de1c72bsm12311477wrr.62.2023.03.07.05.37.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Mar 2023 05:37:57 -0800 (PST) From: Daniel Lezcano To: daniel.lezcano@linaro.org, rafael@kernel.org Cc: rui.zhang@intel.com, amitk@kernel.org, Linus Walleij , linux-pm@vger.kernel.org (open list:THERMAL), linux-kernel@vger.kernel.org (open list) Subject: [PATCH v1 04/11] thermal/drivers/db8500: Use driver dev instead of tz->device Date: Tue, 7 Mar 2023 14:37:28 +0100 Message-Id: <20230307133735.90772-5-daniel.lezcano@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230307133735.90772-1-daniel.lezcano@linaro.org> References: <20230307133735.90772-1-daniel.lezcano@linaro.org> MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1759716737544577253?= X-GMAIL-MSGID: =?utf-8?q?1759716737544577253?= The db8500 driver uses the thermal zone device instead of the device attached to it. In order to prevent the drivers to access the thermal zone device structure, replace the thermal zone device by the driver to show the debug message. Cc: Linus Walleij Signed-off-by: Daniel Lezcano Reviewed-by: Linus Walleij --- drivers/thermal/db8500_thermal.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/thermal/db8500_thermal.c b/drivers/thermal/db8500_thermal.c index c0418497520c..de790e526ca5 100644 --- a/drivers/thermal/db8500_thermal.c +++ b/drivers/thermal/db8500_thermal.c @@ -53,6 +53,7 @@ static const unsigned long db8500_thermal_points[] = { struct db8500_thermal_zone { struct thermal_zone_device *tz; + struct device *dev; unsigned long interpolated_temp; unsigned int cur_index; }; @@ -114,7 +115,7 @@ static irqreturn_t prcmu_low_irq_handler(int irq, void *irq_data) idx -= 1; db8500_thermal_update_config(th, idx, next_low, next_high); - dev_dbg(&th->tz->device, + dev_dbg(th->dev, "PRCMU set max %ld, min %ld\n", next_high, next_low); thermal_zone_device_update(th->tz, THERMAL_EVENT_UNSPECIFIED); @@ -136,7 +137,7 @@ static irqreturn_t prcmu_high_irq_handler(int irq, void *irq_data) db8500_thermal_update_config(th, idx, next_low, next_high); - dev_dbg(&th->tz->device, + dev_dbg(th->dev, "PRCMU set max %ld, min %ld\n", next_high, next_low); } else if (idx == num_points - 1) /* So we roof out 1 degree over the max point */ @@ -157,6 +158,8 @@ static int db8500_thermal_probe(struct platform_device *pdev) if (!th) return -ENOMEM; + th->dev = dev; + low_irq = platform_get_irq_byname(pdev, "IRQ_HOTMON_LOW"); if (low_irq < 0) return low_irq; From patchwork Tue Mar 7 13:37:29 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Lezcano X-Patchwork-Id: 65502 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:5915:0:0:0:0:0 with SMTP id v21csp2436075wrd; Tue, 7 Mar 2023 05:44:21 -0800 (PST) X-Google-Smtp-Source: AK7set8rk7TXKL7VUe4vKFbCaZqj1uhJHVL7LymliYFy2RN+DOL0Acqz4BgRiC+VWaXlfbYRHgp8 X-Received: by 2002:a17:907:6e87:b0:8b0:f59e:ab1b with SMTP id sh7-20020a1709076e8700b008b0f59eab1bmr16311215ejc.75.1678196661023; Tue, 07 Mar 2023 05:44:21 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1678196661; cv=none; d=google.com; s=arc-20160816; b=i9wXab8xZsgdNj05zxf/Zrafkg7N1mzeO9bIRrIF54QXEzlzieMURfHoSb9+7HRHpx AVuDOS4s144E5dT7u73AVb6W8b32adFaKOSGXea86IPNVai1Qnzt1KXIUH3IlW6HhkBs at8i/MOuhEXeSEbYXya+V9tXtHgqQxVtBJp++FVx3Z94x+jFNnBKV8GVl0Yp3UEpkj6r ZK0fZrVWr7ZLYVSHTqIIP47r+T9VQ1pdYSQzE48Njy93Ymi9/EXybbn31SvbnHkBykmF njKrrG5RuA4WrYE3+cDoWVh1hmwdqES4S9u2tS5KyAdsXAsf4R6b4GErd3qobLHcpUnA O1AQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=QFz3DL0wcsZVMgUUsHXDAfK6kJlbLDI4poI1FgV3Faw=; b=u7SheuDdPABE6AphC7Y7+G01//yxdFs8thMfGLp4q+e19bbI7C4h8iGLHF94wm3U5k hwYP+LRy+phFBRA06o+RV1x1GqNrlCw6PNV7JN9vrG2nGreUzukQR3yz/deN+qfo8Ic+ aDhmiElJvU0UzwZMKB2P/qxY79bCZFpHiGLayKAR37tM/f9thsoX7JTkBAhF6fMzza+G gm7MxcEkC5NInZKX0onRBsixZnXOMbi00oPEZMvMbmrol6NxmXciGhvpT40XfA5jVBKC uYcRzkh5buj7aVNTt7Cwr+aZyG0pFgLFmoHxcFuHLzCgXZZJATqsKq0D52YUe4SWPD10 Omtg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=o+72SkNn; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id w23-20020a170906481700b008b17e1a54edsi1061750ejq.788.2023.03.07.05.43.57; Tue, 07 Mar 2023 05:44:21 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=o+72SkNn; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 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 S231184AbjCGNiN (ORCPT + 99 others); Tue, 7 Mar 2023 08:38:13 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34080 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229646AbjCGNiF (ORCPT ); Tue, 7 Mar 2023 08:38:05 -0500 Received: from mail-wr1-x42a.google.com (mail-wr1-x42a.google.com [IPv6:2a00:1450:4864:20::42a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D8FF7525D for ; Tue, 7 Mar 2023 05:38:00 -0800 (PST) Received: by mail-wr1-x42a.google.com with SMTP id f11so12137016wrv.8 for ; Tue, 07 Mar 2023 05:38:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1678196279; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=QFz3DL0wcsZVMgUUsHXDAfK6kJlbLDI4poI1FgV3Faw=; b=o+72SkNnGvUEZIoRxtbUn1yxoMbJK4ejWB7UdQfvn95oxQ1qGBRQkmTuvFIHCKSEQD 6V5Sb6way+IpVf1rC8Ts5ep1iztmQ7/B5Y21IzuyFDdX+ydu10oWZgvAd0kfo1C0jFU2 NXTAAd8/JNFFoLXX4Rcp6pauvrWKWmbMd1vPw7jlce/er2GgJSWLGuHD0rRIfYnu19Ml 4vgQqfv+uSE5DPvKzEY6foTsKhTkpPVp93OodQ6cgqwHb7g2vuwjKwmV3bpdPPwELa5m gZQr4IFv45Lh0vAKTshQ6V6mhjkdZSkHBM2U1mSk8lPzeCubKqrGFKAAhOLrd582PJub NIWQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678196279; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=QFz3DL0wcsZVMgUUsHXDAfK6kJlbLDI4poI1FgV3Faw=; b=1EiokEpdg5by8R0Z8Ml6fuiZUpfUgVY+MCQJdB76ujxQZFBpfId96rcoJQJTLkJcbv On458FEsH9Po+02f/JUn1SOdqyw/olAzriVUSGlluVMntvdcO3NXew6mtQw83SwKODef c1hg+xEcTqbdQkMBC3+EpAq0TLrK1ykAHuk8YQaPXuQzYup5RotodG4yYUJjeoYnf3Ts Mu+tb/mpmP5R8r60xV5yuuX2IX7h7jnq80hB4nGtO97HbM0kFIkQ29YHSeYR5pXza1yL JaXPhfZUixs6wLAcFyCdxHSbIM2yWetPaw6wtFyWyxmwFIR9GIqmz/L2JbB8iUPNHmbq jqVQ== X-Gm-Message-State: AO0yUKXDYBigAaoLdLUoKWuq5HHypKFGw4ZNG9VTHcwmZBAtuWYN3XH9 gTBYhY63Vg65zN9kLYl8j5EWyw== X-Received: by 2002:a5d:66ce:0:b0:2c7:8f73:7700 with SMTP id k14-20020a5d66ce000000b002c78f737700mr9276509wrw.39.1678196279346; Tue, 07 Mar 2023 05:37:59 -0800 (PST) Received: from mai.box.freepro.com ([2a05:6e02:1041:c10:5ab9:1ac6:870d:35c]) by smtp.gmail.com with ESMTPSA id v5-20020a5d43c5000000b002c55de1c72bsm12311477wrr.62.2023.03.07.05.37.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Mar 2023 05:37:59 -0800 (PST) From: Daniel Lezcano To: daniel.lezcano@linaro.org, rafael@kernel.org Cc: rui.zhang@intel.com, amitk@kernel.org, Maxime Coquelin , Alexandre Torgue , Florian Fainelli , =?utf-8?q?Niklas_S=C3=B6derlund?= , Minghao Chi , Mark Brown , linux-pm@vger.kernel.org (open list:THERMAL), linux-stm32@st-md-mailman.stormreply.com (moderated list:ARM/STM32 ARCHITECTURE), linux-arm-kernel@lists.infradead.org (moderated list:ARM/STM32 ARCHITECTURE), linux-kernel@vger.kernel.org (open list) Subject: [PATCH v1 05/11] thermal/drivers/stm: Don't set no_hwmon to false Date: Tue, 7 Mar 2023 14:37:29 +0100 Message-Id: <20230307133735.90772-6-daniel.lezcano@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230307133735.90772-1-daniel.lezcano@linaro.org> References: <20230307133735.90772-1-daniel.lezcano@linaro.org> MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1759716742192562792?= X-GMAIL-MSGID: =?utf-8?q?1759716742192562792?= The thermal->tzp->no_hwmon parameter is only used when calling thermal_zone_device_register(). Setting it to 'false' before calling thermal_add_hwmon_sysfs() has no effect. Remove the call and again prevent the drivers to access the thermal internals. Cc: Maxime Coquelin Cc: Alexandre Torgue Signed-off-by: Daniel Lezcano --- drivers/thermal/st/stm_thermal.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/thermal/st/stm_thermal.c b/drivers/thermal/st/stm_thermal.c index 6f2bad8ef82f..903fcf1763f1 100644 --- a/drivers/thermal/st/stm_thermal.c +++ b/drivers/thermal/st/stm_thermal.c @@ -558,7 +558,6 @@ static int stm_thermal_probe(struct platform_device *pdev) * Thermal_zone doesn't enable hwmon as default, * enable it here */ - sensor->th_dev->tzp->no_hwmon = false; ret = thermal_add_hwmon_sysfs(sensor->th_dev); if (ret) goto err_tz; From patchwork Tue Mar 7 13:37:30 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Lezcano X-Patchwork-Id: 65510 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:5915:0:0:0:0:0 with SMTP id v21csp2442882wrd; Tue, 7 Mar 2023 05:59:44 -0800 (PST) X-Google-Smtp-Source: AK7set/DD+L7b1RSuCcUt6P7DCmAKp0jRpGzf1GR7fUomVaA0PXCJYbBTOx7n5xJSH4w/czx1n3x X-Received: by 2002:a17:907:6092:b0:888:b471:8e46 with SMTP id ht18-20020a170907609200b00888b4718e46mr19595181ejc.50.1678197584630; Tue, 07 Mar 2023 05:59:44 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1678197584; cv=none; d=google.com; s=arc-20160816; b=eOD9N9vdl7qgyroEEWYsMcWsLRU7U5WZ8c+FdcvlXG0UERPGGW8ETOqu8r1/EcwQxS FmCjn1fsHFDuWK312FxKNYQfc7TDrmBj+2Gjd8WUUcVu3cdfygLIBjHJRLaNtuTeX0yY xD+D53GwaZyC/Cqptdg0aaI1rWU6tCVuiCg82fPhhJ7b4BkvlDMIBysQOGwUhD9SSxH6 c3Nbgy99gCIRdQOFoNf0a8kBUXMasfdtuK7OmP5dibQCm6cKN79ANHEO+WTMu6L2FiFG wW781hNC2kegAaNAAkoOBKzNDfCGF0ckludQ0l5R1zxDtJ0AZsTewc0kCmNXyNtWbHCA WxSg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=JdJDrqqtlUNFE/DFGXP1EExWYwWTrZ4sgoVgCOKRcHw=; b=PADR9lxUVKhGtbtm+LlA+OUuqQPKEV/1CcArljqPXq0YlhOcqTDxmgqlqtawYAzvBD 1Ik32yUWCtlwLS+6ldP7v+JtlSW4s2c7NXer2RYEYmS+IjKQFUfr4raSTnC0js3SI6tX /ee0B+Hl7AHOImNkaFrAaUSp202jij/P+GCHuj101ZLBObjViyuwdqibIVUve4KwmLOk 4I/StSl4w9JvHFibUsKCsNBX35J4rzhtTyxLxtpKXnHusD40k6P1kLhBrP9suBd+k1N2 DcGbVIAqhqE6kFTecxwXcSfsiIL4Q3PKoNw50Nw8BI7N9CGruLGmNeZ5Rv0URgTc4AOX cRFg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="V4DzUa/C"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id nd32-20020a17090762a000b008da033ef977si3307806ejc.731.2023.03.07.05.59.08; Tue, 07 Mar 2023 05:59:44 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="V4DzUa/C"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 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 S231217AbjCGNiR (ORCPT + 99 others); Tue, 7 Mar 2023 08:38:17 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34082 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229929AbjCGNiF (ORCPT ); Tue, 7 Mar 2023 08:38:05 -0500 Received: from mail-wr1-x430.google.com (mail-wr1-x430.google.com [IPv6:2a00:1450:4864:20::430]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id F09D823D91 for ; Tue, 7 Mar 2023 05:38:01 -0800 (PST) Received: by mail-wr1-x430.google.com with SMTP id v16so12210016wrn.0 for ; Tue, 07 Mar 2023 05:38:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1678196280; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=JdJDrqqtlUNFE/DFGXP1EExWYwWTrZ4sgoVgCOKRcHw=; b=V4DzUa/CJXmEKyz8Xpy8/QGIKXBudu8ASEL6k8YrDJZSBCz38x5ZOffeZtMUdO57ki ITJyzDUh1dSdl8jwqFsAXbKJwIkdCxzK52vv1w3ry+4IgzfMQ7NpjyrwZyoj/9KFpGRf e35A86LQwKNWwcNbSCrCCHdHghj0uj5f5EYTQ/eefhnk1XIuhrNifsMUylxxf5OiWN60 M/aUUCIWGaINg+xt7BMcqrewBKIv2hSmM97nsqNxjEOAUZiAMsSjGFBVIgE8G/708Xh+ W0TiVoin/cQPePlabFlMqdwQftivwZqIYmq3lMpkQ9xkG9gEzBMkhA0C/yFM+K34lIUb x0uw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678196280; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=JdJDrqqtlUNFE/DFGXP1EExWYwWTrZ4sgoVgCOKRcHw=; b=WIqsDOxCSI8DdHeJQe3/aaoqlYIdXmRjt8wxRir+/kBwWwL/kpVPQGlhU5l1Cr90Gv kECxecgtddNOuGsyVI8y0wtC56tn9B111Em+pdWA8EZD3hoq+8Mp/ls1wb3ujrIJcV+U 66UW2i4R0izMWSsugTyw7H0mRQ+KqQOQs9+syqnii/FeJeZdQvUn5Xo+MlgDcHB5uB4l 2+w2aXi/WW766TV+g0xAijlWtw7dxqwkrrKuImy1Ng6IMCCm6edzWrYp251hRTJpruvS IzuBhgaYGt1ALBoubJNQCmRa6ZPo1XWhogt2JLQtfp8v9WZLeJ7YnIGVKcHnqyarCLFr Mogg== X-Gm-Message-State: AO0yUKVBLksdU6ghjJ+teiIxsnSjcc1ncoO28NWQ7W7qJJgJ4E0vEgLC nWChYZQxHFkeV8EAewVyY6uI4Q== X-Received: by 2002:adf:f70d:0:b0:2c7:c9e:2c41 with SMTP id r13-20020adff70d000000b002c70c9e2c41mr9490477wrp.57.1678196280284; Tue, 07 Mar 2023 05:38:00 -0800 (PST) Received: from mai.box.freepro.com ([2a05:6e02:1041:c10:5ab9:1ac6:870d:35c]) by smtp.gmail.com with ESMTPSA id v5-20020a5d43c5000000b002c55de1c72bsm12311477wrr.62.2023.03.07.05.37.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Mar 2023 05:37:59 -0800 (PST) From: Daniel Lezcano To: daniel.lezcano@linaro.org, rafael@kernel.org Cc: rui.zhang@intel.com, amitk@kernel.org, Keerthy , Eduardo Valentin , linux-pm@vger.kernel.org (open list:TI BANDGAP AND THERMAL DRIVER), linux-omap@vger.kernel.org (open list:TI BANDGAP AND THERMAL DRIVER), linux-kernel@vger.kernel.org (open list) Subject: [PATCH v1 06/11] thermal/drivers/ti: Use fixed update interval Date: Tue, 7 Mar 2023 14:37:30 +0100 Message-Id: <20230307133735.90772-7-daniel.lezcano@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230307133735.90772-1-daniel.lezcano@linaro.org> References: <20230307133735.90772-1-daniel.lezcano@linaro.org> MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1759717697654835521?= X-GMAIL-MSGID: =?utf-8?q?1759717710765229743?= Currently the TI thermal driver sets the sensor update interval based on the polling of the thermal zone. In order to get the polling rate, the code inspects the thermal zone device strcuture internals, thus breaking the self-encapsulation of the thermal framework core framework. On the other side, we see the common polling rates set in the device tree for the platforms using this driver are 500 or 1000 ms. Setting the polling rate to 250 ms would be far enough to cover the combination we found in the device tree. Instead of accessing the thermal zone device structure polling rate, let's use a common update interval of 250 ms for the driver. Cc: Keerthy Signed-off-by: Daniel Lezcano Reviewed-by: Dhruva Gole --- drivers/thermal/ti-soc-thermal/ti-thermal-common.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/thermal/ti-soc-thermal/ti-thermal-common.c b/drivers/thermal/ti-soc-thermal/ti-thermal-common.c index 0c8914017c18..430c4b43151f 100644 --- a/drivers/thermal/ti-soc-thermal/ti-thermal-common.c +++ b/drivers/thermal/ti-soc-thermal/ti-thermal-common.c @@ -23,6 +23,8 @@ #include "ti-bandgap.h" #include "../thermal_hwmon.h" +#define TI_BANDGAP_UPDATE_INTERVAL_MS 250 + /* common data structures */ struct ti_thermal_data { struct cpufreq_policy *policy; @@ -159,7 +161,6 @@ int ti_thermal_expose_sensor(struct ti_bandgap *bgp, int id, char *domain) { struct ti_thermal_data *data; - int interval; data = ti_bandgap_get_sensor_data(bgp, id); @@ -177,10 +178,9 @@ int ti_thermal_expose_sensor(struct ti_bandgap *bgp, int id, return PTR_ERR(data->ti_thermal); } - interval = jiffies_to_msecs(data->ti_thermal->polling_delay_jiffies); - ti_bandgap_set_sensor_data(bgp, id, data); - ti_bandgap_write_update_interval(bgp, data->sensor_id, interval); + ti_bandgap_write_update_interval(bgp, data->sensor_id, + TI_BANDGAP_UPDATE_INTERVAL_MS); if (devm_thermal_add_hwmon_sysfs(bgp->dev, data->ti_thermal)) dev_warn(bgp->dev, "failed to add hwmon sysfs attributes\n"); From patchwork Tue Mar 7 13:37:31 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Lezcano X-Patchwork-Id: 65503 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:5915:0:0:0:0:0 with SMTP id v21csp2436128wrd; Tue, 7 Mar 2023 05:44:28 -0800 (PST) X-Google-Smtp-Source: AK7set+2i0XnmXXYZe/UO1dEVjluW4Y9k+dpgHnK0y9B9Wc0nnhGIVrZOZmviaG+mrvXYc2Xluki X-Received: by 2002:a17:906:ce39:b0:8aa:f2f2:7543 with SMTP id sd25-20020a170906ce3900b008aaf2f27543mr14508209ejb.29.1678196668416; Tue, 07 Mar 2023 05:44:28 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1678196668; cv=none; d=google.com; s=arc-20160816; b=zUn1UP/imK2KL77+fzFfIv8uzlN1to5hEmrvY1ybWloiOZHlRykaJ2czPL2vWAKDCc pUm8rGE8f+AeE0hfiqIQaA0zmA5U26zuanh2ttQ4EftRw4oS9ftqy7tat8Yzig54Drh6 PZrVqlDTiMBwMacp2MtNysSPWg4IpxKSU1kBS4Orq7cgDHkxRCGpwR0bTi/3kmA5g5d9 BGvCiwDrNRfRvthjL9kRm5GWYywyuQqnG99bC6i5AyD2id6fMw9HCRWvA+GE8e/Glbf+ 7uMDbDXz9q+CeMYria9H8iCZnu9TzLNv+sdc0YA4qjyF4lOh4j6weg1Xp8JHkdNOkgKp maTA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=fpDMcBBLQyF8LgqHxboWMTUnYVwMKYwzb0k+I2z6s1c=; b=rouiO8eJMYnnRb1tvFcUrDYCKuKVW1ny+14snGlz4Ow8Hnrmebv2Q97RZJM3Bi98gd qy4lzFvLve+s+iQl4cjrsXQpXIICWJ5lSy8JwugP+q/KYcGJ/DdZVP5cDeXCPQemeZOH f/+ogp8GnrPFAHXeuGcevNfTUPJbQwe1uk5JQDiEv1dBS9hCtBJ3C2HJhhLxBQnT7rgM 5u+0PljOyiWbpQA6E0eU/iZsRFxfJOzWB3xhon8qCI7QbBL2WXeqr28CRIpZSMAdJuRy WS0n+R8DHarh0nmurisx7WzkfccNKImsxtzDXSFngEZBIt5o5SkgnzLgq4jZtWuarqOV aoYQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=lisF83Ax; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id u24-20020a170906951800b008dbed6ec6c2si2329553ejx.578.2023.03.07.05.44.04; Tue, 07 Mar 2023 05:44:28 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=lisF83Ax; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 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 S231240AbjCGNiU (ORCPT + 99 others); Tue, 7 Mar 2023 08:38:20 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34130 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230394AbjCGNiF (ORCPT ); Tue, 7 Mar 2023 08:38:05 -0500 Received: from mail-wr1-x431.google.com (mail-wr1-x431.google.com [IPv6:2a00:1450:4864:20::431]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 851C12411F for ; Tue, 7 Mar 2023 05:38:02 -0800 (PST) Received: by mail-wr1-x431.google.com with SMTP id h11so12146524wrm.5 for ; Tue, 07 Mar 2023 05:38:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1678196281; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=fpDMcBBLQyF8LgqHxboWMTUnYVwMKYwzb0k+I2z6s1c=; b=lisF83AxJvSh6DA0RlrtTx09wKFawmHLIpSEn4KF0rznqL5TJpY1E9n2PY4Sfo9+QG uh7WuzJnm7J3PM/cwsJxcDK6N7kD6x+WmDK3pFw9JxOfO+MRb/W88kLm1shD2LHhH8ew cbFDopAM4fsLuhoFCF0IBlPYZMaKmPa9tG7f3tFcwqh9o27n3MaKlgeVmBQXxyYYPvmN OlKzfd+OqgN81HU0s1U95UHmnZ4edFAdq/qvBVaZiaXQAKOnlXa4c7YzUaqYJnkHJZ6J WS5GyHeG6Qk0XMQR9hGfPOtTHvIeRjBuzWz+LNF51lXn9RIEWRppGsn9W+Ya0SJ816mp K7dQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678196281; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=fpDMcBBLQyF8LgqHxboWMTUnYVwMKYwzb0k+I2z6s1c=; b=bXxtECRgNLofk4WfIteyGw9WeRx/cBhxLMJcDjSq9F0d8LSbt2m5CX57oy3eQjk1f6 7xit10PmXiAhY3HFxe2gNjfI2CeBJQAsF9yQn2uh2X0B/6PRW/GPqCNMWeGCqXR7dsR5 jQeH5lyMLDeDkBRxCj8MktWnupQDQyByITkkmZvEfABWvWyBQr3jFNd5BfK9jklyRmpp Yl3usEvX77SMQtZqjE2IkuldcveVyx0csT5Rx9qvovuBnL4+8F7WmA9B9iKlI+FvOgNK 0J+vF3H4tlGM5VD/MA/FrA0Mwi9DjOT9/rpKkHoJrvWTDf6TmO+WoGYWevx0nB6e0sSI CHRw== X-Gm-Message-State: AO0yUKX5ucf54cqr1DZWiXF36ObpVetH4sUf/Td1cL7X60Y55LcchD2s oVm1JzQBaY+SNcLTFS/qk36dPQ== X-Received: by 2002:adf:e343:0:b0:2c7:f56:285b with SMTP id n3-20020adfe343000000b002c70f56285bmr9946678wrj.63.1678196281789; Tue, 07 Mar 2023 05:38:01 -0800 (PST) Received: from mai.box.freepro.com ([2a05:6e02:1041:c10:5ab9:1ac6:870d:35c]) by smtp.gmail.com with ESMTPSA id v5-20020a5d43c5000000b002c55de1c72bsm12311477wrr.62.2023.03.07.05.38.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Mar 2023 05:38:01 -0800 (PST) From: Daniel Lezcano To: daniel.lezcano@linaro.org, rafael@kernel.org Cc: rui.zhang@intel.com, amitk@kernel.org, Florian Fainelli , Ray Jui , Scott Branden , Broadcom internal kernel review list , =?utf-8?q?Niklas_S=C3=B6derlund?= , ye xingchen , Thierry Reding , linux-pm@vger.kernel.org (open list:THERMAL), linux-rpi-kernel@lists.infradead.org (moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE), linux-arm-kernel@lists.infradead.org (moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE), linux-kernel@vger.kernel.org (open list) Subject: [PATCH v1 07/11] thermal/drivers/bcm2835: Remove buggy call to thermal_of_zone_unregister Date: Tue, 7 Mar 2023 14:37:31 +0100 Message-Id: <20230307133735.90772-8-daniel.lezcano@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230307133735.90772-1-daniel.lezcano@linaro.org> References: <20230307133735.90772-1-daniel.lezcano@linaro.org> MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1759716749416716107?= X-GMAIL-MSGID: =?utf-8?q?1759716749416716107?= The driver is using the devm_thermal_of_zone_device_register(). In the error path of the function calling devm_thermal_of_zone_device_register(), the function devm_thermal_of_zone_unregister() should be called instead of thermal_of_zone_unregister(), otherwise this one will be called twice when the device is freed. The same happens for the remove function where the devm_ guarantee the thermal_of_zone_unregister() will be called, so adding this call in the remove function will lead to a double free also. Use devm_ variant in the error path of the probe function. Remove thermal_of_zone_unregister() in the remove function. Cc: Florian Fainelli Cc: Ray Jui Cc: Scott Branden Signed-off-by: Daniel Lezcano --- drivers/thermal/broadcom/bcm2835_thermal.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/thermal/broadcom/bcm2835_thermal.c b/drivers/thermal/broadcom/bcm2835_thermal.c index a217d832f24e..ea07152a6d0d 100644 --- a/drivers/thermal/broadcom/bcm2835_thermal.c +++ b/drivers/thermal/broadcom/bcm2835_thermal.c @@ -269,13 +269,13 @@ static int bcm2835_thermal_probe(struct platform_device *pdev) */ err = thermal_add_hwmon_sysfs(tz); if (err) - goto err_tz; + goto err_clk; bcm2835_thermal_debugfs(pdev); return 0; err_tz: - thermal_of_zone_unregister(tz); + devm_thermal_of_zone_unregister(&pdev->dev, tz); err_clk: clk_disable_unprepare(data->clk); @@ -285,10 +285,8 @@ static int bcm2835_thermal_probe(struct platform_device *pdev) static int bcm2835_thermal_remove(struct platform_device *pdev) { struct bcm2835_thermal_data *data = platform_get_drvdata(pdev); - struct thermal_zone_device *tz = data->tz; debugfs_remove_recursive(data->debugfsdir); - thermal_of_zone_unregister(tz); clk_disable_unprepare(data->clk); return 0; From patchwork Tue Mar 7 13:37:32 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Lezcano X-Patchwork-Id: 65512 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:5915:0:0:0:0:0 with SMTP id v21csp2445422wrd; Tue, 7 Mar 2023 06:02:53 -0800 (PST) X-Google-Smtp-Source: AK7set979xMYtTmwYtT+liuH4Uysa0ref3F4Eh8oUOKY2XUN4PCuWpyBBpW+i0b2mzi3sy9N6kWC X-Received: by 2002:a05:6a20:8e05:b0:cb:c2a8:2c48 with SMTP id y5-20020a056a208e0500b000cbc2a82c48mr18075048pzj.17.1678197773039; Tue, 07 Mar 2023 06:02:53 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1678197773; cv=none; d=google.com; s=arc-20160816; b=vzMSw0kjjRnbliJ4vZchtgHefHRAJ0gzM/tchVBMsb/GArp9HrmFejMSJzSfUl/j3c AZg/t9JGJTOw11eamWoMUWp6Hz+HkBbYh66BPhXs/W1UckHWaEHFw29jWLFKc5R0sUT9 7SLE11W78Ez6wK2spVl3jVqD8huHHkXO4nwbI7IqeXnGGINsrd4fUpWukK1E3ZA6aMbe DqFKywuJBMfCvJ2yPyEJKDblaqy0iDhXchT6lcju+DCd4tVCOPUSVTBrtw3iI1QIX7YH osfW6sW6mWAJlE4ezaLzGgyrUenL/rXuVejibgfPoGq0kq/Qi1OeOI6pImgvpLdwtAVH AiHQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=XIQnAKa+Qd5OpVdv8Ipf7C/Ypn0D8rKAisdiD5QMAh0=; b=U+zCvh7xLqX9i5+8L2/4qt6UZZ1KTgtraeFEIvJk1LPIrCRx5iORF3R5J02G1qPRTS j7CuYvcdoJe4c0VBxCtMkfbf9OBkBwEUUZkWJ7nMbazNMDtfO2gLAD1cG4lREt69+Ncz EbshDN4dtIeaSabvCpGzpqiHEYNQZAGS0/KH7tWLbqyA6hSwafiml7w+uoExmPfYpVpm 2bZqVfybuw+I7uhJ6axYJZjNwC+dPSc/SWRgsFhfa7Qln79CCS0L1DspMfU8fCAnDgo9 tx+b/0hE6JqPvgCHVlXGRAXds2QG/gdTyOg9GZs2OhAVmpj+M5ykeo/Kgn1fs03berJM FCrA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=G4uhG+HE; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id j31-20020a63231f000000b004df5fe7a161si11473173pgj.660.2023.03.07.06.02.39; Tue, 07 Mar 2023 06:02:53 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=G4uhG+HE; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 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 S231244AbjCGNiW (ORCPT + 99 others); Tue, 7 Mar 2023 08:38:22 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34080 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230521AbjCGNiH (ORCPT ); Tue, 7 Mar 2023 08:38:07 -0500 Received: from mail-wr1-x433.google.com (mail-wr1-x433.google.com [IPv6:2a00:1450:4864:20::433]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4A76A31E00 for ; Tue, 7 Mar 2023 05:38:04 -0800 (PST) Received: by mail-wr1-x433.google.com with SMTP id l1so12102797wry.12 for ; Tue, 07 Mar 2023 05:38:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1678196282; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=XIQnAKa+Qd5OpVdv8Ipf7C/Ypn0D8rKAisdiD5QMAh0=; b=G4uhG+HEW8aKELDM9Sy8xcuArFEvPYHxeEkSAvAihRjKNrflmzusgFYLdZ6+RHVh5B NsN7nMiaQntRZ+1FEkyXzfHyTK8hS1ErM8pzN1kbfdkpSaDi4q6nj29PUGEPD+IPtrfs XIEDDn9ou1+JxDIwPIYD6WYKTwmJgij/up31knXXFZrb4YPWBMvTUBVU/UwOKtQUVfnm CreZ6KCGIcrnAb8Uuiop6VJzNyzydlhSZZ3Z6jHM6Di6BKWfsIs6poNUHrlABfLSUoDM 0dQafcbtghCvErUNVZ1FA+pke96IeRx1/xbNiBSA8/FhHP9VV3fJSVmIHpYHxfLVyl1F 4mmg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678196282; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=XIQnAKa+Qd5OpVdv8Ipf7C/Ypn0D8rKAisdiD5QMAh0=; b=dasrvmFQdkKA5FDd9HOydWkKrETRjZTYLoJQ82QdXQCUrXWDwaEeOuYR0LccMaCA/F ZyBwDyjiuGm0v+0fAaXFWueCpt9fg+QAhVSa6ENOHQDbQvy1YcY0C/VPFMnmOJb0qBgW jXOlqk/Gw11zuJn3+OwUmBED/01riqSOjuZ9r92XRsNRmWqIFUPTixt8Doi7cbG3qQVa kgPwoxYsgZ0JePkcJODJ0FoJoITWpsrEvs77C1/g5F/Mnu4FTqdv5goPO/XhBWkngmCr QZ1kHQiZS+baWo5g7qNSTTZ6Tt2QerVK/kWg9YpXJGa5yLa6+WQBrqCU48jge+eJcS7j hm1Q== X-Gm-Message-State: AO0yUKXqvaoHIn0jgWwI/CW8biQX1hg5uIFjVdiyzYgnf95RQUJsb+JC 2A+3LVtO23dhTkoyjpucPMQk+A== X-Received: by 2002:a5d:4810:0:b0:2cb:c66d:6ac1 with SMTP id l16-20020a5d4810000000b002cbc66d6ac1mr8681462wrq.3.1678196282682; Tue, 07 Mar 2023 05:38:02 -0800 (PST) Received: from mai.box.freepro.com ([2a05:6e02:1041:c10:5ab9:1ac6:870d:35c]) by smtp.gmail.com with ESMTPSA id v5-20020a5d43c5000000b002c55de1c72bsm12311477wrr.62.2023.03.07.05.38.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Mar 2023 05:38:02 -0800 (PST) From: Daniel Lezcano To: daniel.lezcano@linaro.org, rafael@kernel.org Cc: rui.zhang@intel.com, amitk@kernel.org, linux-pm@vger.kernel.org (open list:THERMAL), linux-kernel@vger.kernel.org (open list) Subject: [PATCH v1 08/11] thermal/of: Unexport unused OF functions Date: Tue, 7 Mar 2023 14:37:32 +0100 Message-Id: <20230307133735.90772-9-daniel.lezcano@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230307133735.90772-1-daniel.lezcano@linaro.org> References: <20230307133735.90772-1-daniel.lezcano@linaro.org> MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1759717908054109310?= X-GMAIL-MSGID: =?utf-8?q?1759717908054109310?= The functions thermal_of_zone_register() and thermal_of_zone_unregister() are no longer needed from the drivers as the devm_ variant is always used. Make them static in the C file and remove their declaration from thermal.h Signed-off-by: Daniel Lezcano --- drivers/thermal/thermal_of.c | 8 +++----- include/linux/thermal.h | 17 ----------------- 2 files changed, 3 insertions(+), 22 deletions(-) diff --git a/drivers/thermal/thermal_of.c b/drivers/thermal/thermal_of.c index ff4d12ef51bc..6fb14e521197 100644 --- a/drivers/thermal/thermal_of.c +++ b/drivers/thermal/thermal_of.c @@ -439,7 +439,7 @@ static int thermal_of_unbind(struct thermal_zone_device *tz, * * @tz: a pointer to the thermal zone structure */ -void thermal_of_zone_unregister(struct thermal_zone_device *tz) +static void thermal_of_zone_unregister(struct thermal_zone_device *tz) { struct thermal_trip *trips = tz->trips; struct thermal_zone_params *tzp = tz->tzp; @@ -451,7 +451,6 @@ void thermal_of_zone_unregister(struct thermal_zone_device *tz) kfree(tzp); kfree(ops); } -EXPORT_SYMBOL_GPL(thermal_of_zone_unregister); /** * thermal_of_zone_register - Register a thermal zone with device node @@ -473,8 +472,8 @@ EXPORT_SYMBOL_GPL(thermal_of_zone_unregister); * - ENOMEM: if one structure can not be allocated * - Other negative errors are returned by the underlying called functions */ -struct thermal_zone_device *thermal_of_zone_register(struct device_node *sensor, int id, void *data, - const struct thermal_zone_device_ops *ops) +static struct thermal_zone_device *thermal_of_zone_register(struct device_node *sensor, int id, void *data, + const struct thermal_zone_device_ops *ops) { struct thermal_zone_device *tz; struct thermal_trip *trips; @@ -550,7 +549,6 @@ struct thermal_zone_device *thermal_of_zone_register(struct device_node *sensor, return ERR_PTR(ret); } -EXPORT_SYMBOL_GPL(thermal_of_zone_register); static void devm_thermal_of_zone_release(struct device *dev, void *res) { diff --git a/include/linux/thermal.h b/include/linux/thermal.h index eb80cee4f64f..8cdf94cdc5ff 100644 --- a/include/linux/thermal.h +++ b/include/linux/thermal.h @@ -297,25 +297,12 @@ struct thermal_zone_params { /* Function declarations */ #ifdef CONFIG_THERMAL_OF -struct thermal_zone_device *thermal_of_zone_register(struct device_node *sensor, int id, void *data, - const struct thermal_zone_device_ops *ops); - struct thermal_zone_device *devm_thermal_of_zone_register(struct device *dev, int id, void *data, const struct thermal_zone_device_ops *ops); -void thermal_of_zone_unregister(struct thermal_zone_device *tz); - void devm_thermal_of_zone_unregister(struct device *dev, struct thermal_zone_device *tz); -void thermal_of_zone_unregister(struct thermal_zone_device *tz); - #else -static inline -struct thermal_zone_device *thermal_of_zone_register(struct device_node *sensor, int id, void *data, - const struct thermal_zone_device_ops *ops) -{ - return ERR_PTR(-ENOTSUPP); -} static inline struct thermal_zone_device *devm_thermal_of_zone_register(struct device *dev, int id, void *data, @@ -324,10 +311,6 @@ struct thermal_zone_device *devm_thermal_of_zone_register(struct device *dev, in return ERR_PTR(-ENOTSUPP); } -static inline void thermal_of_zone_unregister(struct thermal_zone_device *tz) -{ -} - static inline void devm_thermal_of_zone_unregister(struct device *dev, struct thermal_zone_device *tz) { From patchwork Tue Mar 7 13:37:33 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Lezcano X-Patchwork-Id: 65505 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:5915:0:0:0:0:0 with SMTP id v21csp2436185wrd; Tue, 7 Mar 2023 05:44:37 -0800 (PST) X-Google-Smtp-Source: AK7set9/jzBqmxKC5jKEBthd0LootxideBYnoh/RsY0Ab4lqfOTh2yLQhYzxUKXxt4kiUKmxWB9i X-Received: by 2002:a05:6402:5169:b0:4ac:c507:702d with SMTP id d9-20020a056402516900b004acc507702dmr13202049ede.28.1678196677502; Tue, 07 Mar 2023 05:44:37 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1678196677; cv=none; d=google.com; s=arc-20160816; b=NQdiSOB6mE3UYzc1p8Jqle2Jml3Li2+Yh4YZKzW0n7zf5G1913FNcqlMo5mObPYCsR p/7jx01zVeFvP2Rlfp0D7uibmk+Gct00erhgXDEwDCcj1nq5R9paYP1r9IEJ5wTaoI/Q oImNFlxbWo55oIufT1JEV/el2T4gGO80UJAMY5slzAzTh73nU1VUbLTgV+wh0sXUPp3y 6qbHkyB+hIPy/7NcUcqhbZm8JftJNY6qcN7aYElG7IoOYimd8PEmfX+4Bkt+AS4JEUaS MDVobMEJXGvd3oXbPtyuLOPcZdSnnfxk45lF+ew+6AZqoIbiiDKaAYnFxuPqvmiEEuIe RO7A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=U8j4bJo1oZVc8oVRbgCLsTpymyaRowPacMWUlyxZyaA=; b=eppkB6IKqD5DgB677zY8kShEY9dlMvSbMR0bNHPwXo4KjXcvAqR9iRoq9thAcEEl35 s5le28qFYXMZyegwmA666ik9GeuWmFCHXKvHNxH3TYrLR2PLHyxtyskN07Wir3qznEU2 qVuJtPMym+e26ckpSrSeIcvmGSflS1LhOqiI8ruv2wVhI11YoQq5pylK0W7hHD5tqMTu DWtqgrW9AuVkbUIEWcGER8ulHPEAcfmLp38R0m0TARixSCcPhPK791Gf365UcTVXSd2z dr6iWua7810GCaYrcVILRnzv+GH9JShCCWUYv5am25y0uRWDlxVEhVAfvDraIpvyr/8q 9M/A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=M+pDCn8y; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id x18-20020aa7dad2000000b004acdca4cb9asi10447572eds.636.2023.03.07.05.44.13; Tue, 07 Mar 2023 05:44:37 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=M+pDCn8y; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 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 S231256AbjCGNi0 (ORCPT + 99 others); Tue, 7 Mar 2023 08:38:26 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34132 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231135AbjCGNiM (ORCPT ); Tue, 7 Mar 2023 08:38:12 -0500 Received: from mail-wr1-x435.google.com (mail-wr1-x435.google.com [IPv6:2a00:1450:4864:20::435]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 56F73392A8 for ; Tue, 7 Mar 2023 05:38:05 -0800 (PST) Received: by mail-wr1-x435.google.com with SMTP id l1so12102861wry.12 for ; Tue, 07 Mar 2023 05:38:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1678196283; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=U8j4bJo1oZVc8oVRbgCLsTpymyaRowPacMWUlyxZyaA=; b=M+pDCn8yf+ZYz0M24b8vuev3cxkgCkT7t7+FWsP48E+EBPLbO5oHJz69sm7CpRRzI5 AbnzlqXMTSAOfze4yP5pEmF32IuLZlR6+gD7hlbfmmUnyv0leh8ayItqNRRnlP+53C2G 8QTKBOXoL58ihGEEdQ6Bsf3u6rw7kdWeRLBIXjWmRTsvYK8o/eq9yjjN7h5ekGP683EC CeHNoPRdbqxR9ILWERajpgbyg00Ks/UIKBwyX1KBbhWa+XC46HIKevd/tajORB43bXNC h3hGnrEI0h1kpKk9FhviJyB5pULyEUQu+AQRZyCDbsV+w7Grvv71nwL8I8ZX1XVYCnvs YLOQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678196283; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=U8j4bJo1oZVc8oVRbgCLsTpymyaRowPacMWUlyxZyaA=; b=oCdOHmY69G31pdkYC/MXE1YEyYk+HP/1yQzZ236hIpgrIHvUwDvrQ3M8ja2dcduk2k 37+EXNmZ6C6q24JmyErkaXtat9NJpLg2d7V2nLwyEUDkPukptioIf7EMlIcF2S4eFMEl XWuxoJ4ABOZYFPWRFcxZPO8ZzKEu+jLky2MWMsoHcjiosZIV1JWAUACd/GvzIyAP01Wo dMFSlk85nV735Ni3ZXl78ZdAenYsT5mVH4QRU/BdAL8hDGukCHfSi1FXhniX0HplVRkE zKyfN/wz6KogyZU27l8iwn/fKiatcSxW236UJHtitftPMvZjH10C7djRqqkiUL6bXARn TCAw== X-Gm-Message-State: AO0yUKW0wIuibZTE7typwtwOmLClbOS8oPY9kSPVbQnI+nhCtVYMbKW+ NJsnrCWPIyJ1MNY3M8klKJUfAAphMwz/fGHFsRs= X-Received: by 2002:adf:df04:0:b0:2c7:1dc4:5c4e with SMTP id y4-20020adfdf04000000b002c71dc45c4emr10251708wrl.32.1678196283559; Tue, 07 Mar 2023 05:38:03 -0800 (PST) Received: from mai.box.freepro.com ([2a05:6e02:1041:c10:5ab9:1ac6:870d:35c]) by smtp.gmail.com with ESMTPSA id v5-20020a5d43c5000000b002c55de1c72bsm12311477wrr.62.2023.03.07.05.38.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Mar 2023 05:38:03 -0800 (PST) From: Daniel Lezcano To: daniel.lezcano@linaro.org, rafael@kernel.org Cc: rui.zhang@intel.com, amitk@kernel.org, linux-pm@vger.kernel.org (open list:THERMAL), linux-kernel@vger.kernel.org (open list) Subject: [PATCH v1 09/11] thermal/core: Add a linked device parameter Date: Tue, 7 Mar 2023 14:37:33 +0100 Message-Id: <20230307133735.90772-10-daniel.lezcano@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230307133735.90772-1-daniel.lezcano@linaro.org> References: <20230307133735.90772-1-daniel.lezcano@linaro.org> MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1759716759323845567?= X-GMAIL-MSGID: =?utf-8?q?1759716759323845567?= Some drivers want to create a link from the thermal zone to the device sysfs entry and vice versa. That is the case of the APCI driver. Having a backpointer from the device to the thermal zone sounds akward as we can have the same device instantiating multiple thermal zones so there will be a conflict while creating the second link with the same name. Moreover, the userspace has enough information to build the dependency from the thermal zone device link without having this cyclic link from the device to thermal zone. Anyway, everything in its time. This change allows to create a these cyclic links tz <-> device as ACPI does and will allow to remove the code in the ACPI driver. The limitation of this change is there can be only a 1:1 relationship between the device and the thermal zone, otherwise the 'thermal_zone' link name will conflict with the previous link with the same name. Signed-off-by: Daniel Lezcano --- drivers/thermal/thermal_core.c | 16 ++++++++++++++++ include/linux/thermal.h | 7 +++++++ 2 files changed, 23 insertions(+) diff --git a/drivers/thermal/thermal_core.c b/drivers/thermal/thermal_core.c index cec72c6673a5..ca91189bc441 100644 --- a/drivers/thermal/thermal_core.c +++ b/drivers/thermal/thermal_core.c @@ -1340,6 +1340,18 @@ thermal_zone_device_register_with_trips(const char *type, struct thermal_trip *t list_add_tail(&tz->node, &thermal_tz_list); mutex_unlock(&thermal_list_lock); + if (tzp && tzp->linked_dev) { + result = sysfs_create_link(&tzp->linked_dev->kobj, + &tz->device.kobj, "thermal_zone"); + if (result) + goto out_list_del; + + result = sysfs_create_link(&tz->device.kobj, + &tzp->linked_dev->kobj, "device"); + if (result) + goto out_del_link; + } + /* Bind cooling devices for this zone */ bind_tz(tz); @@ -1354,6 +1366,10 @@ thermal_zone_device_register_with_trips(const char *type, struct thermal_trip *t return tz; +out_del_link: + sysfs_remove_link(&tz->device.kobj, "thermal_zone"); +out_list_del: + list_del(&tz->node); unregister: device_del(&tz->device); release_device: diff --git a/include/linux/thermal.h b/include/linux/thermal.h index 8cdf94cdc5ff..f60d7edf1e5d 100644 --- a/include/linux/thermal.h +++ b/include/linux/thermal.h @@ -256,6 +256,13 @@ struct thermal_zone_params { int num_tbps; /* Number of tbp entries */ struct thermal_bind_params *tbp; + /* + * @linked_dev: Add a cross link from the device to the + * thermal zone and vice versa. They will be named + * respectively 'device' and 'thermal_zone' + */ + struct device *linked_dev; + /* * Sustainable power (heat) that this thermal zone can dissipate in * mW From patchwork Tue Mar 7 13:37:34 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Lezcano X-Patchwork-Id: 65515 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:5915:0:0:0:0:0 with SMTP id v21csp2447682wrd; Tue, 7 Mar 2023 06:05:57 -0800 (PST) X-Google-Smtp-Source: AK7set9v41QcioDvg15CoUTrSnzRtfcFSuOj9sBlrQrbxr4N2US9V8QXXq+9qyCv8XKh196kdQfl X-Received: by 2002:a05:6402:184a:b0:4a2:588f:b3c5 with SMTP id v10-20020a056402184a00b004a2588fb3c5mr13257154edy.21.1678197957045; Tue, 07 Mar 2023 06:05:57 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1678197957; cv=none; d=google.com; s=arc-20160816; b=EyBfgLZL92kDvoDVnIO+FNBVP6esAuoGJVaagfdXqXWrC4kESWIebZi8xeHpMWfZ/W ycNcwUrRHvU8lc7wRcGFrveePvbj94dLMxUqDL5EvnHptIMRKlwPhXuvNR5qP1pKvlhJ bnFLJEzRtLpw7TU8he0L/rlwldBoQf2chRJOaymER2R95Tte4kc8cxeVj2+pWdB+9q2R JNCcbAoRANlRfzbICSqxYPBERbFpe3EaZ7LluHaMtXuWGVdTOWT5sqjH77kxdZWbWPoW RWI2qrK3Zr8x06/KRUve8k0zWcIyWQRGVZ2rFpmtYVk5YjxEUdvorF5nTDYBeBJEINrG 254w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=8U/QSyAheawCOnLmWTGKUDR8tl2aMMA2m4dtkvqkUZc=; b=sLSMlYTaAekLHZ0PBEpgHJhUDlThaifUfABs+FhJ2SJt3FDQZiJVU7ttn2uxzA5oFy PAQWDydKLPBjngUC6v1Nt6R6jlTnlg1Qfg8DmkCqhtZC3kwKrFVyKKf3hSX7eoKHRLpK oWXpLeOV2j738tTXEQ9UlfHyaU71LcDxyApejGnjRwsN00+Lt09COZ84Goeu2Hc93sw2 A9mHp8cYUncJ6+l90c1SWFJsnaoXl4LOf5WLiHWig+XxFa88wKfHb5ALau6sOWMglQcK 6K4NnAfrdDIxj9+EouxY2p/jyof5Fo2LB2oNqJW3W7qw55+0jHgkcY714fAUL3G6iL/k vuvA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=GR6ZQlXq; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id u16-20020a056402065000b004c4f980447bsi13963119edx.554.2023.03.07.06.05.33; Tue, 07 Mar 2023 06:05:57 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=GR6ZQlXq; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 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 S231263AbjCGNi3 (ORCPT + 99 others); Tue, 7 Mar 2023 08:38:29 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34158 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231164AbjCGNiM (ORCPT ); Tue, 7 Mar 2023 08:38:12 -0500 Received: from mail-wr1-x431.google.com (mail-wr1-x431.google.com [IPv6:2a00:1450:4864:20::431]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6E6C93E0B8 for ; Tue, 7 Mar 2023 05:38:05 -0800 (PST) Received: by mail-wr1-x431.google.com with SMTP id l25so12166030wrb.3 for ; Tue, 07 Mar 2023 05:38:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1678196284; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=8U/QSyAheawCOnLmWTGKUDR8tl2aMMA2m4dtkvqkUZc=; b=GR6ZQlXqA5cqbeBm2gQcshttPTPWd+AO20+ha+UgpBnbdoF57VHEazFHgSYJbPDU7h jbJKY7pNig8f1vgtG5FHV7ImJRpzSHWX9XGcBv2zacGJDfGl0h0f7/47LutUsYIfiK6x jqQiM3SCII7ftweKSw2deYgPSj7CfP6cs82rGAgVQWVwcQYXbGwYzCS6orzKGRK9CsxW 0/KpHJXqXSaqZ2NRrumfb5XowjkTAdqEgpM8ApxlZrPCG8lodXqqoNSOskqX8n+DCJgH YX1wsWuEkmda/NWDY8dYOn4EJcAt6mLtao7N/IYPFmZwBVSXNe1BTjnml4WooEhfTJrv 8Hog== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678196284; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=8U/QSyAheawCOnLmWTGKUDR8tl2aMMA2m4dtkvqkUZc=; b=GydMsR0X4kybcYwWZOABcv97iOnbncc0VT43OD1h+K6gZiJ4eqYVQsTAt1NVg1oiEM jrBYlxLbQ4iUhq1+qgJL/cTW6WNeH9sU7xsTRLNVSIBUuJrMfuC5Jp6kQ2PX2NuJOhIE pzJK4eik7e+3pegVnxVZy7vfQhIaEifCWKpl++X/TlvEV4/6MBdcTISt3ucN3UPV6Cqf SbTpEzfAXEpbNxkMgsks/NLan6vFtXf79n/IjcrZnGTLrNuAitD9hL9TGB7fNyG8wEzs Uo0hYYv/UF/89TgRt3FoeJDjLDr42VNM9TUp1Afu+uMYR0ApbnfcXZ3CEe1X5fZ128Jb ZlGQ== X-Gm-Message-State: AO0yUKWwLJk4kBC+qvVo/m/knkAi/li1R+9NXQMYncduXMyqZ+YaU31I qplfY+xXKQtlJP6JmOVW03bemA== X-Received: by 2002:adf:e74a:0:b0:2c7:efb:dded with SMTP id c10-20020adfe74a000000b002c70efbddedmr10591530wrn.24.1678196284325; Tue, 07 Mar 2023 05:38:04 -0800 (PST) Received: from mai.box.freepro.com ([2a05:6e02:1041:c10:5ab9:1ac6:870d:35c]) by smtp.gmail.com with ESMTPSA id v5-20020a5d43c5000000b002c55de1c72bsm12311477wrr.62.2023.03.07.05.38.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Mar 2023 05:38:04 -0800 (PST) From: Daniel Lezcano To: daniel.lezcano@linaro.org, rafael@kernel.org Cc: rui.zhang@intel.com, amitk@kernel.org, linux-pm@vger.kernel.org (open list:THERMAL), linux-kernel@vger.kernel.org (open list) Subject: [PATCH v1 10/11] thermal/core: Alloc-copy-free the thermal zone parameters structure Date: Tue, 7 Mar 2023 14:37:34 +0100 Message-Id: <20230307133735.90772-11-daniel.lezcano@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230307133735.90772-1-daniel.lezcano@linaro.org> References: <20230307133735.90772-1-daniel.lezcano@linaro.org> MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1759718100994950425?= X-GMAIL-MSGID: =?utf-8?q?1759718100994950425?= The caller of the function thermal_zone_device_register_with_trips() can pass a thermal_zone_params structure parameter. This one is used by the thermal core code until the thermal zone is destroyed. That forces the caller, so the driver, to keep the pointer valid until it unregisters the thermal zone if we want to make the thermal zone device structure private the core code. As the thermal zone device structure would be private, the driver can not access to thermal zone device structure to retrieve the tzp field after it passed it to register the thermal zone. So instead of forcing the users of the function to deal with the tzp structure life cycle, make the usage easier by allocating our own thermal zone params, copying the parameter content and by freeing at unregister time. The user can then create the parameters on the stack, pass it to the registering function and forget about it. Signed-off-by: Daniel Lezcano --- drivers/thermal/thermal_core.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/drivers/thermal/thermal_core.c b/drivers/thermal/thermal_core.c index ca91189bc441..6cbda8f4522e 100644 --- a/drivers/thermal/thermal_core.c +++ b/drivers/thermal/thermal_core.c @@ -1263,13 +1263,19 @@ thermal_zone_device_register_with_trips(const char *type, struct thermal_trip *t if (!tz) return ERR_PTR(-ENOMEM); + if (tzp) { + tz->tzp = kmemdup(tzp, sizeof(*tzp), GFP_KERNEL); + if (!tz->tzp) + goto free_tz; + } + INIT_LIST_HEAD(&tz->thermal_instances); ida_init(&tz->ida); mutex_init(&tz->lock); id = ida_alloc(&thermal_tz_ida, GFP_KERNEL); if (id < 0) { result = id; - goto free_tz; + goto free_tzp; } tz->id = id; @@ -1279,7 +1285,6 @@ thermal_zone_device_register_with_trips(const char *type, struct thermal_trip *t ops->critical = thermal_zone_device_critical; tz->ops = ops; - tz->tzp = tzp; tz->device.class = thermal_class; tz->devdata = devdata; tz->trips = trips; @@ -1377,6 +1382,8 @@ thermal_zone_device_register_with_trips(const char *type, struct thermal_trip *t tz = NULL; remove_id: ida_free(&thermal_tz_ida, id); +free_tzp: + kfree(tz->tzp); free_tz: kfree(tz); return ERR_PTR(result); @@ -1472,6 +1479,8 @@ void thermal_zone_device_unregister(struct thermal_zone_device *tz) device_del(&tz->device); mutex_unlock(&tz->lock); + kfree(tzp); + put_device(&tz->device); thermal_notify_tz_delete(tz_id); From patchwork Tue Mar 7 13:37:35 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Lezcano X-Patchwork-Id: 65504 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:5915:0:0:0:0:0 with SMTP id v21csp2436166wrd; Tue, 7 Mar 2023 05:44:33 -0800 (PST) X-Google-Smtp-Source: AK7set/PSwGsQd4WRVGmqoJDiY83IVwe5cQBM6nob6Qe2s92wvBpMHb9XZ+FEbIcxH0U8ua/fP71 X-Received: by 2002:a17:906:1481:b0:8b1:7ae8:ba6f with SMTP id x1-20020a170906148100b008b17ae8ba6fmr14213076ejc.16.1678196673338; Tue, 07 Mar 2023 05:44:33 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1678196673; cv=none; d=google.com; s=arc-20160816; b=i5lyurryCq6Zsw3vUB2U9uvTTbJZ/UQuhYdI9MdrlfdQq38ahZgIKRxX/nOB+RXb5w yTbmJBCg1FWrBamCcG1zqcvgNO1Ez6V5/iR9T69ndX6NaWu0NbXByuv/BmF2AoKWWPZP /ZFrr2qx8I1KtzEZwnVgBICRBAD7GpaqbZMpZCRzwmaIPgkv4r6vVxiGkzkweXPfktuC rOokKlnatFBHrV5A2iV4DjwbC3TsEAp/QiUB17gSJ/b2X2EIdLCo4vauMmHf1cAXijaj npFGdoMlxefjJkcEArEa9bcs0InTepF2CGsKWPKLjpUQt9p0TPPM1vk4n+zORNabREBF wZ5g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=r31ohlDpv5otoAeD1bVOzDiFSts1H09pvgDJbkHz6kE=; b=VBPNfTKCnNxX9Ks+j1zOK1ohx+t1joVIVtD5Kx+JRItijyr/ELbT9UM4xI0T/69RLR 9FS0gjCDuULOnvpqKKusOpfCK/UJpm8f5t0VAcfirLyIO3DNcWC46e0RwY7QnNVi2OMX 4bCNBp/u44pC7XhAGBpSkh3D04D0xrYbMwRy3bT35KWg/yUyrxF0JUnIXzjv1iyq6mSn 1fOtbuge5NdJ1uIr0xInzLkRQr5dnEfoAC/Bz9XT4o2qd7SAbPTh67R0Rb4Fcs1w9QVA mC5s7FbUEW8Vc3bfLobSnxS79AMGLoVNbCKybBVVwAJxUTeORECU2lUtmVAnDB0No5dD yOLg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=TrUavH00; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id sb22-20020a1709076d9600b009153f0ec59bsi1014478ejc.800.2023.03.07.05.44.10; Tue, 07 Mar 2023 05:44:33 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=TrUavH00; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 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 S231249AbjCGNiY (ORCPT + 99 others); Tue, 7 Mar 2023 08:38:24 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34130 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231128AbjCGNiM (ORCPT ); Tue, 7 Mar 2023 08:38:12 -0500 Received: from mail-wr1-x42e.google.com (mail-wr1-x42e.google.com [IPv6:2a00:1450:4864:20::42e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D067A3A879 for ; Tue, 7 Mar 2023 05:38:05 -0800 (PST) Received: by mail-wr1-x42e.google.com with SMTP id r18so12163152wrx.1 for ; Tue, 07 Mar 2023 05:38:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1678196285; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=r31ohlDpv5otoAeD1bVOzDiFSts1H09pvgDJbkHz6kE=; b=TrUavH00tT8Tlc+XRCN+f0574vfg/jdmj2Iyd/dME2zutf2oub0jR4gbiET5ga102A HyoDuym9ddEz4WOlG7ymyFBAaTKtxu+JAFJi5Z7z+L0cp/yEFhaHHLbYheaxkxzuUXPy /MP2+UF36Miaj3r6lQxR2JuGjCQFo5LhpOEWKBzraqBuzEtNIz6qoqHylZVuvqIHHqkV ZFAsAGbVOyNoQOH739V4xtKjtdSnEIDUf6hL9ZlHLf79ausXxl3+oAdbr9E5ZtRbSV8T 4PHv71I2DWaXwgT1BbkhdL++T6oHDj8AniwXTJRSSBTVdBLohG05y+6BJ2+okXwyF/UX vBdA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678196285; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=r31ohlDpv5otoAeD1bVOzDiFSts1H09pvgDJbkHz6kE=; b=BQHX/53X3hwhWls2/hRogk7eeb6/UI9n5krsNq7fhcvEh2YfvrbY0MBVdXeojDg68W yqXrLgw8UaKPReuMdq2jwPrDeHaEYYE91lR5sxVXD2kigjRmT6Sgf//VC4Fb8NbpdFDO +K69P65DUd/319vFyxEjccVE5VRMdGn4h3IVrwDaeScfOkHfozRaoocc+netMLmlJDmV I+Dw7pt0+OklXwrV5Vu0gbn3R9Vhl8k8Ga5ausoF7YqqZAyba22xnASVYeRORtniymaB CrjH7rJ4nQa40WV1rCKOO3CW/N4faxIAvmpmOs4UlJmmBY2LVYhj+qiTq/Rx7q6/KakA QNaw== X-Gm-Message-State: AO0yUKW4pRhShtDVeWpvDyElSa/UbG98Q37XZwngCa/N9fg5JQlzu3JC r6Xe+DnbE4jcQtiTCi3BL78lUQ== X-Received: by 2002:adf:e30f:0:b0:2c8:309d:77b0 with SMTP id b15-20020adfe30f000000b002c8309d77b0mr9443409wrj.0.1678196285292; Tue, 07 Mar 2023 05:38:05 -0800 (PST) Received: from mai.box.freepro.com ([2a05:6e02:1041:c10:5ab9:1ac6:870d:35c]) by smtp.gmail.com with ESMTPSA id v5-20020a5d43c5000000b002c55de1c72bsm12311477wrr.62.2023.03.07.05.38.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Mar 2023 05:38:04 -0800 (PST) From: Daniel Lezcano To: daniel.lezcano@linaro.org, rafael@kernel.org Cc: rui.zhang@intel.com, amitk@kernel.org, Len Brown , linux-acpi@vger.kernel.org (open list:ACPI THERMAL DRIVER), linux-kernel@vger.kernel.org (open list) Subject: [PATCH v1 11/11] thermal/acpi: Use the thermal zone parameter to specify the device link Date: Tue, 7 Mar 2023 14:37:35 +0100 Message-Id: <20230307133735.90772-12-daniel.lezcano@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230307133735.90772-1-daniel.lezcano@linaro.org> References: <20230307133735.90772-1-daniel.lezcano@linaro.org> MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1759716754765953433?= X-GMAIL-MSGID: =?utf-8?q?1759716754765953433?= The thermal framework can create a cyclic link between the driver and the device via the thermal zone parameters when registering the thermal zone. As this option is supported by the thermal core code, let's use it and remove the specific code in the ACPI driver. This change has the benefit of self-encapsulate the thermal zone device structure. Signed-off-by: Daniel Lezcano --- drivers/acpi/thermal.c | 24 ++++-------------------- 1 file changed, 4 insertions(+), 20 deletions(-) diff --git a/drivers/acpi/thermal.c b/drivers/acpi/thermal.c index 255efa73ed70..7d5c56564556 100644 --- a/drivers/acpi/thermal.c +++ b/drivers/acpi/thermal.c @@ -789,6 +789,7 @@ static struct thermal_zone_device_ops acpi_thermal_zone_ops = { static int acpi_thermal_register_thermal_zone(struct acpi_thermal *tz) { + struct thermal_zone_params tzp = { .linked_dev = &tz->device->dev }; int trips = 0; int result; acpi_status status; @@ -808,33 +809,23 @@ static int acpi_thermal_register_thermal_zone(struct acpi_thermal *tz) if (tz->trips.passive.flags.valid) tz->thermal_zone = thermal_zone_device_register("acpitz", trips, 0, tz, - &acpi_thermal_zone_ops, NULL, + &acpi_thermal_zone_ops, &tzp, tz->trips.passive.tsp * 100, tz->polling_frequency * 100); else tz->thermal_zone = thermal_zone_device_register("acpitz", trips, 0, tz, - &acpi_thermal_zone_ops, NULL, + &acpi_thermal_zone_ops, &tzp, 0, tz->polling_frequency * 100); if (IS_ERR(tz->thermal_zone)) return -ENODEV; - result = sysfs_create_link(&tz->device->dev.kobj, - &tz->thermal_zone->device.kobj, "thermal_zone"); - if (result) - goto unregister_tzd; - - result = sysfs_create_link(&tz->thermal_zone->device.kobj, - &tz->device->dev.kobj, "device"); - if (result) - goto remove_tz_link; - status = acpi_bus_attach_private_data(tz->device->handle, tz->thermal_zone); if (ACPI_FAILURE(status)) { result = -ENODEV; - goto remove_dev_link; + goto unregister_tzd; } result = thermal_zone_device_enable(tz->thermal_zone); @@ -848,20 +839,13 @@ static int acpi_thermal_register_thermal_zone(struct acpi_thermal *tz) acpi_bus_detach: acpi_bus_detach_private_data(tz->device->handle); -remove_dev_link: - sysfs_remove_link(&tz->thermal_zone->device.kobj, "device"); -remove_tz_link: - sysfs_remove_link(&tz->device->dev.kobj, "thermal_zone"); unregister_tzd: thermal_zone_device_unregister(tz->thermal_zone); - return result; } static void acpi_thermal_unregister_thermal_zone(struct acpi_thermal *tz) { - sysfs_remove_link(&tz->device->dev.kobj, "thermal_zone"); - sysfs_remove_link(&tz->thermal_zone->device.kobj, "device"); thermal_zone_device_unregister(tz->thermal_zone); tz->thermal_zone = NULL; acpi_bus_detach_private_data(tz->device->handle);