diff options
author | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2011-05-31 22:53:26 +0000 |
---|---|---|
committer | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2011-05-31 22:53:26 +0000 |
commit | a5e8c5446f44f938399efd4d674e35cb52d82191 (patch) | |
tree | a3e9ee03776f0ce4ce5bf9c796ec2ab340e12bfc /target/linux/ar71xx/files/arch/mips | |
parent | 68169c24f2bd2c1e045f43e25b637338dcd41c49 (diff) |
ar71xx: add preliminary support for the Atheros AR933x SoCs
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@27054 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/ar71xx/files/arch/mips')
3 files changed, 20 insertions, 4 deletions
diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/Kconfig b/target/linux/ar71xx/files/arch/mips/ar71xx/Kconfig index abc8346ff9..d2ee303e30 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/Kconfig +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/Kconfig @@ -393,4 +393,8 @@ config AR71XX_NVRAM config AR71XX_PCI_ATH9K_FIXUP def_bool n +config SOC_AR933X + bool + select USB_ARCH_HAS_EHCI + endif diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/setup.c b/target/linux/ar71xx/files/arch/mips/ar71xx/setup.c index 7fd730c154..d70347041a 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/setup.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/setup.c @@ -143,10 +143,16 @@ static void __init ar71xx_detect_sys_type(void) } break; - case REV_ID_MAJOR_AR9341: - ar71xx_soc = AR71XX_SOC_AR9341; - chip = "9341"; - rev = id & AR934X_REV_ID_REVISION_MASK; + case REV_ID_MAJOR_AR9330: + ar71xx_soc = AR71XX_SOC_AR9330; + chip = "9330"; + rev = id & AR933X_REV_ID_REVISION_MASK; + break; + + case REV_ID_MAJOR_AR9331: + ar71xx_soc = AR71XX_SOC_AR9331; + chip = "9331"; + rev = id & AR933X_REV_ID_REVISION_MASK; break; case REV_ID_MAJOR_AR9342: diff --git a/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/ar71xx.h b/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/ar71xx.h index 48c4a739d6..9dc15fea3d 100644 --- a/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/ar71xx.h +++ b/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/ar71xx.h @@ -127,6 +127,8 @@ enum ar71xx_soc_type { AR71XX_SOC_AR7242, AR71XX_SOC_AR9130, AR71XX_SOC_AR9132, + AR71XX_SOC_AR9330, + AR71XX_SOC_AR9331, AR71XX_SOC_AR9341, AR71XX_SOC_AR9342, AR71XX_SOC_AR9344, @@ -641,6 +643,8 @@ void ar71xx_ddr_flush(u32 reg); #define REV_ID_MAJOR_AR7240 0x00c0 #define REV_ID_MAJOR_AR7241 0x0100 #define REV_ID_MAJOR_AR7242 0x1100 +#define REV_ID_MAJOR_AR9330 0x0110 +#define REV_ID_MAJOR_AR9331 0x1110 #define REV_ID_MAJOR_AR9341 0x0120 #define REV_ID_MAJOR_AR9342 0x1120 #define REV_ID_MAJOR_AR9344 0x2120 @@ -660,6 +664,8 @@ void ar71xx_ddr_flush(u32 reg); #define AR724X_REV_ID_REVISION_MASK 0x3 +#define AR933X_REV_ID_REVISION_MASK 0xf + #define AR934X_REV_ID_REVISION_MASK 0xf extern void __iomem *ar71xx_reset_base; |