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>
This commit is contained in:
Mike Frysinger 2008-10-09 17:32:28 +08:00 committed by Bryan Wu
parent 664d0403f9
commit 0c0497c257
7 changed files with 15 additions and 11 deletions

View File

@ -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)

View File

@ -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",

View File

@ -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*/

View File

@ -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*/

View File

@ -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 */

View File

@ -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*/

View File

@ -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*/