From: Mikko Perttunen <mperttunen@nvidia.com>
To: "Jassi Brar" <jassisinghbrar@gmail.com>,
"Viresh Kumar" <viresh.kumar@linaro.org>,
"Tushar Khandelwal" <Tushar.Khandelwal@arm.com>,
"Sudeep Holla" <sudeep.holla@kernel.org>,
"Cristian Marussi" <cristian.marussi@arm.com>,
"Marek Behún" <kabel@kernel.org>,
"Florian Fainelli" <florian.fainelli@broadcom.com>,
"Broadcom internal kernel review list"
<bcm-kernel-feedback-list@broadcom.com>,
"Ray Jui" <rjui@broadcom.com>,
"Scott Branden" <sbranden@broadcom.com>,
"Conor Dooley" <conor.dooley@microchip.com>,
"Daire McNamara" <daire.mcnamara@microchip.com>,
"Sibi Sankar" <sibi.sankar@oss.qualcomm.com>,
"Manivannan Sadhasivam" <mani@kernel.org>,
"Orson Zhai" <orsonzhai@gmail.com>,
"Baolin Wang" <baolin.wang@linux.alibaba.com>,
"Chunyan Zhang" <zhang.lyra@gmail.com>,
"Maxime Coquelin" <mcoquelin.stm32@gmail.com>,
"Alexandre Torgue" <alexandre.torgue@foss.st.com>,
"Chen-Yu Tsai" <wens@kernel.org>,
"Jernej Skrabec" <jernej.skrabec@gmail.com>,
"Samuel Holland" <samuel@sholland.org>,
"Thierry Reding" <thierry.reding@kernel.org>,
"Jonathan Hunter" <jonathanh@nvidia.com>,
"open list:MAILBOX API" <linux-kernel@vger.kernel.org>,
"moderated list:MAILBOX ARM MHUv3"
<linux-arm-kernel@lists.infradead.org>,
"moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE"
<linux-rpi-kernel@lists.infradead.org>,
"open list:RISC-V MICROCHIP SUPPORT"
<linux-riscv@lists.infradead.org>,
"open list:QUALCOMM CPUCP MAILBOX DRIVER"
<linux-arm-msm@vger.kernel.org>,
"moderated list:ARM/STM32 ARCHITECTURE"
<linux-stm32@st-md-mailman.stormreply.com>,
"open list:ARM/Allwinner sunXi SoC support"
<linux-sunxi@lists.linux.dev>,
"open list:TEGRA ARCHITECTURE SUPPORT"
<linux-tegra@vger.kernel.org>, "Pan Chuang" <panchuang@vivo.com>
Cc: Pan Chuang <panchuang@vivo.com>
Subject: Re: [PATCH] mailbox: Remove redundant dev_err()/dev_err_probe()
Date: Tue, 21 Jul 2026 16:28:23 +0900 [thread overview]
Message-ID: <tdOrdi__TZC4GQEnmWeUIw@nvidia.com> (raw)
In-Reply-To: <20260716025215.33592-1-panchuang@vivo.com>
On Thursday, July 16, 2026 11:52 AM Pan Chuang wrote:
> Since commit 55b48e23f5c4 ("genirq/devres: Add error handling in
> devm_request_*_irq()"), devm_request_irq() and devm_request_threaded_irq()
> automatically log detailed error messages on failure. Remove the
> now-redundant driver-specific dev_err() and dev_err_probe() calls.
>
> Signed-off-by: Pan Chuang <panchuang@vivo.com>
> ---
> drivers/mailbox/arm_mhu_db.c | 1 -
> drivers/mailbox/arm_mhuv2.c | 9 ++-------
> drivers/mailbox/arm_mhuv3.c | 5 ++---
> drivers/mailbox/armada-37xx-rwtm-mailbox.c | 4 +---
> drivers/mailbox/bcm-pdc-mailbox.c | 5 +----
> drivers/mailbox/bcm2835-mailbox.c | 5 +----
> drivers/mailbox/bcm74110-mailbox.c | 2 +-
> drivers/mailbox/cv1800-mailbox.c | 2 +-
> drivers/mailbox/hi6220-mailbox.c | 5 +----
> drivers/mailbox/mailbox-mpfs.c | 2 --
> drivers/mailbox/mailbox-sti.c | 4 +---
> drivers/mailbox/qcom-cpucp-mbox.c | 2 +-
> drivers/mailbox/qcom-ipcc.c | 4 +---
> drivers/mailbox/sprd-mailbox.c | 12 +++---------
> drivers/mailbox/stm32-ipcc.c | 4 +---
> drivers/mailbox/sun6i-msgbox.c | 4 +---
> drivers/mailbox/tegra-hsp.c | 11 ++---------
> 17 files changed, 20 insertions(+), 61 deletions(-)
>
> diff --git a/drivers/mailbox/arm_mhu_db.c b/drivers/mailbox/arm_mhu_db.c
> index 9e937b09c5fb..a39239e38a47 100644
> --- a/drivers/mailbox/arm_mhu_db.c
> +++ b/drivers/mailbox/arm_mhu_db.c
> @@ -318,7 +318,6 @@ static int mhu_db_probe(struct amba_device *adev, const struct amba_id *id)
> mhu_db_mbox_rx_handler,
> IRQF_ONESHOT, "mhu_db_link", mhu);
> if (err) {
> - dev_err(dev, "Can't claim IRQ %d\n", irq);
> mbox_controller_unregister(&mhu->mbox);
> return err;
> }
> diff --git a/drivers/mailbox/arm_mhuv2.c b/drivers/mailbox/arm_mhuv2.c
> index f035284944c0..213fd4a39993 100644
> --- a/drivers/mailbox/arm_mhuv2.c
> +++ b/drivers/mailbox/arm_mhuv2.c
> @@ -986,10 +986,7 @@ static int mhuv2_tx_init(struct amba_device *adev, struct mhuv2 *mhu,
> ret = devm_request_threaded_irq(dev, adev->irq[0], NULL,
> mhuv2_sender_interrupt,
> IRQF_ONESHOT, "mhuv2-tx", mhu);
> - if (ret) {
> - dev_err(dev, "Failed to request tx IRQ, fallback to polling mode: %d\n",
> - ret);
> - } else {
> + if (!ret) {
> mhu->mbox.txdone_irq = true;
> mhu->mbox.txdone_poll = false;
> mhu->irq = adev->irq[0];
> @@ -1039,10 +1036,8 @@ static int mhuv2_rx_init(struct amba_device *adev, struct mhuv2 *mhu,
> ret = devm_request_threaded_irq(dev, mhu->irq, NULL,
> mhuv2_receiver_interrupt, IRQF_ONESHOT,
> "mhuv2-rx", mhu);
> - if (ret) {
> - dev_err(dev, "Failed to request rx IRQ\n");
> + if (ret)
> return ret;
> - }
>
> /* Mask all the channel windows */
> for (i = 0; i < mhu->windows; i++)
> diff --git a/drivers/mailbox/arm_mhuv3.c b/drivers/mailbox/arm_mhuv3.c
> index a1c528be47f3..6569c3dda377 100644
> --- a/drivers/mailbox/arm_mhuv3.c
> +++ b/drivers/mailbox/arm_mhuv3.c
> @@ -982,8 +982,7 @@ static int mhuv3_setup_pbx(struct mhuv3 *mhu)
> mhuv3_pbx_comb_interrupt,
> IRQF_ONESHOT, "mhuv3-pbx", mhu);
> if (ret)
> - return dev_err_probe(dev, ret,
> - "Failed to request PBX IRQ\n");
> + return ret;
>
> mhu->mbox.txdone_irq = true;
> mhu->mbox.txdone_poll = false;
> @@ -1020,7 +1019,7 @@ static int mhuv3_setup_mbx(struct mhuv3 *mhu)
> mhuv3_mbx_comb_interrupt, IRQF_ONESHOT,
> "mhuv3-mbx", mhu);
> if (ret)
> - return dev_err_probe(dev, ret, "Failed to request MBX IRQ\n");
> + return ret;
>
> for (i = 0; i < NUM_EXT; i++)
> if (mhu->ext[i])
> diff --git a/drivers/mailbox/armada-37xx-rwtm-mailbox.c b/drivers/mailbox/armada-37xx-rwtm-mailbox.c
> index 456a117a65fd..047926711e96 100644
> --- a/drivers/mailbox/armada-37xx-rwtm-mailbox.c
> +++ b/drivers/mailbox/armada-37xx-rwtm-mailbox.c
> @@ -108,10 +108,8 @@ static int a37xx_mbox_startup(struct mbox_chan *chan)
>
> ret = devm_request_irq(mbox->dev, mbox->irq, a37xx_mbox_irq_handler, 0,
> DRIVER_NAME, chan);
> - if (ret < 0) {
> - dev_err(mbox->dev, "Cannot request irq\n");
> + if (ret < 0)
> return ret;
> - }
>
> /* enable IRQ generation */
> reg = readl(mbox->base + RWTM_HOST_INT_MASK);
> diff --git a/drivers/mailbox/bcm-pdc-mailbox.c b/drivers/mailbox/bcm-pdc-mailbox.c
> index 406bc41cba60..6fcc4002ad4f 100644
> --- a/drivers/mailbox/bcm-pdc-mailbox.c
> +++ b/drivers/mailbox/bcm-pdc-mailbox.c
> @@ -1403,11 +1403,8 @@ static int pdc_interrupts_init(struct pdc_state *pdcs)
>
> err = devm_request_irq(dev, pdcs->pdc_irq, pdc_irq_handler, 0,
> dev_name(dev), dev);
> - if (err) {
> - dev_err(dev, "IRQ %u request failed with err %d\n",
> - pdcs->pdc_irq, err);
> + if (err)
> return err;
> - }
> return PDC_SUCCESS;
> }
>
> diff --git a/drivers/mailbox/bcm2835-mailbox.c b/drivers/mailbox/bcm2835-mailbox.c
> index ea12fb8d2401..5af1e434c71c 100644
> --- a/drivers/mailbox/bcm2835-mailbox.c
> +++ b/drivers/mailbox/bcm2835-mailbox.c
> @@ -147,11 +147,8 @@ static int bcm2835_mbox_probe(struct platform_device *pdev)
> ret = devm_request_irq(dev, irq_of_parse_and_map(dev->of_node, 0),
> bcm2835_mbox_irq, IRQF_NO_SUSPEND, dev_name(dev),
> mbox);
> - if (ret) {
> - dev_err(dev, "Failed to register a mailbox IRQ handler: %d\n",
> - ret);
> + if (ret)
> return -ENODEV;
> - }
>
> mbox->regs = devm_platform_ioremap_resource(pdev, 0);
> if (IS_ERR(mbox->regs)) {
> diff --git a/drivers/mailbox/bcm74110-mailbox.c b/drivers/mailbox/bcm74110-mailbox.c
> index 344cfc35984b..c8709d509912 100644
> --- a/drivers/mailbox/bcm74110-mailbox.c
> +++ b/drivers/mailbox/bcm74110-mailbox.c
> @@ -601,7 +601,7 @@ static int bcm74110_mbox_probe(struct platform_device *pdev)
> ret = devm_request_irq(dev, mbox->rx_irq, bcm74110_mbox_isr,
> IRQF_NO_SUSPEND, pdev->name, mbox);
> if (ret)
> - return dev_err_probe(dev, ret, "Failed to request irq\n");
> + return ret;
>
> mbox->controller.ops = &bcm74110_mbox_chan_ops;
> mbox->controller.dev = dev;
> diff --git a/drivers/mailbox/cv1800-mailbox.c b/drivers/mailbox/cv1800-mailbox.c
> index 4bca9d8be4ba..b062c2c4fc61 100644
> --- a/drivers/mailbox/cv1800-mailbox.c
> +++ b/drivers/mailbox/cv1800-mailbox.c
> @@ -189,7 +189,7 @@ static int cv1800_mbox_probe(struct platform_device *pdev)
> cv1800_mbox_isr, IRQF_ONESHOT,
> dev_name(&pdev->dev), mb);
> if (err < 0)
> - return dev_err_probe(dev, err, "Failed to register irq\n");
> + return err;
>
> for (idx = 0; idx < MAILBOX_MAX_CHAN; idx++) {
> mb->priv[idx].idx = idx;
> diff --git a/drivers/mailbox/hi6220-mailbox.c b/drivers/mailbox/hi6220-mailbox.c
> index 69d15b6283e9..8eb8242209be 100644
> --- a/drivers/mailbox/hi6220-mailbox.c
> +++ b/drivers/mailbox/hi6220-mailbox.c
> @@ -297,11 +297,8 @@ static int hi6220_mbox_probe(struct platform_device *pdev)
>
> err = devm_request_irq(dev, mbox->irq, hi6220_mbox_interrupt, 0,
> dev_name(dev), mbox);
> - if (err) {
> - dev_err(dev, "Failed to register a mailbox IRQ handler: %d\n",
> - err);
> + if (err)
> return -ENODEV;
> - }
>
> mbox->controller.dev = dev;
> mbox->controller.chans = &mbox->chan[0];
> diff --git a/drivers/mailbox/mailbox-mpfs.c b/drivers/mailbox/mailbox-mpfs.c
> index 6c40d865b3f1..704a259bbca8 100644
> --- a/drivers/mailbox/mailbox-mpfs.c
> +++ b/drivers/mailbox/mailbox-mpfs.c
> @@ -219,8 +219,6 @@ static int mpfs_mbox_startup(struct mbox_chan *chan)
> return -EINVAL;
>
> ret = devm_request_irq(mbox->dev, mbox->irq, mpfs_mbox_inbox_isr, 0, "mpfs-mailbox", chan);
> - if (ret)
> - dev_err(mbox->dev, "failed to register mailbox interrupt:%d\n", ret);
>
> return ret;
> }
> diff --git a/drivers/mailbox/mailbox-sti.c b/drivers/mailbox/mailbox-sti.c
> index b6c9ecbbc8ec..4fb5d1b5504a 100644
> --- a/drivers/mailbox/mailbox-sti.c
> +++ b/drivers/mailbox/mailbox-sti.c
> @@ -468,10 +468,8 @@ static int sti_mbox_probe(struct platform_device *pdev)
> sti_mbox_irq_handler,
> sti_mbox_thread_handler,
> IRQF_ONESHOT, mdev->name, mdev);
> - if (ret) {
> - dev_err(&pdev->dev, "Can't claim IRQ %d\n", irq);
> + if (ret)
> return -EINVAL;
> - }
>
> dev_info(&pdev->dev, "%s: Registered Tx/Rx Mailbox\n", mdev->name);
>
> diff --git a/drivers/mailbox/qcom-cpucp-mbox.c b/drivers/mailbox/qcom-cpucp-mbox.c
> index 862e45e8fbd5..8d0000e2b2f9 100644
> --- a/drivers/mailbox/qcom-cpucp-mbox.c
> +++ b/drivers/mailbox/qcom-cpucp-mbox.c
> @@ -156,7 +156,7 @@ static int qcom_cpucp_mbox_probe(struct platform_device *pdev)
> ret = devm_request_irq(dev, irq, qcom_cpucp_mbox_irq_fn,
> IRQF_TRIGGER_HIGH | IRQF_NO_SUSPEND, "apss_cpucp_mbox", cpucp);
> if (ret < 0)
> - return dev_err_probe(dev, ret, "Failed to register irq: %d\n", irq);
> + return ret;
>
> writeq(APSS_CPUCP_RX_MBOX_CMD_MASK, cpucp->rx_base + APSS_CPUCP_RX_MBOX_MAP);
>
> diff --git a/drivers/mailbox/qcom-ipcc.c b/drivers/mailbox/qcom-ipcc.c
> index d957d989c0ce..e5ebb4a237ff 100644
> --- a/drivers/mailbox/qcom-ipcc.c
> +++ b/drivers/mailbox/qcom-ipcc.c
> @@ -323,10 +323,8 @@ static int qcom_ipcc_probe(struct platform_device *pdev)
> ret = devm_request_irq(&pdev->dev, ipcc->irq, qcom_ipcc_irq_fn,
> IRQF_TRIGGER_HIGH | IRQF_NO_SUSPEND |
> IRQF_NO_THREAD, name, ipcc);
> - if (ret < 0) {
> - dev_err(&pdev->dev, "Failed to register the irq: %d\n", ret);
> + if (ret < 0)
> goto err_req_irq;
> - }
>
> platform_set_drvdata(pdev, ipcc);
>
> diff --git a/drivers/mailbox/sprd-mailbox.c b/drivers/mailbox/sprd-mailbox.c
> index 565502904e1f..9013d2ece55f 100644
> --- a/drivers/mailbox/sprd-mailbox.c
> +++ b/drivers/mailbox/sprd-mailbox.c
> @@ -377,10 +377,8 @@ static int sprd_mbox_probe(struct platform_device *pdev)
>
> ret = devm_request_irq(dev, inbox_irq, sprd_mbox_inbox_isr,
> IRQF_NO_SUSPEND, dev_name(dev), priv);
> - if (ret) {
> - dev_err(dev, "failed to request inbox IRQ: %d\n", ret);
> + if (ret)
> return ret;
> - }
>
> outbox_irq = platform_get_irq_byname(pdev, "outbox");
> if (outbox_irq < 0)
> @@ -388,20 +386,16 @@ static int sprd_mbox_probe(struct platform_device *pdev)
>
> ret = devm_request_irq(dev, outbox_irq, sprd_mbox_outbox_isr,
> IRQF_NO_SUSPEND, dev_name(dev), priv);
> - if (ret) {
> - dev_err(dev, "failed to request outbox IRQ: %d\n", ret);
> + if (ret)
> return ret;
> - }
>
> /* Supplementary outbox IRQ is optional */
> supp_irq = platform_get_irq_byname(pdev, "supp-outbox");
> if (supp_irq > 0) {
> ret = devm_request_irq(dev, supp_irq, sprd_mbox_supp_isr,
> IRQF_NO_SUSPEND, dev_name(dev), priv);
> - if (ret) {
> - dev_err(dev, "failed to request outbox IRQ: %d\n", ret);
> + if (ret)
> return ret;
> - }
>
> if (!priv->info->supp_id) {
> dev_err(dev, "no supplementary outbox specified\n");
> diff --git a/drivers/mailbox/stm32-ipcc.c b/drivers/mailbox/stm32-ipcc.c
> index 4f63f1a14ca6..c6134de1a93b 100644
> --- a/drivers/mailbox/stm32-ipcc.c
> +++ b/drivers/mailbox/stm32-ipcc.c
> @@ -263,10 +263,8 @@ static int stm32_ipcc_probe(struct platform_device *pdev)
> ret = devm_request_threaded_irq(dev, ipcc->irqs[i], NULL,
> irq_thread[i], IRQF_ONESHOT,
> dev_name(dev), ipcc);
> - if (ret) {
> - dev_err(dev, "failed to request irq %lu (%d)\n", i, ret);
> + if (ret)
> goto err_clk;
> - }
> }
>
> /* mask and enable rx/tx irq */
> diff --git a/drivers/mailbox/sun6i-msgbox.c b/drivers/mailbox/sun6i-msgbox.c
> index 6ba6920f4645..1cbc4d478beb 100644
> --- a/drivers/mailbox/sun6i-msgbox.c
> +++ b/drivers/mailbox/sun6i-msgbox.c
> @@ -257,10 +257,8 @@ static int sun6i_msgbox_probe(struct platform_device *pdev)
>
> ret = devm_request_irq(dev, irq_of_parse_and_map(dev->of_node, 0),
> sun6i_msgbox_irq, 0, dev_name(dev), mbox);
> - if (ret) {
> - dev_err(dev, "Failed to register IRQ handler: %d\n", ret);
> + if (ret)
> goto err_disable_unprepare;
> - }
>
> mbox->controller.dev = dev;
> mbox->controller.ops = &sun6i_msgbox_chan_ops;
> diff --git a/drivers/mailbox/tegra-hsp.c b/drivers/mailbox/tegra-hsp.c
> index 500fa77c7d53..03ee73aad488 100644
> --- a/drivers/mailbox/tegra-hsp.c
> +++ b/drivers/mailbox/tegra-hsp.c
> @@ -708,11 +708,8 @@ static int tegra_hsp_request_shared_irq(struct tegra_hsp *hsp)
>
> err = devm_request_irq(hsp->dev, irq, tegra_hsp_shared_irq, 0,
> dev_name(hsp->dev), hsp);
> - if (err < 0) {
> - dev_err(hsp->dev, "failed to request interrupt: %d\n",
> - err);
> + if (err < 0)
> continue;
> - }
>
> hsp->shared_irq = i;
>
> @@ -856,12 +853,8 @@ static int tegra_hsp_probe(struct platform_device *pdev)
> err = devm_request_irq(&pdev->dev, hsp->doorbell_irq,
> tegra_hsp_doorbell_irq, IRQF_NO_SUSPEND,
> dev_name(&pdev->dev), hsp);
> - if (err < 0) {
> - dev_err(&pdev->dev,
> - "failed to request doorbell IRQ#%u: %d\n",
> - hsp->doorbell_irq, err);
> + if (err < 0)
> return err;
> - }
> }
>
> if (hsp->shared_irqs) {
> --
> 2.34.1
>
>
Reviewed-by: Mikko Perttunen <mperttunen@nvidia.com>
prev parent reply other threads:[~2026-07-21 7:28 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-16 2:52 [PATCH] mailbox: Remove redundant dev_err()/dev_err_probe() Pan Chuang
2026-07-16 3:02 ` sashiko-bot
2026-07-20 14:53 ` Chen-Yu Tsai
2026-07-21 7:28 ` Mikko Perttunen [this message]
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=tdOrdi__TZC4GQEnmWeUIw@nvidia.com \
--to=mperttunen@nvidia.com \
--cc=Tushar.Khandelwal@arm.com \
--cc=alexandre.torgue@foss.st.com \
--cc=baolin.wang@linux.alibaba.com \
--cc=bcm-kernel-feedback-list@broadcom.com \
--cc=conor.dooley@microchip.com \
--cc=cristian.marussi@arm.com \
--cc=daire.mcnamara@microchip.com \
--cc=florian.fainelli@broadcom.com \
--cc=jassisinghbrar@gmail.com \
--cc=jernej.skrabec@gmail.com \
--cc=jonathanh@nvidia.com \
--cc=kabel@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=linux-rpi-kernel@lists.infradead.org \
--cc=linux-stm32@st-md-mailman.stormreply.com \
--cc=linux-sunxi@lists.linux.dev \
--cc=linux-tegra@vger.kernel.org \
--cc=mani@kernel.org \
--cc=mcoquelin.stm32@gmail.com \
--cc=orsonzhai@gmail.com \
--cc=panchuang@vivo.com \
--cc=rjui@broadcom.com \
--cc=samuel@sholland.org \
--cc=sbranden@broadcom.com \
--cc=sibi.sankar@oss.qualcomm.com \
--cc=sudeep.holla@kernel.org \
--cc=thierry.reding@kernel.org \
--cc=viresh.kumar@linaro.org \
--cc=wens@kernel.org \
--cc=zhang.lyra@gmail.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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox