mtd: cfi: enforce valid geometry configuration

Linux-MTD Mailing List linux-mtd at lists.infradead.org
Tue Jan 12 15:59:10 PST 2016


Gitweb:     http://git.infradead.org/?p=mtd-2.6.git;a=commit;h=f5f92b36fbbb8ac7d70ff5fa39ec2637cce3094c
Commit:     f5f92b36fbbb8ac7d70ff5fa39ec2637cce3094c
Parent:     2c81de771f38e54324ede3f24118f4852570b384
Author:     Arnd Bergmann <arnd at arndb.de>
AuthorDate: Mon Nov 23 14:39:33 2015 +0100
Committer:  Brian Norris <computersforpeace at gmail.com>
CommitDate: Mon Nov 30 12:36:43 2015 -0800

    mtd: cfi: enforce valid geometry configuration
    
    MTD allows compile-time configuration of the possible CFI geometry
    settings that are allowed by the kernel, but that includes a couple of
    invalid configurations, where no bank width or no interleave setting
    is allowed. These are then caught with a compile-time warning:
    
    include/linux/mtd/cfi.h:76:2: warning: #warning No CONFIG_MTD_CFI_Ix selected. No NOR chip support can work.
    include/linux/mtd/map.h:145:2: warning: #warning "No CONFIG_MTD_MAP_BANK_WIDTH_xx selected. No NOR chip support can work"
    
    This is a bit annoying for randconfig tests, and can be avoided if
    we change the Kconfig logic to always select the simplest configuration
    when no other one is enabled.
    
    Signed-off-by: Arnd Bergmann <arnd at arndb.de>
    Signed-off-by: Brian Norris <computersforpeace at gmail.com>
---
 drivers/mtd/chips/Kconfig | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/mtd/chips/Kconfig b/drivers/mtd/chips/Kconfig
index 54479c4..3b3dabc 100644
--- a/drivers/mtd/chips/Kconfig
+++ b/drivers/mtd/chips/Kconfig
@@ -67,6 +67,10 @@ endchoice
 config MTD_CFI_GEOMETRY
 	bool "Specific CFI Flash geometry selection"
 	depends on MTD_CFI_ADV_OPTIONS
+	select MTD_MAP_BANK_WIDTH_1 if  !(MTD_MAP_BANK_WIDTH_2 || \
+		 MTD_MAP_BANK_WIDTH_4  || MTD_MAP_BANK_WIDTH_8 || \
+		 MTD_MAP_BANK_WIDTH_16 || MTD_MAP_BANK_WIDTH_32)
+	select MTD_CFI_I1 if !(MTD_CFI_I2 || MTD_CFI_I4 || MTD_CFI_I8)
 	help
 	  This option does not affect the code directly, but will enable
 	  some other configuration options which would allow you to reduce



More information about the linux-mtd-cvs mailing list