hte: tegra194-test: shut down timer before GPIO release

tegra_hte_test_remove() releases GPIO descriptors before stopping
hte.timer. gpio_timer_cb() accesses hte.gpio_out and rearms the timer, so
a callback concurrent with remove can use a released descriptor and rearm
after teardown.

Shut down the timer before releasing the GPIO descriptors.
timer_shutdown_sync() waits for a running callback and prevents it from
being rearmed.

Fixes: 9a75a7cd03 ("hte: Add Tegra HTE test driver")
Cc: stable@vger.kernel.org
Assisted-by: Codex:GPT-5
Signed-off-by: Runyu Xiao <runyu.xiao@seu.edu.cn>
Acked-by: Dipen Patel <dipenp@nvidia.com>
Signed-off-by: Dipen Patel <dipenp@nvidia.com>
This commit is contained in:
Runyu Xiao 2026-09-04 14:11:37 +08:00 committed by Dipen Patel
parent 1329abe1ba
commit 30167fadbf

View File

@ -217,10 +217,10 @@ static void tegra_hte_test_remove(struct platform_device *pdev)
{
(void)pdev;
timer_shutdown_sync(&hte.timer);
free_irq(hte.gpio_in_irq, &hte);
gpiod_put(hte.gpio_in);
gpiod_put(hte.gpio_out);
timer_delete_sync(&hte.timer);
}
static struct platform_driver tegra_hte_test_driver = {