HSI changes for the 6.18 series

* Remove redundant pm_runtime_mark_last_busy() calls
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEE72YNB0Y/i3JqeVQT2O7X88g7+poFAmjcS64ACgkQ2O7X88g7
 +ppamA//e+7dlQrKfeACk39Ys/uFGRB7q01TcIIShLpK6+IKOIK8jqW+Imk1vsoN
 ZZMmpLCmgkFnDyL8gTIsvu1a/vCH3iSUKR29Sn33OqpdLqEzbSM8X2oGhPWlcJxi
 WBWf9TY5zG0K78SDmZpC+BvzG3SFMPYGeC2vPBmeeO7zE56zuJcWQJv5CnRN1qMr
 Eg4SDWWgcP37X6SUlgh5ufev4OzUfdPKvE1GC4b9GLUXwkm6ne/+ppIlThu7P37Y
 EuweNdEZazwaObiFgbisqI2DZRvFHNIbeTc/GS0l+kZXmndVV1eROrDzg38sbbSq
 Js6EAbBDkiZwXH+M84Y4KG3mkrN65kUUD39FQ6oMUd5X+syFtSqpfKuc89JRuftV
 IlYm4YUMwkomY92d2nad3CpsOmJWvC7jRDjwRiUvJ78tWiu//iZCcS/7Admo+of0
 k1HN/NQI6tsCF+o5Kyp4s4sN3wjKNfQ6+ynFTC7j75ZsmGBiKnaINPWMFE5o5auL
 uxgc9uh4jRP2fZHv9MTYfXTJHbJQyOR2Dgktl0diODpEAxpA3wn0ogEfpICrnc4a
 /aAyX++7hj2py4Dn6ThygEp1UZDlatK7aS08wFsxBvdfA2GHRfmGrsaOkBhblgSW
 t9u++c33Emfrr0ZGEGLChtBzPi87zNUPrwDXx1BIaBZ+uEGQVbY=
 =Xphr
 -----END PGP SIGNATURE-----

Merge tag 'hsi-for-6.18' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi

Pull HSI update from Sebastian Reichel:

 - Remove redundant pm_runtime_mark_last_busy() calls

* tag 'hsi-for-6.18' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi:
  HSI: omap_ssi_port: Remove redundant pm_runtime_mark_last_busy() calls
This commit is contained in:
Linus Torvalds 2025-10-01 13:00:33 -07:00
commit dba8acc3ef

View File

@ -362,7 +362,6 @@ static int ssi_async_break(struct hsi_msg *msg)
spin_unlock_bh(&omap_port->lock);
}
out:
pm_runtime_mark_last_busy(omap_port->pdev);
pm_runtime_put_autosuspend(omap_port->pdev);
return err;
@ -401,7 +400,6 @@ static int ssi_async(struct hsi_msg *msg)
msg->status = HSI_STATUS_ERROR;
}
spin_unlock_bh(&omap_port->lock);
pm_runtime_mark_last_busy(omap_port->pdev);
pm_runtime_put_autosuspend(omap_port->pdev);
dev_dbg(&port->device, "msg status %d ttype %d ch %d\n",
msg->status, msg->ttype, msg->channel);
@ -504,7 +502,6 @@ static int ssi_setup(struct hsi_client *cl)
omap_port->ssr.mode = cl->rx_cfg.mode;
out:
spin_unlock_bh(&omap_port->lock);
pm_runtime_mark_last_busy(omap_port->pdev);
pm_runtime_put_autosuspend(omap_port->pdev);
return err;
@ -570,7 +567,6 @@ static int ssi_flush(struct hsi_client *cl)
pinctrl_pm_select_default_state(omap_port->pdev);
spin_unlock_bh(&omap_port->lock);
pm_runtime_mark_last_busy(omap_port->pdev);
pm_runtime_put_autosuspend(omap_port->pdev);
return 0;
@ -625,7 +621,6 @@ static int ssi_stop_tx(struct hsi_client *cl)
writel(SSI_WAKE(0), omap_ssi->sys + SSI_CLEAR_WAKE_REG(port->num));
spin_unlock_bh(&omap_port->wk_lock);
pm_runtime_mark_last_busy(omap_port->pdev);
pm_runtime_put_autosuspend(omap_port->pdev); /* Release clocks */
@ -653,7 +648,6 @@ static void ssi_transfer(struct omap_ssi_port *omap_port,
}
}
spin_unlock_bh(&omap_port->lock);
pm_runtime_mark_last_busy(omap_port->pdev);
pm_runtime_put_autosuspend(omap_port->pdev);
}
@ -683,7 +677,6 @@ static void ssi_cleanup_queues(struct hsi_client *cl)
txbufstate |= (1 << i);
status |= SSI_DATAACCEPT(i);
/* Release the clocks writes, also GDD ones */
pm_runtime_mark_last_busy(omap_port->pdev);
pm_runtime_put_autosuspend(omap_port->pdev);
}
ssi_flush_queue(&omap_port->txqueue[i], cl);
@ -739,7 +732,6 @@ static void ssi_cleanup_gdd(struct hsi_controller *ssi, struct hsi_client *cl)
* ssi_cleanup_queues
*/
if (msg->ttype == HSI_MSG_READ) {
pm_runtime_mark_last_busy(omap_port->pdev);
pm_runtime_put_autosuspend(omap_port->pdev);
}
omap_ssi->gdd_trn[i].msg = NULL;
@ -936,7 +928,6 @@ static void ssi_pio_complete(struct hsi_port *port, struct list_head *queue)
reg = readl(omap_ssi->sys + SSI_MPU_ENABLE_REG(port->num, 0));
if (msg->ttype == HSI_MSG_WRITE) {
/* Release clocks for write transfer */
pm_runtime_mark_last_busy(omap_port->pdev);
pm_runtime_put_autosuspend(omap_port->pdev);
}
reg &= ~val;
@ -981,7 +972,6 @@ static irqreturn_t ssi_pio_thread(int irq, void *ssi_port)
/* TODO: sleep if we retry? */
} while (status_reg);
pm_runtime_mark_last_busy(omap_port->pdev);
pm_runtime_put_autosuspend(omap_port->pdev);
return IRQ_HANDLED;
@ -1018,7 +1008,6 @@ static irqreturn_t ssi_wake_thread(int irq __maybe_unused, void *ssi_port)
}
hsi_event(port, HSI_EVENT_STOP_RX);
if (test_and_clear_bit(SSI_WAKE_EN, &omap_port->flags)) {
pm_runtime_mark_last_busy(omap_port->pdev);
pm_runtime_put_autosuspend(omap_port->pdev);
}
}