aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGabor Juhos <juhosg@openwrt.org>2011-05-31 22:53:39 +0000
committerGabor Juhos <juhosg@openwrt.org>2011-05-31 22:53:39 +0000
commitc34e0cbc4c8f6c723a361852fb8b6ad67303511a (patch)
tree28bfd6d090fc4745c4a952a98aaf0c51982bda8a
parente8a0aaf9a2765c073bed3a8ba52da25ae4007087 (diff)
downloadupstream-c34e0cbc4c8f6c723a361852fb8b6ad67303511a.tar.gz
upstream-c34e0cbc4c8f6c723a361852fb8b6ad67303511a.tar.bz2
upstream-c34e0cbc4c8f6c723a361852fb8b6ad67303511a.zip
ar71xx: add WMAC initialization code for the AR933X SoCs
SVN-Revision: 27064
-rw-r--r--target/linux/ar71xx/files/arch/mips/ar71xx/dev-ar9xxx-wmac.c14
-rw-r--r--target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/ar71xx.h2
2 files changed, 16 insertions, 0 deletions
diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/dev-ar9xxx-wmac.c b/target/linux/ar71xx/files/arch/mips/ar71xx/dev-ar9xxx-wmac.c
index ade61e46c7..f07d368362 100644
--- a/target/linux/ar71xx/files/arch/mips/ar71xx/dev-ar9xxx-wmac.c
+++ b/target/linux/ar71xx/files/arch/mips/ar71xx/dev-ar9xxx-wmac.c
@@ -63,6 +63,15 @@ static void ar913x_wmac_init(void)
ar9xxx_wmac_resources[0].end = AR91XX_WMAC_BASE + AR91XX_WMAC_SIZE - 1;
}
+static void ar933x_wmac_init(void)
+{
+ ar9xxx_wmac_device.name = "ar933x_wmac";
+ ar9xxx_wmac_resources[0].start = AR933X_WMAC_BASE;
+ ar9xxx_wmac_resources[0].end = AR933X_WMAC_BASE + AR933X_WMAC_SIZE - 1;
+ if (ar71xx_ref_freq == MHZ_25)
+ ar9xxx_wmac_data.is_clk_25mhz = true;
+}
+
static void ar934x_wmac_init(void)
{
ar9xxx_wmac_device.name = "ar934x_wmac";
@@ -80,6 +89,11 @@ void __init ar9xxx_add_device_wmac(u8 *cal_data, u8 *mac_addr)
ar913x_wmac_init();
break;
+ case AR71XX_SOC_AR9330:
+ case AR71XX_SOC_AR9331:
+ ar933x_wmac_init();
+ break;
+
case AR71XX_SOC_AR9341:
case AR71XX_SOC_AR9342:
case AR71XX_SOC_AR9344:
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 8a86a307da..7c99dba665 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
@@ -72,6 +72,8 @@
#define AR933X_UART_BASE (AR71XX_APB_BASE + 0x00020000)
#define AR933X_UART_SIZE 0x14
+#define AR933X_WMAC_BASE (AR71XX_APB_BASE + 0x00100000)
+#define AR933X_WMAC_SIZE 0x20000
#define AR934X_WMAC_BASE (AR71XX_APB_BASE + 0x00100000)
#define AR934X_WMAC_SIZE 0x20000