Эх сурвалжийг харах

Blackfin arch: Move all the silicon rev handling to one place

Move all the silicon rev handling to one place (Kconfig) and
make sure we warn if you are running on silicon that has not been tested on

Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Mike Frysinger 16 жил өмнө
parent
commit
0c0497c257

+ 13 - 0
arch/blackfin/Kconfig

@@ -166,6 +166,19 @@ config BF561
 
 
 endchoice
 endchoice
 
 
+config BF_REV_MIN
+	int
+	default 0 if (BF52x || BF54x)
+	default 2 if (BF537 || BF536 || BF534)
+	default 3 if (BF561 ||BF533 || BF532 || BF531)
+
+config BF_REV_MAX
+	int
+	default 2 if (BF52x || BF54x)
+	default 3 if (BF537 || BF536 || BF534)
+	default 5 if (BF561)
+	default 6 if (BF533 || BF532 || BF531)
+
 choice
 choice
 	prompt "Silicon Rev"
 	prompt "Silicon Rev"
 	default BF_REV_0_1 if (BF52x || BF54x)
 	default BF_REV_0_1 if (BF52x || BF54x)

+ 2 - 1
arch/blackfin/kernel/setup.c

@@ -821,9 +821,10 @@ void __init setup_arch(char **cmdline_p)
 			printk(KERN_ERR "Warning: Compiled for Rev %d, but running on Rev %d\n",
 			printk(KERN_ERR "Warning: Compiled for Rev %d, but running on Rev %d\n",
 			       bfin_compiled_revid(), bfin_revid());
 			       bfin_compiled_revid(), bfin_revid());
 	}
 	}
-	if (bfin_revid() < SUPPORTED_REVID)
+	if (bfin_revid() <= CONFIG_BF_REV_MIN || bfin_revid() > CONFIG_BF_REV_MAX)
 		printk(KERN_ERR "Warning: Unsupported Chip Revision ADSP-%s Rev 0.%d detected\n",
 		printk(KERN_ERR "Warning: Unsupported Chip Revision ADSP-%s Rev 0.%d detected\n",
 		       CPU, bfin_revid());
 		       CPU, bfin_revid());
+
 	printk(KERN_INFO "Blackfin Linux support by http://blackfin.uclinux.org/\n");
 	printk(KERN_INFO "Blackfin Linux support by http://blackfin.uclinux.org/\n");
 
 
 	printk(KERN_INFO "Processor Speed: %lu MHz core clock and %lu MHz System Clock\n",
 	printk(KERN_INFO "Processor Speed: %lu MHz core clock and %lu MHz System Clock\n",

+ 0 - 2
arch/blackfin/mach-bf527/include/mach/bf527.h

@@ -30,8 +30,6 @@
 #ifndef __MACH_BF527_H__
 #ifndef __MACH_BF527_H__
 #define __MACH_BF527_H__
 #define __MACH_BF527_H__
 
 
-#define SUPPORTED_REVID 2
-
 #define OFFSET_(x) ((x) & 0x0000FFFF)
 #define OFFSET_(x) ((x) & 0x0000FFFF)
 
 
 /*some misc defines*/
 /*some misc defines*/

+ 0 - 2
arch/blackfin/mach-bf533/include/mach/bf533.h

@@ -30,8 +30,6 @@
 #ifndef __MACH_BF533_H__
 #ifndef __MACH_BF533_H__
 #define __MACH_BF533_H__
 #define __MACH_BF533_H__
 
 
-#define SUPPORTED_REVID 2
-
 #define OFFSET_(x) ((x) & 0x0000FFFF)
 #define OFFSET_(x) ((x) & 0x0000FFFF)
 
 
 /*some misc defines*/
 /*some misc defines*/

+ 0 - 2
arch/blackfin/mach-bf537/include/mach/bf537.h

@@ -30,8 +30,6 @@
 #ifndef __MACH_BF537_H__
 #ifndef __MACH_BF537_H__
 #define __MACH_BF537_H__
 #define __MACH_BF537_H__
 
 
-#define SUPPORTED_REVID 2
-
 /* Masks for generic ERROR IRQ demultiplexing used in int-priority-sc.c */
 /* Masks for generic ERROR IRQ demultiplexing used in int-priority-sc.c */
 
 
 #define SPI_ERR_MASK (TXCOL | RBSY | MODF | TXE)	/* SPI_STAT */
 #define SPI_ERR_MASK (TXCOL | RBSY | MODF | TXE)	/* SPI_STAT */

+ 0 - 2
arch/blackfin/mach-bf548/include/mach/bf548.h

@@ -30,8 +30,6 @@
 #ifndef __MACH_BF548_H__
 #ifndef __MACH_BF548_H__
 #define __MACH_BF548_H__
 #define __MACH_BF548_H__
 
 
-#define SUPPORTED_REVID 0
-
 #define OFFSET_(x) ((x) & 0x0000FFFF)
 #define OFFSET_(x) ((x) & 0x0000FFFF)
 
 
 /*some misc defines*/
 /*some misc defines*/

+ 0 - 2
arch/blackfin/mach-bf561/include/mach/bf561.h

@@ -30,8 +30,6 @@
 #ifndef __MACH_BF561_H__
 #ifndef __MACH_BF561_H__
 #define __MACH_BF561_H__
 #define __MACH_BF561_H__
 
 
-#define SUPPORTED_REVID		0x3
-
 #define OFFSET_(x) ((x) & 0x0000FFFF)
 #define OFFSET_(x) ((x) & 0x0000FFFF)
 
 
 /*some misc defines*/
 /*some misc defines*/