diff options
author | Krzysztof Halasa <khc@pm.waw.pl> | 2007-12-17 21:53:27 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2008-02-04 08:15:25 -0500 |
commit | c18f65816ef80b67eb4511ed8359c2dfcd69680d (patch) | |
tree | 4802b4316796b8dbee051d2a36064e221249f8df /include/asm-arm/arch-ixp4xx/ixp4xx-regs.h | |
parent | a9a424ce9a209155f3d4b9f8ceba50cdebb7769b (diff) |
[ARM] 4712/2: Adds functions to read and write IXP4xx "feature" bits
Adds functions to read and write IXP4xx "feature" (aka "fuse")
bits, containing information about available/enabled CPU features.
The uncompress.h included by boot/compressed/misc.c resides in
a different space than rest of the kernel and thus can't use
asm/hardware.h (including asm/arch/cpu.h - which, in turn, may use
EXPORTed symbol "processor_id").
Posted to linux-arm-kernel on 2 Dec 2007 and revised.
Signed-off-by: Krzysztof Halasa <khc@pm.waw.pl>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'include/asm-arm/arch-ixp4xx/ixp4xx-regs.h')
-rw-r--r-- | include/asm-arm/arch-ixp4xx/ixp4xx-regs.h | 36 |
1 files changed, 32 insertions, 4 deletions
diff --git a/include/asm-arm/arch-ixp4xx/ixp4xx-regs.h b/include/asm-arm/arch-ixp4xx/ixp4xx-regs.h index 5d949d763a91..c704fe8cf42f 100644 --- a/include/asm-arm/arch-ixp4xx/ixp4xx-regs.h +++ b/include/asm-arm/arch-ixp4xx/ixp4xx-regs.h | |||
@@ -15,10 +15,6 @@ | |||
15 | * | 15 | * |
16 | */ | 16 | */ |
17 | 17 | ||
18 | #ifndef __ASM_ARCH_HARDWARE_H__ | ||
19 | #error "Do not include this directly, instead #include <asm/hardware.h>" | ||
20 | #endif | ||
21 | |||
22 | #ifndef _ASM_ARM_IXP4XX_H_ | 18 | #ifndef _ASM_ARM_IXP4XX_H_ |
23 | #define _ASM_ARM_IXP4XX_H_ | 19 | #define _ASM_ARM_IXP4XX_H_ |
24 | 20 | ||
@@ -607,4 +603,36 @@ | |||
607 | 603 | ||
608 | #define DCMD_LENGTH 0x01fff /* length mask (max = 8K - 1) */ | 604 | #define DCMD_LENGTH 0x01fff /* length mask (max = 8K - 1) */ |
609 | 605 | ||
606 | /* "fuse" bits of IXP_EXP_CFG2 */ | ||
607 | #define IXP4XX_FEATURE_RCOMP (1 << 0) | ||
608 | #define IXP4XX_FEATURE_USB_DEVICE (1 << 1) | ||
609 | #define IXP4XX_FEATURE_HASH (1 << 2) | ||
610 | #define IXP4XX_FEATURE_AES (1 << 3) | ||
611 | #define IXP4XX_FEATURE_DES (1 << 4) | ||
612 | #define IXP4XX_FEATURE_HDLC (1 << 5) | ||
613 | #define IXP4XX_FEATURE_AAL (1 << 6) | ||
614 | #define IXP4XX_FEATURE_HSS (1 << 7) | ||
615 | #define IXP4XX_FEATURE_UTOPIA (1 << 8) | ||
616 | #define IXP4XX_FEATURE_NPEB_ETH0 (1 << 9) | ||
617 | #define IXP4XX_FEATURE_NPEC_ETH (1 << 10) | ||
618 | #define IXP4XX_FEATURE_RESET_NPEA (1 << 11) | ||
619 | #define IXP4XX_FEATURE_RESET_NPEB (1 << 12) | ||
620 | #define IXP4XX_FEATURE_RESET_NPEC (1 << 13) | ||
621 | #define IXP4XX_FEATURE_PCI (1 << 14) | ||
622 | #define IXP4XX_FEATURE_ECC_TIMESYNC (1 << 15) | ||
623 | #define IXP4XX_FEATURE_UTOPIA_PHY_LIMIT (3 << 16) | ||
624 | #define IXP4XX_FEATURE_USB_HOST (1 << 18) | ||
625 | #define IXP4XX_FEATURE_NPEA_ETH (1 << 19) | ||
626 | #define IXP4XX_FEATURE_NPEB_ETH_1_TO_3 (1 << 20) | ||
627 | #define IXP4XX_FEATURE_RSA (1 << 21) | ||
628 | #define IXP4XX_FEATURE_XSCALE_MAX_FREQ (3 << 22) | ||
629 | #define IXP4XX_FEATURE_RESERVED (0xFF << 24) | ||
630 | |||
631 | #define IXP4XX_FEATURE_IXP46X_ONLY (IXP4XX_FEATURE_ECC_TIMESYNC | \ | ||
632 | IXP4XX_FEATURE_USB_HOST | \ | ||
633 | IXP4XX_FEATURE_NPEA_ETH | \ | ||
634 | IXP4XX_FEATURE_NPEB_ETH_1_TO_3 | \ | ||
635 | IXP4XX_FEATURE_RSA | \ | ||
636 | IXP4XX_FEATURE_XSCALE_MAX_FREQ) | ||
637 | |||
610 | #endif | 638 | #endif |