1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-11-27 17:55:55 +02:00

ar71xx: add AR933x specific USB setup function

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@28276 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
juhosg 2011-09-21 11:47:51 +00:00
parent 3a5386be36
commit 8f241d9a09
2 changed files with 25 additions and 2 deletions

View File

@ -165,6 +165,23 @@ static void __init ar91xx_usb_setup(void)
platform_device_register(&ar71xx_ehci_device);
}
static void __init ar933x_usb_setup(void)
{
ar71xx_device_reset_rmw(0, AR933X_RESET_USBSUS_OVERRIDE);
mdelay(10);
ar71xx_device_reset_rmw(AR933X_RESET_USB_HOST,
AR933X_RESET_USBSUS_OVERRIDE);
mdelay(10);
ar71xx_device_reset_rmw(AR933X_RESET_USB_PHY,
AR933X_RESET_USBSUS_OVERRIDE);
mdelay(10);
ar71xx_ehci_data.is_ar91xx = 1;
platform_device_register(&ar71xx_ehci_device);
}
void __init ar71xx_add_device_usb(void)
{
switch (ar71xx_soc) {
@ -185,14 +202,17 @@ void __init ar71xx_add_device_usb(void)
case AR71XX_SOC_AR9130:
case AR71XX_SOC_AR9132:
case AR71XX_SOC_AR9330:
case AR71XX_SOC_AR9331:
case AR71XX_SOC_AR9341:
case AR71XX_SOC_AR9342:
case AR71XX_SOC_AR9344:
ar91xx_usb_setup();
break;
case AR71XX_SOC_AR9330:
case AR71XX_SOC_AR9331:
ar933x_usb_setup();
break;
default:
BUG();
}

View File

@ -678,6 +678,9 @@ void ar71xx_ddr_flush(u32 reg);
#define AR933X_RESET_GE0_MDIO BIT(22)
#define AR933X_RESET_GE1_MAC BIT(13)
#define AR933X_RESET_GE0_MAC BIT(9)
#define AR933X_RESET_USB_HOST BIT(5)
#define AR933X_RESET_USB_PHY BIT(4)
#define AR933X_RESET_USBSUS_OVERRIDE BIT(3)
#define REV_ID_MAJOR_MASK 0xfff0
#define REV_ID_MAJOR_AR71XX 0x00a0