From: Amjad Ouled-Ameur <aouledameur@baylibre.com> To: "Rafael J. Wysocki" <rafael@kernel.org>, Daniel Lezcano <daniel.lezcano@linaro.org>, Amit Kucheria <amitk@kernel.org>, Zhang Rui <rui.zhang@intel.com>, Rob Herring <robh+dt@kernel.org>, Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> Cc: linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, Fabien Parent <fparent@baylibre.com>, Matthias Brugger <matthias.bgg@gmail.com>, AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>, Rob Herring <robh@kernel.org>, Markus Schneider-Pargmann <msp@baylibre.com>, Hsin-Yi Wang <hsinyi@chromium.org>, Amjad Ouled-Ameur <aouledameur@baylibre.com>, Michael Kao <michael.kao@mediatek.com> Subject: [PATCH v9 4/5] thermal: mediatek: add callback for raw to mcelsius conversion Date: Fri, 27 Jan 2023 16:44:45 +0100 [thread overview] Message-ID: <20221018-up-i350-thermal-bringup-v9-4-55a1ae14af74@baylibre.com> (raw) In-Reply-To: <20221018-up-i350-thermal-bringup-v9-0-55a1ae14af74@baylibre.com> Set a callback at probe time instead of checking the version at each get_sensor_temp(). Signed-off-by: Amjad Ouled-Ameur <aouledameur@baylibre.com> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> --- drivers/thermal/mtk_thermal.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/drivers/thermal/mtk_thermal.c b/drivers/thermal/mtk_thermal.c index 3a5df1440822..b8e06f6c7c42 100644 --- a/drivers/thermal/mtk_thermal.c +++ b/drivers/thermal/mtk_thermal.c @@ -307,6 +307,8 @@ struct mtk_thermal { const struct mtk_thermal_data *conf; struct mtk_thermal_bank banks[MAX_NUM_ZONES]; + + int (*raw_to_mcelsius)(struct mtk_thermal *mt, int sensno, s32 raw); }; /* MT8183 thermal sensor data */ @@ -726,13 +728,7 @@ static int mtk_thermal_bank_temperature(struct mtk_thermal_bank *bank) for (i = 0; i < conf->bank_data[bank->id].num_sensors; i++) { raw = readl(mt->thermal_base + conf->msr[i]); - if (mt->conf->version == MTK_THERMAL_V1) { - temp = raw_to_mcelsius_v1( - mt, conf->bank_data[bank->id].sensors[i], raw); - } else { - temp = raw_to_mcelsius_v2( - mt, conf->bank_data[bank->id].sensors[i], raw); - } + temp = mt->raw_to_mcelsius(mt, i, raw); /* * The first read of a sensor often contains very high bogus @@ -1150,6 +1146,9 @@ static int mtk_thermal_probe(struct platform_device *pdev) mtk_thermal_turn_on_buffer(mt, apmixed_base); + mt->raw_to_mcelsius = (mt->conf->version == MTK_THERMAL_V1) ? + raw_to_mcelsius_v1 : raw_to_mcelsius_v2; + if (mt->conf->version == MTK_THERMAL_V2) { mtk_thermal_release_periodic_ts(mt, auxadc_base); } -- 2.39.1
WARNING: multiple messages have this Message-ID (diff)
From: Amjad Ouled-Ameur <aouledameur@baylibre.com> To: "Rafael J. Wysocki" <rafael@kernel.org>, Daniel Lezcano <daniel.lezcano@linaro.org>, Amit Kucheria <amitk@kernel.org>, Zhang Rui <rui.zhang@intel.com>, Rob Herring <robh+dt@kernel.org>, Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> Cc: linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, Fabien Parent <fparent@baylibre.com>, Matthias Brugger <matthias.bgg@gmail.com>, AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>, Rob Herring <robh@kernel.org>, Markus Schneider-Pargmann <msp@baylibre.com>, Hsin-Yi Wang <hsinyi@chromium.org>, Amjad Ouled-Ameur <aouledameur@baylibre.com>, Michael Kao <michael.kao@mediatek.com> Subject: [PATCH v9 4/5] thermal: mediatek: add callback for raw to mcelsius conversion Date: Fri, 27 Jan 2023 16:44:45 +0100 [thread overview] Message-ID: <20221018-up-i350-thermal-bringup-v9-4-55a1ae14af74@baylibre.com> (raw) In-Reply-To: <20221018-up-i350-thermal-bringup-v9-0-55a1ae14af74@baylibre.com> Set a callback at probe time instead of checking the version at each get_sensor_temp(). Signed-off-by: Amjad Ouled-Ameur <aouledameur@baylibre.com> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> --- drivers/thermal/mtk_thermal.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/drivers/thermal/mtk_thermal.c b/drivers/thermal/mtk_thermal.c index 3a5df1440822..b8e06f6c7c42 100644 --- a/drivers/thermal/mtk_thermal.c +++ b/drivers/thermal/mtk_thermal.c @@ -307,6 +307,8 @@ struct mtk_thermal { const struct mtk_thermal_data *conf; struct mtk_thermal_bank banks[MAX_NUM_ZONES]; + + int (*raw_to_mcelsius)(struct mtk_thermal *mt, int sensno, s32 raw); }; /* MT8183 thermal sensor data */ @@ -726,13 +728,7 @@ static int mtk_thermal_bank_temperature(struct mtk_thermal_bank *bank) for (i = 0; i < conf->bank_data[bank->id].num_sensors; i++) { raw = readl(mt->thermal_base + conf->msr[i]); - if (mt->conf->version == MTK_THERMAL_V1) { - temp = raw_to_mcelsius_v1( - mt, conf->bank_data[bank->id].sensors[i], raw); - } else { - temp = raw_to_mcelsius_v2( - mt, conf->bank_data[bank->id].sensors[i], raw); - } + temp = mt->raw_to_mcelsius(mt, i, raw); /* * The first read of a sensor often contains very high bogus @@ -1150,6 +1146,9 @@ static int mtk_thermal_probe(struct platform_device *pdev) mtk_thermal_turn_on_buffer(mt, apmixed_base); + mt->raw_to_mcelsius = (mt->conf->version == MTK_THERMAL_V1) ? + raw_to_mcelsius_v1 : raw_to_mcelsius_v2; + if (mt->conf->version == MTK_THERMAL_V2) { mtk_thermal_release_periodic_ts(mt, auxadc_base); } -- 2.39.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2023-01-27 15:46 UTC|newest] Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top 2023-01-27 15:44 [PATCH v9 0/5] thermal: mediatek: Add support for MT8365 SoC Amjad Ouled-Ameur 2023-01-27 15:44 ` Amjad Ouled-Ameur 2023-01-27 15:44 ` [PATCH v9 1/5] dt-bindings: thermal: mediatek: add binding documentation " Amjad Ouled-Ameur 2023-01-27 15:44 ` Amjad Ouled-Ameur 2023-01-27 15:44 ` [PATCH v9 2/5] thermal: mediatek: control buffer enablement tweaks Amjad Ouled-Ameur 2023-01-27 15:44 ` Amjad Ouled-Ameur 2023-01-27 21:48 ` Daniel Lezcano 2023-01-27 21:48 ` Daniel Lezcano 2023-01-27 22:21 ` Amjad Ouled-Ameur 2023-01-27 22:21 ` Amjad Ouled-Ameur 2023-01-28 7:52 ` Daniel Lezcano 2023-01-28 7:52 ` Daniel Lezcano 2023-03-09 17:14 ` Amjad Ouled-Ameur 2023-03-09 17:14 ` Amjad Ouled-Ameur 2023-01-27 15:44 ` [PATCH v9 3/5] thermal: mediatek: add support for MT8365 SoC Amjad Ouled-Ameur 2023-01-27 15:44 ` Amjad Ouled-Ameur 2023-01-27 15:44 ` Amjad Ouled-Ameur [this message] 2023-01-27 15:44 ` [PATCH v9 4/5] thermal: mediatek: add callback for raw to mcelsius conversion Amjad Ouled-Ameur 2023-01-27 21:56 ` Daniel Lezcano 2023-01-27 21:56 ` Daniel Lezcano 2023-01-27 15:44 ` [PATCH v9 5/5] thermal: mediatek: add delay after thermal banks initialization Amjad Ouled-Ameur 2023-01-27 15:44 ` Amjad Ouled-Ameur 2023-01-27 21:03 ` Daniel Lezcano 2023-01-27 21:03 ` Daniel Lezcano 2023-01-27 21:59 ` [PATCH v9 0/5] thermal: mediatek: Add support for MT8365 SoC Daniel Lezcano 2023-01-27 21:59 ` Daniel Lezcano 2023-01-27 22:23 ` Amjad Ouled-Ameur 2023-01-27 22:23 ` Amjad Ouled-Ameur 2023-03-06 10:13 ` Amjad Ouled-Ameur 2023-03-06 10:13 ` Amjad Ouled-Ameur 2023-03-08 18:00 ` Daniel Lezcano 2023-03-08 18:00 ` Daniel Lezcano
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20221018-up-i350-thermal-bringup-v9-4-55a1ae14af74@baylibre.com \ --to=aouledameur@baylibre.com \ --cc=amitk@kernel.org \ --cc=angelogioacchino.delregno@collabora.com \ --cc=daniel.lezcano@linaro.org \ --cc=devicetree@vger.kernel.org \ --cc=fparent@baylibre.com \ --cc=hsinyi@chromium.org \ --cc=krzysztof.kozlowski+dt@linaro.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mediatek@lists.infradead.org \ --cc=linux-pm@vger.kernel.org \ --cc=matthias.bgg@gmail.com \ --cc=michael.kao@mediatek.com \ --cc=msp@baylibre.com \ --cc=rafael@kernel.org \ --cc=robh+dt@kernel.org \ --cc=robh@kernel.org \ --cc=rui.zhang@intel.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.