This is an automatically generated commit. When doing `git bisect`, consider `git bisect --skip`. Signed-off-by: Kenneth Kasilag <kenneth@kasilag.me> Link: https://github.com/openwrt/openwrt/pull/21019 Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
33 lines
1.2 KiB
Diff
33 lines
1.2 KiB
Diff
From 0743acf746a81e0460a56fd5ff847d97fa7eb370 Mon Sep 17 00:00:00 2001
|
|
From: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
|
|
Date: Sun, 12 Oct 2025 15:17:04 +0300
|
|
Subject: [PATCH 13/14] spi: airoha: buffer must be 0xff-ed before writing
|
|
|
|
During writing, the entire flash page (including OOB) will be updated
|
|
with the values from the temporary buffer, so we need to fill the
|
|
untouched areas of the buffer with 0xff value to prevent accidental
|
|
data overwriting.
|
|
|
|
Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
|
|
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
|
|
Link: https://patch.msgid.link/20251012121707.2296160-14-mikhail.kshevetskiy@iopsys.eu
|
|
Signed-off-by: Mark Brown <broonie@kernel.org>
|
|
---
|
|
drivers/spi/spi-airoha-snfi.c | 4 ++++
|
|
1 file changed, 4 insertions(+)
|
|
|
|
--- a/drivers/spi/spi-airoha-snfi.c
|
|
+++ b/drivers/spi/spi-airoha-snfi.c
|
|
@@ -776,7 +776,11 @@ static ssize_t airoha_snand_dirmap_write
|
|
return -EOPNOTSUPP;
|
|
}
|
|
|
|
+ if (offs > 0)
|
|
+ memset(txrx_buf, 0xff, offs);
|
|
memcpy(txrx_buf + offs, buf, len);
|
|
+ if (bytes > offs + len)
|
|
+ memset(txrx_buf + offs + len, 0xff, bytes - offs - len);
|
|
|
|
err = airoha_snand_set_mode(as_ctrl, SPI_MODE_DMA);
|
|
if (err < 0)
|