Changeset 32606


Ignore:
Timestamp:
2012-07-05T10:26:47+02:00 (6 years ago)
Author:
juhosg
Message:

ar71xx: add initial support for the QCA955X SoCs

Location:
trunk/target/linux/ar71xx
Files:
11 added
12 edited

Legend:

Unmodified
Added
Removed
  • trunk/target/linux/ar71xx/files/arch/mips/ath79/dev-eth.c

    r32092 r32606  
    155155        if (ath79_soc == ATH79_SOC_AR9341 || 
    156156            ath79_soc == ATH79_SOC_AR9342 || 
    157             ath79_soc == ATH79_SOC_AR9344) 
     157            ath79_soc == ATH79_SOC_AR9344 || 
     158            ath79_soc == ATH79_SOC_QCA9558) 
    158159                max_id = 1; 
    159160        else 
     
    176177        case ATH79_SOC_AR9342: 
    177178        case ATH79_SOC_AR9344: 
     179        case ATH79_SOC_QCA9558: 
    178180                if (id == 0) { 
    179181                        mdio_dev = &ath79_mdio0_device; 
     
    216218        case ATH79_SOC_AR9342: 
    217219        case ATH79_SOC_AR9344: 
     220        case ATH79_SOC_QCA9558: 
    218221                if (id == 1) 
    219222                        mdio_data->builtin_switch = 1; 
     
    505508        case ATH79_SOC_AR9342: 
    506509        case ATH79_SOC_AR9344: 
     510        case ATH79_SOC_QCA9558: 
    507511                pll_10 = AR934X_PLL_VAL_10; 
    508512                pll_100 = AR934X_PLL_VAL_100; 
     
    569573                case ATH79_SOC_AR9342: 
    570574                case ATH79_SOC_AR9344: 
     575                case ATH79_SOC_QCA9558: 
    571576                        switch (pdata->phy_if_mode) { 
    572577                        case PHY_INTERFACE_MODE_MII: 
     
    617622                case ATH79_SOC_AR9342: 
    618623                case ATH79_SOC_AR9344: 
     624                case ATH79_SOC_QCA9558: 
    619625                        switch (pdata->phy_if_mode) { 
    620626                        case PHY_INTERFACE_MODE_MII: 
     
    823829        case ATH79_SOC_AR9342: 
    824830        case ATH79_SOC_AR9344: 
     831        case ATH79_SOC_QCA9558: 
    825832                if (id == 0) { 
    826833                        pdata->reset_bit = AR934X_RESET_GE0_MAC | 
     
    880887                case ATH79_SOC_AR9342: 
    881888                case ATH79_SOC_AR9344: 
     889                case ATH79_SOC_QCA9558: 
    882890                        if (id == 0) 
    883891                                pdata->mii_bus_dev = &ath79_mdio0_device.dev; 
  • trunk/target/linux/ar71xx/patches-3.3/501-MIPS-ath79-add-mac-argument-to-ath79_register_wmac.patch

    r31602 r32606  
    1717  
    1818 static struct resource ath79_wmac_resources[] = { 
    19 @@ -116,7 +118,7 @@ static void ar934x_wmac_setup(void) 
     19@@ -134,7 +136,7 @@ static void qca955x_wmac_setup(void) 
    2020                ath79_wmac_data.is_clk_25mhz = true; 
    2121 } 
     
    2626        if (soc_is_ar913x()) 
    2727                ar913x_wmac_setup(); 
    28 @@ -131,5 +133,10 @@ void __init ath79_register_wmac(u8 *cal_ 
     28@@ -151,5 +153,10 @@ void __init ath79_register_wmac(u8 *cal_ 
    2929                memcpy(ath79_wmac_data.eeprom_data, cal_data, 
    3030                       sizeof(ath79_wmac_data.eeprom_data)); 
  • trunk/target/linux/ar71xx/patches-3.3/502-MIPS-ath79-export-ath79_gpio_base.patch

    r30410 r32606  
    1414--- a/arch/mips/include/asm/mach-ath79/ath79.h 
    1515+++ b/arch/mips/include/asm/mach-ath79/ath79.h 
    16 @@ -99,6 +99,7 @@ static inline int soc_is_ar934x(void) 
     16@@ -110,6 +110,7 @@ static inline int soc_is_qca955x(void) 
    1717 } 
    1818  
  • trunk/target/linux/ar71xx/patches-3.3/503-MIPS-ath79-add-flash-acquire-release.patch

    r30410 r32606  
    99 u32 ath79_cpu_freq; 
    1010 EXPORT_SYMBOL_GPL(ath79_cpu_freq); 
    11 @@ -107,3 +108,16 @@ void ath79_device_reset_clear(u32 mask) 
     11@@ -109,3 +110,16 @@ void ath79_device_reset_clear(u32 mask) 
    1212        spin_unlock_irqrestore(&ath79_device_reset_lock, flags); 
    1313 } 
     
    2828--- a/arch/mips/include/asm/mach-ath79/ath79.h 
    2929+++ b/arch/mips/include/asm/mach-ath79/ath79.h 
    30 @@ -126,4 +126,7 @@ static inline u32 ath79_reset_rr(unsigne 
     30@@ -137,4 +137,7 @@ static inline u32 ath79_reset_rr(unsigne 
    3131 void ath79_device_reset_set(u32 mask); 
    3232 void ath79_device_reset_clear(u32 mask); 
  • trunk/target/linux/ar71xx/patches-3.3/504-MIPS-ath79-add-ath79_device_reset_get.patch

    r30410 r32606  
    11--- a/arch/mips/include/asm/mach-ath79/ath79.h 
    22+++ b/arch/mips/include/asm/mach-ath79/ath79.h 
    3 @@ -125,6 +125,7 @@ static inline u32 ath79_reset_rr(unsigne 
     3@@ -136,6 +136,7 @@ static inline u32 ath79_reset_rr(unsigne 
    44  
    55 void ath79_device_reset_set(u32 mask); 
     
    1111--- a/arch/mips/ath79/common.c 
    1212+++ b/arch/mips/ath79/common.c 
    13 @@ -109,6 +109,32 @@ void ath79_device_reset_clear(u32 mask) 
     13@@ -111,6 +111,32 @@ void ath79_device_reset_clear(u32 mask) 
    1414 } 
    1515 EXPORT_SYMBOL_GPL(ath79_device_reset_clear); 
  • trunk/target/linux/ar71xx/patches-3.3/509-MIPS-ath79-process-board-kernel-option.patch

    r30410 r32606  
    11--- a/arch/mips/ath79/setup.c 
    22+++ b/arch/mips/ath79/setup.c 
    3 @@ -215,6 +215,8 @@ void __init plat_time_init(void) 
     3@@ -225,6 +225,8 @@ void __init plat_time_init(void) 
    44        mips_hpt_frequency = clk_get_rate(clk) / 2; 
    55 } 
  • trunk/target/linux/ar71xx/patches-3.3/511-MIPS-ath79-add-ath79_set_usb_power_gpio.patch

    r32454 r32606  
    99 #include <linux/platform_device.h> 
    1010 #include <linux/usb/ehci_pdriver.h> 
    11 @@ -236,3 +237,26 @@ void __init ath79_register_usb(void) 
     11@@ -282,3 +283,26 @@ void __init ath79_register_usb(void) 
    1212        else 
    1313                BUG(); 
  • trunk/target/linux/ar71xx/patches-3.3/521-MIPS-ath79-enable-UART-for-early_serial.patch

    r30909 r32606  
    4848 { 
    4949        void __iomem *base; 
    50 @@ -84,8 +124,10 @@ static void prom_putchar_init(void) 
     50@@ -85,8 +125,10 @@ static void prom_putchar_init(void) 
    5151  
    5252        default: 
  • trunk/target/linux/ar71xx/patches-3.3/601-MIPS-ath79-add-more-register-defines.patch

    r32605 r32606  
    3737 #define AR934X_WMAC_SIZE       0x20000 
    3838 #define AR934X_EHCI_BASE       0x1b000000 
    39 @@ -146,6 +156,9 @@ 
     39@@ -110,6 +120,8 @@ 
     40 #define QCA955X_EHCI0_BASE     0x1b000000 
     41 #define QCA955X_EHCI1_BASE     0x1b400000 
     42 #define QCA955X_EHCI_SIZE      0x1000 
     43+#define QCA955X_GMAC_BASE      (AR71XX_APB_BASE + 0x00070000) 
     44+#define QCA955X_GMAC_SIZE      0x40 
     45  
     46 /* 
     47  * DDR_CTRL block 
     48@@ -165,6 +177,9 @@ 
    4049 #define AR71XX_AHB_DIV_SHIFT           20 
    4150 #define AR71XX_AHB_DIV_MASK            0x7 
     
    4756 #define AR724X_PLL_REG_PCIE_CONFIG     0x18 
    4857  
    49 @@ -158,6 +171,8 @@ 
     58@@ -177,6 +192,8 @@ 
    5059 #define AR724X_DDR_DIV_SHIFT           22 
    5160 #define AR724X_DDR_DIV_MASK            0x3 
     
    5665 #define AR913X_PLL_REG_ETH_CONFIG      0x04 
    5766 #define AR913X_PLL_REG_ETH0_INT_CLOCK  0x14 
    58 @@ -170,6 +185,9 @@ 
     67@@ -189,6 +206,9 @@ 
    5968 #define AR913X_AHB_DIV_SHIFT           19 
    6069 #define AR913X_AHB_DIV_MASK            0x1 
     
    6675 #define AR933X_PLL_CLOCK_CTRL_REG      0x08 
    6776  
    68 @@ -191,6 +209,7 @@ 
     77@@ -210,6 +230,7 @@ 
    6978 #define AR934X_PLL_CPU_CONFIG_REG              0x00 
    7079 #define AR934X_PLL_DDR_CONFIG_REG              0x04 
     
    7483 #define AR934X_PLL_CPU_CONFIG_NFRAC_SHIFT      0 
    7584 #define AR934X_PLL_CPU_CONFIG_NFRAC_MASK       0x3f 
    76 @@ -311,16 +330,50 @@ 
     85@@ -368,16 +389,50 @@ 
    7786 #define AR913X_RESET_USB_HOST          BIT(5) 
    7887 #define AR913X_RESET_USB_PHY           BIT(4) 
     
    125134  
    126135 #define AR934X_BOOTSTRAP_SW_OPTION8    BIT(23) 
    127 @@ -425,10 +478,138 @@ 
     136@@ -518,6 +573,14 @@ 
    128137 #define AR71XX_GPIO_REG_INT_ENABLE     0x24 
    129138 #define AR71XX_GPIO_REG_FUNC           0x28 
     
    140149 #define AR724X_GPIO_COUNT              18 
    141150 #define AR913X_GPIO_COUNT              22 
    142  #define AR933X_GPIO_COUNT              30 
     151@@ -525,4 +588,133 @@ 
    143152 #define AR934X_GPIO_COUNT              23 
     153 #define QCA955X_GPIO_COUNT             24 
    144154  
    145155+#define AR71XX_GPIO_FUNC_STEREO_EN             BIT(17) 
     
    263273+#define AR933X_ETH_CFG_SW_ACC_MSB_FIRST        BIT(13) 
    264274+ 
     275+/* 
     276+ * QCA955X GMAC Interface 
     277+ */ 
     278+ 
     279+#define QCA955X_GMAC_REG_ETH_CFG       0x00 
     280+ 
     281+#define QCA955X_ETH_CFG_RGMII_GMAC0    BIT(0) 
     282+#define QCA955X_ETH_CFG_SGMII_GMAC0    BIT(6) 
     283+ 
    265284 #endif /* __ASM_MACH_AR71XX_REGS_H */ 
  • trunk/target/linux/ar71xx/patches-3.3/602-MIPS-ath79-add-openwrt-stuff.patch

    r30410 r32606  
    11--- a/arch/mips/ath79/Kconfig 
    22+++ b/arch/mips/ath79/Kconfig 
    3 @@ -88,6 +88,20 @@ config SOC_AR934X 
     3@@ -94,6 +94,20 @@ config SOC_QCA955X 
    44        select PCI_AR724X if PCI 
    55        def_bool n 
     
    2222        def_bool n 
    2323  
    24 @@ -107,4 +121,10 @@ config ATH79_DEV_WMAC 
    25         depends on (SOC_AR913X || SOC_AR933X || SOC_AR934X) 
     24@@ -113,4 +127,10 @@ config ATH79_DEV_WMAC 
     25        depends on (SOC_AR913X || SOC_AR933X || SOC_AR934X || SOC_QCA955X) 
    2626        def_bool n 
    2727  
  • trunk/target/linux/ar71xx/patches-3.3/610-MIPS-ath79-openwrt-machines.patch

    r31847 r32606  
    590590  
    591591 config SOC_AR71XX 
    592 @@ -96,10 +561,6 @@ config SOC_AR934X 
     592@@ -102,10 +567,6 @@ config SOC_QCA955X 
    593593        select PCI_AR724X if PCI 
    594594        def_bool n 
     
    601601        select ATH79_PCI_ATH9K_FIXUP 
    602602        def_bool n 
    603 @@ -110,7 +571,14 @@ config ATH79_DEV_DSA 
     603@@ -116,7 +577,14 @@ config ATH79_DEV_DSA 
    604604 config ATH79_DEV_ETH 
    605605        def_bool n 
     
    617617  
    618618 config ATH79_DEV_GPIO_BUTTONS 
    619 @@ -135,4 +603,7 @@ config ATH79_NVRAM 
     619@@ -141,4 +609,7 @@ config ATH79_NVRAM 
    620620 config ATH79_PCI_ATH9K_FIXUP 
    621621        def_bool n 
  • trunk/target/linux/ar71xx/patches-3.3/620-MIPS-ath79-OTP-support.patch

    r32605 r32606  
    11--- a/arch/mips/ath79/dev-wmac.c 
    22+++ b/arch/mips/ath79/dev-wmac.c 
    3 @@ -121,6 +121,137 @@ static void ar934x_wmac_setup(void) 
     3@@ -139,6 +139,137 @@ static void qca955x_wmac_setup(void) 
    44                ath79_wmac_data.is_clk_25mhz = true; 
    55 } 
     
    150150--- a/arch/mips/include/asm/mach-ath79/ar71xx_regs.h 
    151151+++ b/arch/mips/include/asm/mach-ath79/ar71xx_regs.h 
    152 @@ -102,6 +102,14 @@ 
    153  #define AR934X_EHCI_BASE       0x1b000000 
    154  #define AR934X_EHCI_SIZE       0x1000 
     152@@ -123,6 +123,14 @@ 
     153 #define QCA955X_GMAC_BASE      (AR71XX_APB_BASE + 0x00070000) 
     154 #define QCA955X_GMAC_SIZE      0x40 
    155155  
    156156+#define AR9300_OTP_BASE                0x14000 
Note: See TracChangeset for help on using the changeset viewer.