From: Jisheng Zhang <jszhang@kernel.org>
To: Paul Cercueil <paul.cercueil@bootlin.com>
Cc: Mark Brown <broonie@kernel.org>,
linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org,
Thomas Petazzoni <thomas.petazzoni@bootlin.com>,
Bharat Bhushan <bbhushan2@marvell.com>,
Sunil Kovvuri Goutham <sgoutham@marvell.com>,
Tanmay Jagdale <tanmay@marvell.com>
Subject: Re: [PATCH 5/5] spi: cadence-xspi: Add workaround for old Marvell firmwares
Date: Sat, 7 Nov 2026 21:21:13 +0800 [thread overview]
Message-ID: <au8lyXiMUSvcdPWx@xhacker> (raw)
In-Reply-To: <20261104100643.162694-6-paul.cercueil@bootlin.com>
On Wed, Nov 04, 2026 at 11:06:43AM +0100, Paul Cercueil wrote:
> From: Tanmay Jagdale <tanmay@marvell.com>
>
> Older firmwares from Marvell used the cdns,xspi-nor compatible string
> for the Marvell-specific xSPI IP, which is incompatible.
>
> Add a workaround to support this by assuming that if the "xfer" resource
> is found, it means that a Marvell IP is used.
> S>
> Signed-off-by: Tanmay Jagdale <tanmay@marvell.com>
> Co-developed-by: Paul Cercueil <paul.cercueil@bootlin.com>
> Signed-off-by: Paul Cercueil <paul.cercueil@bootlin.com>
> ---
> drivers/spi/spi-cadence-xspi.c | 18 ++++++++++++++----
> 1 file changed, 14 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/spi/spi-cadence-xspi.c b/drivers/spi/spi-cadence-xspi.c
> index 48a109f3fcdb..d326589a6ca3 100644
> --- a/drivers/spi/spi-cadence-xspi.c
> +++ b/drivers/spi/spi-cadence-xspi.c
> @@ -1301,11 +1301,21 @@ static int cdns_xspi_probe(struct platform_device *pdev)
> }
>
> #ifdef CONFIG_64BIT
> - if (cdns_xspi->driver_data->mrvl_hw_overlay) {
> - res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "xfer");
> - if (!res)
> - res = platform_get_resource(pdev, IORESOURCE_MEM, 3);
> + res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "xfer");
> + if (!res)
> + res = platform_get_resource(pdev, IORESOURCE_MEM, 3);
This moves the mrvl specific code to all users, so I believe this
needs dt-binding update.
From another side, this assumes other users doesn't have 4th resource
but what about if they have? they will get "Marvell-specific xfer
resource passed, but ..." warning below, this confuse the users.
I don't think this workaround can be added to all users.
Lastly, does the "firmware" mean dtb? But per my grep, I didn't
find any mrvl dts(i) uses "cdns,xspi-nor" compatible string, so
this means the dtb is outside upstream, then can the firmware
be fixed instead?
> +
> + if (res && !cdns_xspi->driver_data->mrvl_hw_overlay) {
> + /*
> + * Handle old Marvell firmwares using the cdns,xspi-nor string
> + * instead of the marvell,cn10-xspi-nor string.
> + */
> + dev_warn(dev, "Marvell-specific xfer resource passed, but using the cdns,xspi-nor compatible string. Please fix firmware!\n");
>
> + cdns_xspi->driver_data = &marvell_driver_data;
> + }
> +
> + if (cdns_xspi->driver_data->mrvl_hw_overlay) {
> cdns_xspi->xferbase = devm_ioremap_resource(dev, res);
> if (IS_ERR(cdns_xspi->xferbase)) {
> dev_info(dev, "XFER register base not found, set it\n");
> --
> 2.47.3
>
next prev parent reply other threads:[~2026-11-07 13:41 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-04 10:06 [PATCH 0/5] spi: cadence-xspi: Fixes and misc. changes Paul Cercueil
2026-11-04 10:06 ` [PATCH 1/5] spi: cadence-xspi: Reconfigure to STIG mode before SPI message Paul Cercueil
2026-11-07 12:08 ` Mark Brown
2026-11-09 15:08 ` Paul Cercueil
2026-11-04 10:06 ` [PATCH 2/5] spi: cadence-xspi: Inform SPI core about size transferred Paul Cercueil
2026-11-04 10:06 ` [PATCH 3/5] spi: cadence-xspi: Drop useless cdns_xspi->cur_cs Paul Cercueil
2026-11-04 10:06 ` [PATCH 4/5] spi: cadence-xspi: Rework resource discovery Paul Cercueil
2026-11-07 12:08 ` Mark Brown
2026-11-04 10:06 ` [PATCH 5/5] spi: cadence-xspi: Add workaround for old Marvell firmwares Paul Cercueil
2026-11-07 12:08 ` Mark Brown
2026-11-07 13:21 ` Jisheng Zhang [this message]
2026-11-09 16:34 ` Paul Cercueil
2026-11-10 5:07 ` Jisheng Zhang
2026-11-10 9:58 ` Paul Cercueil
2026-11-10 12:54 ` Jisheng Zhang
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=au8lyXiMUSvcdPWx@xhacker \
--to=jszhang@kernel.org \
--cc=bbhushan2@marvell.com \
--cc=broonie@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-spi@vger.kernel.org \
--cc=paul.cercueil@bootlin.com \
--cc=sgoutham@marvell.com \
--cc=tanmay@marvell.com \
--cc=thomas.petazzoni@bootlin.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 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.