From: "Kurt Borja" <kuurtb@gmail.com>
To: "Mark Pearson" <mpearson-lenovo@squebb.ca>
Cc: <hdegoede@redhat.com>, <ilpo.jarvinen@linux.intel.com>,
<platform-driver-x86@vger.kernel.org>,
<linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v2] platform/x86: thinkpad_acpi: Fix registration of tpacpi platform driver
Date: Tue, 11 Feb 2025 00:18:54 -0500 [thread overview]
Message-ID: <D7PD2KZCQJ4Z.BXO2PAN86IKH@gmail.com> (raw)
In-Reply-To: <20250210201656.4165-1-mpearson-lenovo@squebb.ca>
On Mon Feb 10, 2025 at 3:16 PM -05, Mark Pearson wrote:
> When reviewing and testing the recent platform profile changes I had
> missed that they prevent the tpacpi platform driver from registering.
> This error is seen in the kernel logs, and the various tpacpi entries
> are not created:
> [ 7550.642171] platform thinkpad_acpi: Resources present before probing
>
> This happens because devm_platform_profile_register() is called before
> tpacpi_pdev probes (thanks to Kurt Borja for identifying root cause)
>
> For now revert back to the old platform_profile_register to fix the
> issue. Will work on re-implementing this later as more testing is needed
> for full solution.
>
> Tested on X1 Carbon G12.
>
> Fixes: 31658c916fa6 ("platform/x86: thinkpad_acpi: Use devm_platform_profile_register()")
>
> Signed-off-by: Mark Pearson <mpearson-lenovo@squebb.ca>
> ---
> Changes in v2:
> Modified approach to instead revert to old platform_profile_register
> method. Will revisit using devm_ version in the future as more testing
> needed.
>
> drivers/platform/x86/thinkpad_acpi.c | 10 ++++++++--
> 1 file changed, 8 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/platform/x86/thinkpad_acpi.c b/drivers/platform/x86/thinkpad_acpi.c
> index 1fcb0f99695a..85d01bd5dc31 100644
> --- a/drivers/platform/x86/thinkpad_acpi.c
> +++ b/drivers/platform/x86/thinkpad_acpi.c
> @@ -10646,8 +10646,8 @@ static int tpacpi_dytc_profile_init(struct ibm_init_struct *iibm)
> "DYTC version %d: thermal mode available\n", dytc_version);
>
> /* Create platform_profile structure and register */
> - tpacpi_pprof = devm_platform_profile_register(&tpacpi_pdev->dev, "thinkpad-acpi",
> - NULL, &dytc_profile_ops);
> + tpacpi_pprof = platform_profile_register(&tpacpi_pdev->dev, "thinkpad-acpi-profile",
> + NULL, &dytc_profile_ops);
> /*
> * If for some reason platform_profiles aren't enabled
> * don't quit terminally.
> @@ -10665,8 +10665,14 @@ static int tpacpi_dytc_profile_init(struct ibm_init_struct *iibm)
> return 0;
> }
>
> +static void dytc_profile_exit(void)
> +{
> + platform_profile_remove(tpacpi_pprof);
I just noticed this will be called even if platform_profile_register()
fails, as the comment suggests.
We need to check for IS_ERR_OR_NULL() before unregistering.
--
~ Kurt
> +}
> +
> static struct ibm_struct dytc_profile_driver_data = {
> .name = "dytc-profile",
> + .exit = dytc_profile_exit,
> };
>
> /*************************************************************************
next prev parent reply other threads:[~2025-02-11 5:18 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-10 20:16 [PATCH v2] platform/x86: thinkpad_acpi: Fix registration of tpacpi platform driver Mark Pearson
2025-02-10 21:07 ` Kurt Borja
2025-02-10 21:28 ` Mark Pearson
2025-02-11 5:18 ` Kurt Borja [this message]
2025-02-11 16:21 ` Mark Pearson
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=D7PD2KZCQJ4Z.BXO2PAN86IKH@gmail.com \
--to=kuurtb@gmail.com \
--cc=hdegoede@redhat.com \
--cc=ilpo.jarvinen@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mpearson-lenovo@squebb.ca \
--cc=platform-driver-x86@vger.kernel.org \
/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: link
Be 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.