mirror of
https://github.com/Telecominfraproject/wlan-ap.git
synced 2025-12-17 09:21:35 +00:00
47 lines
1.8 KiB
Diff
47 lines
1.8 KiB
Diff
From 14f4680cf438e666d882bd4ddad91ae9ebb15d5c Mon Sep 17 00:00:00 2001
|
|
From: Sridharan S N <quic_sridsn@quicinc.com>
|
|
Date: Thu, 11 May 2023 14:14:22 +0530
|
|
Subject: [PATCH 276/281] mtd: rawnand: qcom: Fix offset issue for SPI_CFG
|
|
register and avoid write to unavailable register
|
|
|
|
The NAND_FLASH_SPI_CFG register cannot be accessed from the A53/73 while BAM mode is enabled. This register set
|
|
is configured as secure only access, hence only secure BAM access can be used. Similarly certain SPI register
|
|
groups can be accessed only using BAM, fix it.
|
|
|
|
SFLASHC_BURST_CFG register has been removed when the NAND controller got implemented in the QPIC controller.
|
|
Avoid writing this register on devices which are based on QPIC NAND controller.
|
|
|
|
Change-Id: I4b0ff0147a1b65a7ba0665c262dcec810a441a4b
|
|
Signed-off-by: Sridharan S N <quic_sridsn@quicinc.com>
|
|
---
|
|
drivers/mtd/nand/raw/qcom_nandc.c | 6 +++++-
|
|
1 file changed, 5 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/drivers/mtd/nand/raw/qcom_nandc.c b/drivers/mtd/nand/raw/qcom_nandc.c
|
|
index 2c3e2b18b2f4..d4932806f35e 100644
|
|
--- a/drivers/mtd/nand/raw/qcom_nandc.c
|
|
+++ b/drivers/mtd/nand/raw/qcom_nandc.c
|
|
@@ -1281,6 +1281,10 @@ static int write_reg_dma(struct qcom_nand_controller *nandc, int first,
|
|
if (first == NAND_EXEC_CMD)
|
|
flags |= NAND_BAM_NWD;
|
|
|
|
+ if (first == NAND_FLASH_SPI_CFG || first == NAND_SPI_NUM_ADDR_CYCLES
|
|
+ || first == NAND_SPI_BUSY_CHECK_WAIT_CNT)
|
|
+ first = dev_cmd_reg_addr(nandc, first);
|
|
+
|
|
if (first == NAND_DEV_CMD1_RESTORE || first == NAND_DEV_CMD1)
|
|
first = dev_cmd_reg_addr(nandc, NAND_DEV_CMD1);
|
|
|
|
@@ -3256,7 +3260,7 @@ static int qcom_nandc_setup(struct qcom_nand_controller *nandc)
|
|
u32 nand_ctrl;
|
|
|
|
/* kill onenand */
|
|
- if (!nandc->props->is_qpic)
|
|
+ if (!nandc->props->is_qpic && !nandc->props->qpic_v2)
|
|
nandc_write(nandc, SFLASHC_BURST_CFG, 0);
|
|
|
|
if (!nandc->props->qpic_v2)
|
|
--
|
|
2.17.1
|
|
|