summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2026-07-10 10:04:04 -0600
committerTom Rini <[email protected]>2026-07-10 10:04:04 -0600
commit9652e00aaa78c3435be33e534a8fae533ca1dc20 (patch)
tree82aed6b7c0351f8a132ab96d38cbf62ced8dcd95 /drivers
parent5a7117b0a2e3f41475945a4443a4e3adf8799024 (diff)
parentb5deaa71fbe543d11644b6235d466b252587641f (diff)
Merge tag 'u-boot-rockchip-2026.10-20260710' of https://git.u-boot-project.org/u-boot/custodians/u-boot-rockchip
CI: https://git.u-boot-project.org/u-boot/custodians/u-boot-rockchip/-/pipelines/597 - Add new rockchip custodian, - Remove inactive rockchip custodian, - Preemptively fix rk3528/rk356x DTS issue that will come with 7.1 upstream DTS sync, - Fix typo in doc, - Fix variable used before being set in rockchip_nfc, - Fix asm-operand-widths clang warning for RK3528, RK3576 and RK3588, - Work around HW undefined state for NVMEs on RK3588 Jaguar, - Added support for new devices: - LinkEase EasePi R1 - 9Tripod X3568 v4
Diffstat (limited to 'drivers')
-rw-r--r--drivers/mtd/nand/raw/rockchip_nfc.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/drivers/mtd/nand/raw/rockchip_nfc.c b/drivers/mtd/nand/raw/rockchip_nfc.c
index f730e15d041..ea8e67d1a23 100644
--- a/drivers/mtd/nand/raw/rockchip_nfc.c
+++ b/drivers/mtd/nand/raw/rockchip_nfc.c
@@ -861,6 +861,15 @@ static int rk_nfc_ecc_init(struct rk_nfc *nfc, struct nand_chip *chip)
ecc->steps = mtd->writesize / ecc->size;
ecc->bytes = DIV_ROUND_UP(ecc->strength * fls(8 * chip->ecc.size), 8);
+ rknand->metadata_size = NFC_SYS_DATA_SIZE * ecc->steps;
+
+ if (rknand->metadata_size < NFC_SYS_DATA_SIZE + 2) {
+ dev_err(nfc->dev,
+ "driver needs at least %d bytes of meta data\n",
+ NFC_SYS_DATA_SIZE + 2);
+ return -EIO;
+ }
+
if (ecc->bytes * ecc->steps > mtd->oobsize - rknand->metadata_size)
return -EINVAL;
@@ -974,15 +983,6 @@ static int rk_nfc_nand_chip_init(ofnode node, struct rk_nfc *nfc, int devnum)
ret = ofnode_read_u32(node, "rockchip,boot-ecc-strength", &tmp);
rknand->boot_ecc = ret ? ecc->strength : tmp;
- rknand->metadata_size = NFC_SYS_DATA_SIZE * ecc->steps;
-
- if (rknand->metadata_size < NFC_SYS_DATA_SIZE + 2) {
- dev_err(dev,
- "driver needs at least %d bytes of meta data\n",
- NFC_SYS_DATA_SIZE + 2);
- return -EIO;
- }
-
if (!nfc->page_buf) {
nfc->page_buf = kzalloc(NFC_MAX_PAGE_SIZE, GFP_KERNEL);
if (!nfc->page_buf) {