From mboxrd@z Thu Jan 1 00:00:00 1970 From: Abhishek Sahu Subject: Re: [PATCH v2 06/14] mtd: rawnand: qcom: erased page detection for uncorrectable errors only Date: Tue, 22 May 2018 19:40:21 +0530 Message-ID: <6368d5f14b40626bd590f6eda8cf1bcd@codeaurora.org> References: <1525350041-22995-1-git-send-email-absahu@codeaurora.org> <1525350041-22995-7-git-send-email-absahu@codeaurora.org> <20180522090459.71d35004@xps13> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Return-path: In-Reply-To: <20180522090459.71d35004@xps13> Sender: linux-kernel-owner@vger.kernel.org To: Miquel Raynal Cc: Boris Brezillon , David Woodhouse , Brian Norris , Marek Vasut , Richard Weinberger , linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mtd@lists.infradead.org, Andy Gross , Archit Taneja List-Id: linux-arm-msm@vger.kernel.org On 2018-05-22 12:34, Miquel Raynal wrote: > Hi Abhishek, > > On Thu, 3 May 2018 17:50:33 +0530, Abhishek Sahu > wrote: > >> Following is the flow in the HW if controller tries to read erased >> page > > Nit: ^ missing ':' > Sure. I will fix this. >> >> 1. First ECC uncorrectable error will be generated from ECC engine >> since ECC engine first calculates the ECC with all 0xff and match >> the calculated ECC with ECC code in OOB (which is again all 0xff). >> 2. After getting ECC error, erased CW detection logic will be >> applied which is different for BCH and RS ECC >> a. For BCH, HW checks if all the bytes in page are 0xff and then >> it updates the status in separate register >> NAND_ERASED_CW_DETECT_STATUS. >> b. For RS ECC, the HW reports the same error when reading an >> erased CW, but it notifies that it is an erased CW by >> placing special characters at certain offsets in the >> buffer. >> >> So the erased CW detect status should be checked only if ECC engine >> generated the uncorrectable error. >> >> Currently for all other operational errors also (like TIMEOUT, MPU >> errors, etc.), the erased CW detect logic is being applied so fix this >> and return EIO for other operational errors. >> >> Signed-off-by: Abhishek Sahu >> --- >> * Changes from v1: >> >> 1. Added more detail in commit message >> 2. Added comment before each if/else > > Thanks for that, it's much more ease to review :) Thanks Miquel for your review. Regards, Abhishek > >> 3. Removed redundant check for BS_UNCORRECTABLE_BIT >> >> drivers/mtd/nand/raw/qcom_nandc.c | 65 >> ++++++++++++++++++++++++++------------- >> 1 file changed, 43 insertions(+), 22 deletions(-) >> > > Acked-by: Miquel Raynal > > Thanks, > Miquèl