From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753671AbbEAKun (ORCPT ); Fri, 1 May 2015 06:50:43 -0400 Received: from arrakis.dune.hu ([78.24.191.176]:37648 "EHLO arrakis.dune.hu" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751956AbbEAKuj (ORCPT ); Fri, 1 May 2015 06:50:39 -0400 MIME-Version: 1.0 In-Reply-To: References: <35add8df33b17e2354d9496eba8597d9d8488f30.1430430153.git.hramrach@gmail.com> <201505010113.50293.marex@denx.de> From: Jonas Gorski Date: Fri, 1 May 2015 12:50:04 +0200 Message-ID: Subject: Re: [PATCH 3/3] MTD: spi-nor: add flag to not use sector erase. To: Michal Suchanek Cc: Marek Vasut , Geert Uytterhoeven , David Woodhouse , "Rafa?? Mi??ecki" , Linux Kernel Mailing List , MTD Maling List , "grmoore@altera.com" , Brian Norris , Ben Hutchings , Alison Chaiken , "Bean Huo (beanhuo)" Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, On Fri, May 1, 2015 at 9:05 AM, Michal Suchanek wrote: > On 1 May 2015 at 01:13, Marek Vasut wrote: >> On Thursday, April 30, 2015 at 11:13:12 PM, Michal Suchanek wrote: >>> The sector size of the flash memory is unclear from datasheet or may >>> possibly vary between chips so add a flag to always use 4k blocks. >>> >>> Currently 4k blocks are always used when possible but in the future >>> somebody might want to do some optimizations with sector erase. >>> >>> Signed-off-by: Michal Suchanek >> >> I _think_ you might be able to determine the size, no ? >> >> One way is to ask the vendor, but you can also try something like: >> 1) erase the whole SPI NOR >> 2) overwrite it with zeroes (or ones ? I think it should be all ones after >> erasing). >> 3) Erase sector 0 >> 4) Read some 128 KiB back >> 5) Observe what is the difference. >> > > I can determine it for this particular chip. However, when the vendor > datasheet says the block is 64/32K it might mean that chips with this > ID can have either block size. > > It's a value that we don't use anyway so I just mark it as unknown > here for future reference. It will be used if MTD_SPI_NOR_USE_4K_SECTORS is unset, so you should add some code to properly handle that case. Also I'd suggest switching the order of 2 and 3, so you add the flag handling first and then add support for a flash chip with this issue. Regards Jonas