* [PATCH] spi: spi-qpic-snand: simplify bad block marker duplication
@ 2025-07-11 16:32 Gabor Juhos
2025-07-23 17:51 ` Mark Brown
0 siblings, 1 reply; 2+ messages in thread
From: Gabor Juhos @ 2025-07-11 16:32 UTC (permalink / raw)
To: Mark Brown
Cc: Varadarajan Narayanan, Md Sadre Alam, Sricharan Ramabadhran,
linux-spi, linux-mtd, linux-arm-msm, linux-kernel, Gabor Juhos
Due to the expectations of the SPINAND code, the driver duplicates
the bad block markers during raw OOB reads.
It has been implemented by using two if statements, and due to the
opposite conditions one of conditional codepaths always runs. Since
the effect of both codepaths is the same, remove the if statements
and use a single line solution instead.
Also add a note about why the duplication is required.
No functional changes intended.
Signed-off-by: Gabor Juhos <j4g8y7@gmail.com>
---
drivers/spi/spi-qpic-snand.c | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/drivers/spi/spi-qpic-snand.c b/drivers/spi/spi-qpic-snand.c
index b711c8be42c1f76029497b0c17d00cd8e52f5aa2..94c4d76cee34420d1dc3894aadad0086c6f22d96 100644
--- a/drivers/spi/spi-qpic-snand.c
+++ b/drivers/spi/spi-qpic-snand.c
@@ -597,10 +597,16 @@ static int qcom_spi_read_last_cw(struct qcom_nand_controller *snandc,
bbpos = mtd->writesize - ecc_cfg->cw_size * (num_cw - 1);
- if (snandc->data_buffer[bbpos] == 0xff)
- snandc->data_buffer[bbpos + 1] = 0xff;
- if (snandc->data_buffer[bbpos] != 0xff)
- snandc->data_buffer[bbpos + 1] = snandc->data_buffer[bbpos];
+ /*
+ * TODO: The SPINAND code expects two bad block marker bytes
+ * at the beginning of the OOB area, but the OOB layout used by
+ * the driver has only one. Duplicate that for now in order to
+ * avoid certain blocks to be marked as bad.
+ *
+ * This can be removed once single-byte bad block marker support
+ * gets implemented in the SPINAND code.
+ */
+ snandc->data_buffer[bbpos + 1] = snandc->data_buffer[bbpos];
memcpy(op->data.buf.in, snandc->data_buffer + bbpos, op->data.nbytes);
---
base-commit: 7d61715c58a39edc5f74fc7366487726fc223530
change-id: 20250710-qpic-snand-simplify-bbm-copy-82cc0e0022c7
Best regards,
--
Gabor Juhos <j4g8y7@gmail.com>
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] spi: spi-qpic-snand: simplify bad block marker duplication
2025-07-11 16:32 [PATCH] spi: spi-qpic-snand: simplify bad block marker duplication Gabor Juhos
@ 2025-07-23 17:51 ` Mark Brown
0 siblings, 0 replies; 2+ messages in thread
From: Mark Brown @ 2025-07-23 17:51 UTC (permalink / raw)
To: Gabor Juhos
Cc: Varadarajan Narayanan, Md Sadre Alam, Sricharan Ramabadhran,
linux-spi, linux-mtd, linux-arm-msm, linux-kernel
On Fri, 11 Jul 2025 18:32:52 +0200, Gabor Juhos wrote:
> Due to the expectations of the SPINAND code, the driver duplicates
> the bad block markers during raw OOB reads.
>
> It has been implemented by using two if statements, and due to the
> opposite conditions one of conditional codepaths always runs. Since
> the effect of both codepaths is the same, remove the if statements
> and use a single line solution instead.
>
> [...]
Applied to
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi.git for-next
Thanks!
[1/1] spi: spi-qpic-snand: simplify bad block marker duplication
commit: 1f590fa4b93dd7c7daaa4e09d8381ac2aab3853c
All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.
You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.
If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.
Please add any relevant lists and maintainers to the CCs when replying
to this mail.
Thanks,
Mark
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-07-23 17:51 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-07-11 16:32 [PATCH] spi: spi-qpic-snand: simplify bad block marker duplication Gabor Juhos
2025-07-23 17:51 ` Mark Brown
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®