diff options
35 files changed, 275 insertions, 554 deletions
diff --git a/target/linux/ar71xx/patches-4.1/102-MIPS-ath79-Avoid-using-unitialized-reg-variable.patch b/target/linux/ar71xx/patches-4.1/100-MIPS-ath79-Avoid-using-unitialized-reg-variable.patch index 79c7ab01ab..79c7ab01ab 100644 --- a/target/linux/ar71xx/patches-4.1/102-MIPS-ath79-Avoid-using-unitialized-reg-variable.patch +++ b/target/linux/ar71xx/patches-4.1/100-MIPS-ath79-Avoid-using-unitialized-reg-variable.patch diff --git a/target/linux/ar71xx/patches-4.1/213-MIPS-ath79-fix-ar933x-wmac-reset.patch b/target/linux/ar71xx/patches-4.1/200-MIPS-ath79-fix-ar933x-wmac-reset.patch index e0821a7776..e0821a7776 100644 --- a/target/linux/ar71xx/patches-4.1/213-MIPS-ath79-fix-ar933x-wmac-reset.patch +++ b/target/linux/ar71xx/patches-4.1/200-MIPS-ath79-fix-ar933x-wmac-reset.patch diff --git a/target/linux/ar71xx/patches-4.1/480-ar913x_wmac_external_reset.patch b/target/linux/ar71xx/patches-4.1/201-ar913x_wmac_external_reset.patch index 9b704a3c47..9b704a3c47 100644 --- a/target/linux/ar71xx/patches-4.1/480-ar913x_wmac_external_reset.patch +++ b/target/linux/ar71xx/patches-4.1/201-ar913x_wmac_external_reset.patch diff --git a/target/linux/ar71xx/patches-4.1/727-MIPS-ath79-ar934x-wmac-revision.patch b/target/linux/ar71xx/patches-4.1/202-MIPS-ath79-ar934x-wmac-revision.patch index b1b4946e03..c91ecdf439 100644 --- a/target/linux/ar71xx/patches-4.1/727-MIPS-ath79-ar934x-wmac-revision.patch +++ b/target/linux/ar71xx/patches-4.1/202-MIPS-ath79-ar934x-wmac-revision.patch @@ -1,6 +1,6 @@ --- a/arch/mips/ath79/dev-wmac.c +++ b/arch/mips/ath79/dev-wmac.c -@@ -147,6 +147,8 @@ static void ar934x_wmac_setup(void) +@@ -140,6 +140,8 @@ static void ar934x_wmac_setup(void) ath79_wmac_data.is_clk_25mhz = false; else ath79_wmac_data.is_clk_25mhz = true; @@ -8,4 +8,4 @@ + ath79_wmac_data.get_mac_revision = ar93xx_get_soc_revision; } - static void qca953x_wmac_setup(void) + static void qca955x_wmac_setup(void) diff --git a/target/linux/ar71xx/patches-4.1/728-MIPS-ath79-fix-restart.patch b/target/linux/ar71xx/patches-4.1/203-MIPS-ath79-fix-restart.patch index 612078c796..713a191bc0 100644 --- a/target/linux/ar71xx/patches-4.1/728-MIPS-ath79-fix-restart.patch +++ b/target/linux/ar71xx/patches-4.1/203-MIPS-ath79-fix-restart.patch @@ -10,7 +10,7 @@ if (cpu_wait) --- a/arch/mips/include/asm/mach-ath79/ath79.h +++ b/arch/mips/include/asm/mach-ath79/ath79.h -@@ -144,6 +144,7 @@ static inline u32 ath79_pll_rr(unsigned +@@ -132,6 +132,7 @@ static inline u32 ath79_pll_rr(unsigned static inline void ath79_reset_wr(unsigned reg, u32 val) { __raw_writel(val, ath79_reset_base + reg); diff --git a/target/linux/ar71xx/patches-4.1/501-MIPS-ath79-add-mac-argument-to-ath79_register_wmac.patch b/target/linux/ar71xx/patches-4.1/501-MIPS-ath79-add-mac-argument-to-ath79_register_wmac.patch index b41c733c5e..fdf353c2e6 100644 --- a/target/linux/ar71xx/patches-4.1/501-MIPS-ath79-add-mac-argument-to-ath79_register_wmac.patch +++ b/target/linux/ar71xx/patches-4.1/501-MIPS-ath79-add-mac-argument-to-ath79_register_wmac.patch @@ -16,7 +16,7 @@ static struct ath9k_platform_data ath79_wmac_data; static struct resource ath79_wmac_resources[] = { -@@ -160,7 +162,7 @@ static void qca955x_wmac_setup(void) +@@ -162,7 +164,7 @@ static void qca955x_wmac_setup(void) ath79_wmac_data.is_clk_25mhz = true; } @@ -25,7 +25,7 @@ { if (soc_is_ar913x()) ar913x_wmac_setup(); -@@ -177,5 +179,10 @@ void __init ath79_register_wmac(u8 *cal_ +@@ -179,5 +181,10 @@ void __init ath79_register_wmac(u8 *cal_ memcpy(ath79_wmac_data.eeprom_data, cal_data, sizeof(ath79_wmac_data.eeprom_data)); diff --git a/target/linux/ar71xx/patches-4.1/503-MIPS-ath79-add-flash-acquire-release.patch b/target/linux/ar71xx/patches-4.1/503-MIPS-ath79-add-flash-acquire-release.patch index 06f790299d..108f6590c2 100644 --- a/target/linux/ar71xx/patches-4.1/503-MIPS-ath79-add-flash-acquire-release.patch +++ b/target/linux/ar71xx/patches-4.1/503-MIPS-ath79-add-flash-acquire-release.patch @@ -27,7 +27,7 @@ + --- a/arch/mips/include/asm/mach-ath79/ath79.h +++ b/arch/mips/include/asm/mach-ath79/ath79.h -@@ -143,4 +143,7 @@ static inline u32 ath79_reset_rr(unsigne +@@ -144,4 +144,7 @@ static inline u32 ath79_reset_rr(unsigne void ath79_device_reset_set(u32 mask); void ath79_device_reset_clear(u32 mask); diff --git a/target/linux/ar71xx/patches-4.1/504-MIPS-ath79-add-ath79_device_reset_get.patch b/target/linux/ar71xx/patches-4.1/504-MIPS-ath79-add-ath79_device_reset_get.patch index 024a85d06a..8748aa3151 100644 --- a/target/linux/ar71xx/patches-4.1/504-MIPS-ath79-add-ath79_device_reset_get.patch +++ b/target/linux/ar71xx/patches-4.1/504-MIPS-ath79-add-ath79_device_reset_get.patch @@ -1,6 +1,6 @@ --- a/arch/mips/include/asm/mach-ath79/ath79.h +++ b/arch/mips/include/asm/mach-ath79/ath79.h -@@ -142,6 +142,7 @@ static inline u32 ath79_reset_rr(unsigne +@@ -143,6 +143,7 @@ static inline u32 ath79_reset_rr(unsigne void ath79_device_reset_set(u32 mask); void ath79_device_reset_clear(u32 mask); diff --git a/target/linux/ar71xx/patches-4.1/509-MIPS-ath79-process-board-kernel-option.patch b/target/linux/ar71xx/patches-4.1/509-MIPS-ath79-process-board-kernel-option.patch index ca7a890375..98ef1e134a 100644 --- a/target/linux/ar71xx/patches-4.1/509-MIPS-ath79-process-board-kernel-option.patch +++ b/target/linux/ar71xx/patches-4.1/509-MIPS-ath79-process-board-kernel-option.patch @@ -1,6 +1,6 @@ --- a/arch/mips/ath79/setup.c +++ b/arch/mips/ath79/setup.c -@@ -234,6 +234,8 @@ void __init plat_time_init(void) +@@ -235,6 +235,8 @@ void __init plat_time_init(void) mips_hpt_frequency = cpu_clk_rate / 2; } diff --git a/target/linux/ar71xx/patches-4.1/522-MIPS-ath79-add-ath79_wmac_register_simple-helper.patch b/target/linux/ar71xx/patches-4.1/522-MIPS-ath79-add-ath79_wmac_register_simple-helper.patch index 74928e6835..a29c7be8ec 100644 --- a/target/linux/ar71xx/patches-4.1/522-MIPS-ath79-add-ath79_wmac_register_simple-helper.patch +++ b/target/linux/ar71xx/patches-4.1/522-MIPS-ath79-add-ath79_wmac_register_simple-helper.patch @@ -1,6 +1,6 @@ --- a/arch/mips/ath79/dev-wmac.c +++ b/arch/mips/ath79/dev-wmac.c -@@ -189,3 +189,9 @@ void __init ath79_register_wmac(u8 *cal_ +@@ -191,3 +191,9 @@ void __init ath79_register_wmac(u8 *cal_ platform_device_register(&ath79_wmac_device); } diff --git a/target/linux/ar71xx/patches-4.1/523-MIPS-ath79-OTP-support.patch b/target/linux/ar71xx/patches-4.1/523-MIPS-ath79-OTP-support.patch index 5ff1cb83fb..e030d7cec3 100644 --- a/target/linux/ar71xx/patches-4.1/523-MIPS-ath79-OTP-support.patch +++ b/target/linux/ar71xx/patches-4.1/523-MIPS-ath79-OTP-support.patch @@ -1,6 +1,6 @@ --- a/arch/mips/ath79/dev-wmac.c +++ b/arch/mips/ath79/dev-wmac.c -@@ -165,6 +165,137 @@ static void qca955x_wmac_setup(void) +@@ -167,6 +167,137 @@ static void qca955x_wmac_setup(void) ath79_wmac_data.is_clk_25mhz = true; } diff --git a/target/linux/ar71xx/patches-4.1/524-MIPS-ath79-add-ath79_wmac_disable_25ghz-helpers.patch b/target/linux/ar71xx/patches-4.1/524-MIPS-ath79-add-ath79_wmac_disable_25ghz-helpers.patch index 7b4b6ef284..31f885f2c8 100644 --- a/target/linux/ar71xx/patches-4.1/524-MIPS-ath79-add-ath79_wmac_disable_25ghz-helpers.patch +++ b/target/linux/ar71xx/patches-4.1/524-MIPS-ath79-add-ath79_wmac_disable_25ghz-helpers.patch @@ -1,6 +1,6 @@ --- a/arch/mips/ath79/dev-wmac.c +++ b/arch/mips/ath79/dev-wmac.c -@@ -296,6 +296,16 @@ bool __init ar93xx_wmac_read_mac_address +@@ -298,6 +298,16 @@ bool __init ar93xx_wmac_read_mac_address return ret; } diff --git a/target/linux/ar71xx/patches-4.1/608-MIPS-ath79-ubnt-xm-add-more-boards.patch b/target/linux/ar71xx/patches-4.1/608-MIPS-ath79-ubnt-xm-add-more-boards.patch index 78035131db..24b0f27493 100644 --- a/target/linux/ar71xx/patches-4.1/608-MIPS-ath79-ubnt-xm-add-more-boards.patch +++ b/target/linux/ar71xx/patches-4.1/608-MIPS-ath79-ubnt-xm-add-more-boards.patch @@ -1,6 +1,6 @@ --- a/arch/mips/ath79/mach-ubnt-xm.c +++ b/arch/mips/ath79/mach-ubnt-xm.c -@@ -12,16 +12,24 @@ +@@ -12,16 +12,26 @@ #include <linux/init.h> #include <linux/pci.h> @@ -13,6 +13,8 @@ #include <asm/mach-ath79/irq.h> +#include <asm/mach-ath79/ar71xx_regs.h> ++#include <linux/platform_data/phy-at803x.h> ++ +#include "common.h" #include "dev-ap9x-pci.h" +#include "dev-eth.h" @@ -26,7 +28,7 @@ #define UBNT_XM_GPIO_LED_L1 0 #define UBNT_XM_GPIO_LED_L2 1 -@@ -37,19 +45,19 @@ +@@ -37,19 +47,19 @@ static struct gpio_led ubnt_xm_leds_gpio[] __initdata = { { @@ -50,7 +52,7 @@ .gpio = UBNT_XM_GPIO_LED_L4, .active_low = 0, }, -@@ -66,9 +74,13 @@ static struct gpio_keys_button ubnt_xm_g +@@ -66,9 +76,13 @@ static struct gpio_keys_button ubnt_xm_g } }; @@ -64,7 +66,7 @@ ath79_register_leds_gpio(-1, ARRAY_SIZE(ubnt_xm_leds_gpio), ubnt_xm_leds_gpio); -@@ -79,9 +91,428 @@ static void __init ubnt_xm_init(void) +@@ -79,9 +93,552 @@ static void __init ubnt_xm_init(void) ath79_register_m25p80(NULL); ap91_pci_init(eeprom, NULL); @@ -381,6 +383,40 @@ + }, +}; + ++#define UBNT_ROCKET_TI_GPIO_LED_L1 16 ++#define UBNT_ROCKET_TI_GPIO_LED_L2 17 ++#define UBNT_ROCKET_TI_GPIO_LED_L3 18 ++#define UBNT_ROCKET_TI_GPIO_LED_L4 19 ++#define UBNT_ROCKET_TI_GPIO_LED_L5 20 ++#define UBNT_ROCKET_TI_GPIO_LED_L6 21 ++static struct gpio_led ubnt_rocket_ti_leds_gpio[] __initdata = { ++ { ++ .name = "ubnt:green:link1", ++ .gpio = UBNT_ROCKET_TI_GPIO_LED_L1, ++ .active_low = 1, ++ }, { ++ .name = "ubnt:green:link2", ++ .gpio = UBNT_ROCKET_TI_GPIO_LED_L2, ++ .active_low = 1, ++ }, { ++ .name = "ubnt:green:link3", ++ .gpio = UBNT_ROCKET_TI_GPIO_LED_L3, ++ .active_low = 1, ++ }, { ++ .name = "ubnt:green:link4", ++ .gpio = UBNT_ROCKET_TI_GPIO_LED_L4, ++ .active_low = 0, ++ }, { ++ .name = "ubnt:green:link5", ++ .gpio = UBNT_ROCKET_TI_GPIO_LED_L5, ++ .active_low = 0, ++ }, { ++ .name = "ubnt:green:link6", ++ .gpio = UBNT_ROCKET_TI_GPIO_LED_L6, ++ .active_low = 0, ++ }, ++}; ++ +static void __init ubnt_xw_init(void) +{ + u8 *eeprom = (u8 *) KSEG1ADDR(0x1fff0000); @@ -426,12 +462,102 @@ + ath79_register_eth(0); +} + ++static void __init ubnt_rocket_m_xw_setup(void) ++{ ++ u8 *eeprom = (u8 *) KSEG1ADDR(0x1fff0000); ++ ++ ath79_register_m25p80(NULL); ++ ++ ath79_register_leds_gpio(-1, ARRAY_SIZE(ubnt_xw_leds_gpio), ++ ubnt_xw_leds_gpio); ++ ath79_register_gpio_keys_polled(-1, UBNT_XM_KEYS_POLL_INTERVAL, ++ ARRAY_SIZE(ubnt_xm_gpio_keys), ++ ubnt_xm_gpio_keys); ++ ++ ath79_register_wmac(eeprom + UAP_PRO_WMAC_CALDATA_OFFSET, NULL); ++ ap91_pci_init(eeprom + UAP_PRO_PCI_CALDATA_OFFSET, NULL); ++ ++ ath79_setup_ar934x_eth_cfg(AR934X_ETH_CFG_RGMII_GMAC0); ++ ath79_init_mac(ath79_eth0_data.mac_addr, ++ eeprom + UAP_PRO_MAC0_OFFSET, 0); ++ ++ ath79_eth0_data.phy_if_mode = PHY_INTERFACE_MODE_RGMII; ++ ath79_eth0_data.mii_bus_dev = &ath79_mdio0_device.dev; ++ ++ ath79_register_mdio(0, ~BIT(4)); ++ ath79_eth0_data.phy_mask = BIT(4); ++ ath79_eth0_pll_data.pll_1000 = 0x06000000; ++ ath79_register_eth(0); ++} ++ ++static struct at803x_platform_data ubnt_rocket_m_ti_at803_data = { ++ .disable_smarteee = 1, ++ .enable_rgmii_rx_delay = 1, ++ .enable_rgmii_tx_delay = 1, ++}; ++static struct mdio_board_info ubnt_rocket_m_ti_mdio_info[] = { ++ { ++ .bus_id = "ag71xx-mdio.0", ++ .phy_addr = 4, ++ .platform_data = &ubnt_rocket_m_ti_at803_data, ++ }, ++}; ++ ++static void __init ubnt_rocket_m_ti_setup(void) ++{ ++ u8 *eeprom = (u8 *) KSEG1ADDR(0x1fff0000); ++ ++ ath79_register_m25p80(NULL); ++ ++ ath79_register_leds_gpio(-1, ARRAY_SIZE(ubnt_rocket_ti_leds_gpio), ++ ubnt_rocket_ti_leds_gpio); ++ ath79_register_gpio_keys_polled(-1, UBNT_XM_KEYS_POLL_INTERVAL, ++ ARRAY_SIZE(ubnt_xm_gpio_keys), ++ ubnt_xm_gpio_keys); ++ ++ ap91_pci_init(eeprom + 0x1000, NULL); ++ ++ ath79_setup_ar934x_eth_cfg(AR934X_ETH_CFG_RGMII_GMAC0); ++ ath79_setup_ar934x_eth_rx_delay(3, 3); ++ ath79_init_mac(ath79_eth0_data.mac_addr, ++ eeprom + UAP_PRO_MAC0_OFFSET, 0); ++ ath79_init_mac(ath79_eth1_data.mac_addr, ++ eeprom + UAP_PRO_MAC1_OFFSET, 0); ++ ++ ath79_eth0_data.phy_if_mode = PHY_INTERFACE_MODE_RGMII; ++ ath79_eth0_data.mii_bus_dev = &ath79_mdio0_device.dev; ++ ath79_eth1_data.phy_if_mode = PHY_INTERFACE_MODE_GMII; ++ ath79_eth1_data.mii_bus_dev = &ath79_mdio1_device.dev; ++ ++ mdiobus_register_board_info(ubnt_rocket_m_ti_mdio_info, ++ ARRAY_SIZE(ubnt_rocket_m_ti_mdio_info)); ++ ath79_register_mdio(0, 0x0); ++ ++ ++ ath79_eth0_data.phy_mask = BIT(4); ++ /* read out from vendor */ ++ ath79_eth0_pll_data.pll_1000 = 0x2000000; ++ ath79_eth0_pll_data.pll_10 = 0x1313; ++ ath79_register_eth(0); ++ ++ ath79_register_mdio(1, 0x0); ++ ath79_eth1_data.phy_mask = BIT(3); ++ ath79_register_eth(1); ++} ++ ++ +MIPS_MACHINE(ATH79_MACH_UBNT_NANO_M_XW, "UBNT-NM-XW", "Ubiquiti Nanostation M XW", + ubnt_nano_m_xw_setup); + +MIPS_MACHINE(ATH79_MACH_UBNT_LOCO_M_XW, "UBNT-LOCO-XW", "Ubiquiti Loco M XW", + ubnt_loco_m_xw_setup); + ++MIPS_MACHINE(ATH79_MACH_UBNT_ROCKET_M_XW, "UBNT-RM-XW", "Ubiquiti Rocket M XW", ++ ubnt_rocket_m_xw_setup); ++ ++MIPS_MACHINE(ATH79_MACH_UBNT_ROCKET_M_TI, "UBNT-RM-TI", "Ubiquiti Rocket M TI", ++ ubnt_rocket_m_ti_setup); ++ +static struct gpio_led ubnt_airgateway_gpio_leds[] __initdata = { + { + .name = "ubnt:blue:wlan", @@ -515,7 +641,7 @@ Ubiquiti Networks XM (rev 1.0) board. --- a/arch/mips/ath79/machtypes.h +++ b/arch/mips/ath79/machtypes.h -@@ -22,6 +22,13 @@ enum ath79_mach_type { +@@ -22,6 +22,15 @@ enum ath79_mach_type { ATH79_MACH_AP81, /* Atheros AP81 reference board */ ATH79_MACH_DB120, /* Atheros DB120 reference board */ ATH79_MACH_PB44, /* Atheros PB44 reference board */ @@ -523,6 +649,8 @@ + ATH79_MACH_UBNT_BULLET_M, /* Ubiquiti Bullet M */ + ATH79_MACH_UBNT_NANO_M, /* Ubiquiti NanoStation M */ + ATH79_MACH_UBNT_ROCKET_M, /* Ubiquiti Rocket M */ ++ ATH79_MACH_UBNT_ROCKET_M_XW, /* Ubiquiti Rocket M XW*/ ++ ATH79_MACH_UBNT_ROCKET_M_TI, /* Ubiquiti Rocket M TI*/ + ATH79_MACH_UBNT_UAP_PRO, /* Ubiquiti UniFi AP Pro */ + ATH79_MACH_UBNT_UNIFI, /* Ubiquiti Unifi */ + ATH79_MACH_UBNT_UNIFI_OUTDOOR, /* Ubiquiti UnifiAP Outdoor */ diff --git a/target/linux/ar71xx/patches-4.1/612-MIPS-ath79-set-buffalo-txgain.patch b/target/linux/ar71xx/patches-4.1/612-MIPS-ath79-set-buffalo-txgain.patch index fdef854fce..4e3ac70f59 100644 --- a/target/linux/ar71xx/patches-4.1/612-MIPS-ath79-set-buffalo-txgain.patch +++ b/target/linux/ar71xx/patches-4.1/612-MIPS-ath79-set-buffalo-txgain.patch @@ -1,6 +1,6 @@ --- a/arch/mips/ath79/dev-wmac.c +++ b/arch/mips/ath79/dev-wmac.c -@@ -306,6 +306,11 @@ void __init ath79_wmac_disable_5ghz(void +@@ -308,6 +308,11 @@ void __init ath79_wmac_disable_5ghz(void ath79_wmac_data.disable_5ghz = true; } diff --git a/target/linux/ar71xx/patches-4.1/613-MIPS-ath79-add-ath79_wmac_setup_ext_lna_gpio-helper.patch b/target/linux/ar71xx/patches-4.1/613-MIPS-ath79-add-ath79_wmac_setup_ext_lna_gpio-helper.patch index 83de7b120a..a832bf84ce 100644 --- a/target/linux/ar71xx/patches-4.1/613-MIPS-ath79-add-ath79_wmac_setup_ext_lna_gpio-helper.patch +++ b/target/linux/ar71xx/patches-4.1/613-MIPS-ath79-add-ath79_wmac_setup_ext_lna_gpio-helper.patch @@ -12,7 +12,7 @@ #include "dev-wmac.h" static u8 ath79_wmac_mac[ETH_ALEN]; -@@ -311,6 +313,51 @@ void __init ath79_wmac_set_tx_gain_buffa +@@ -313,6 +315,51 @@ void __init ath79_wmac_set_tx_gain_buffa ath79_wmac_data.tx_gain_buffalo = true; } diff --git a/target/linux/ar71xx/patches-4.1/707-MIPS-ath79-add-support-for-QCA953x-SoC.patch b/target/linux/ar71xx/patches-4.1/620-MIPS-ath79-add-support-for-QCA953x-SoC.patch index 2c624b3a2e..58ca1d5165 100644 --- a/target/linux/ar71xx/patches-4.1/707-MIPS-ath79-add-support-for-QCA953x-SoC.patch +++ b/target/linux/ar71xx/patches-4.1/620-MIPS-ath79-add-support-for-QCA953x-SoC.patch @@ -22,7 +22,7 @@ meaning of the bits CPUCLK_FROM_CPUPLL and DDRCLK_FROM_DDRPLL is reversed. --- a/arch/mips/ath79/Kconfig +++ b/arch/mips/ath79/Kconfig -@@ -1229,6 +1229,10 @@ config SOC_AR934X +@@ -105,6 +105,10 @@ config SOC_AR934X select PCI_AR724X if PCI def_bool n @@ -33,7 +33,7 @@ meaning of the bits CPUCLK_FROM_CPUPLL and DDRCLK_FROM_DDRPLL is reversed. config SOC_QCA955X select HW_HAS_PCI select PCI_AR724X if PCI -@@ -1271,7 +1275,7 @@ config ATH79_DEV_USB +@@ -144,7 +148,7 @@ config ATH79_DEV_USB def_bool n config ATH79_DEV_WMAC @@ -237,8 +237,8 @@ meaning of the bits CPUCLK_FROM_CPUPLL and DDRCLK_FROM_DDRPLL is reversed. ath79_wmac_data.external_reset = ar933x_wmac_reset; } -@@ -149,6 +149,26 @@ static void ar934x_wmac_setup(void) - ath79_wmac_data.is_clk_25mhz = true; +@@ -151,6 +151,26 @@ static void ar934x_wmac_setup(void) + ath79_wmac_data.get_mac_revision = ar93xx_get_soc_revision; } +static void qca953x_wmac_setup(void) @@ -264,7 +264,7 @@ meaning of the bits CPUCLK_FROM_CPUPLL and DDRCLK_FROM_DDRPLL is reversed. static void qca955x_wmac_setup(void) { u32 t; -@@ -366,6 +386,8 @@ void __init ath79_register_wmac(u8 *cal_ +@@ -368,6 +388,8 @@ void __init ath79_register_wmac(u8 *cal_ ar933x_wmac_setup(); else if (soc_is_ar934x()) ar934x_wmac_setup(); @@ -405,7 +405,7 @@ meaning of the bits CPUCLK_FROM_CPUPLL and DDRCLK_FROM_DDRPLL is reversed. } --- a/arch/mips/ath79/setup.c +++ b/arch/mips/ath79/setup.c -@@ -59,6 +59,7 @@ static void __init ath79_detect_sys_type +@@ -60,6 +60,7 @@ static void __init ath79_detect_sys_type u32 major; u32 minor; u32 rev = 0; @@ -413,7 +413,7 @@ meaning of the bits CPUCLK_FROM_CPUPLL and DDRCLK_FROM_DDRPLL is reversed. id = ath79_reset_rr(AR71XX_RESET_REG_REV_ID); major = id & REV_ID_MAJOR_MASK; -@@ -151,6 +152,16 @@ static void __init ath79_detect_sys_type +@@ -152,6 +153,16 @@ static void __init ath79_detect_sys_type rev = id & AR934X_REV_ID_REVISION_MASK; break; @@ -430,7 +430,7 @@ meaning of the bits CPUCLK_FROM_CPUPLL and DDRCLK_FROM_DDRPLL is reversed. case REV_ID_MAJOR_QCA9556: ath79_soc = ATH79_SOC_QCA9556; chip = "9556"; -@@ -169,7 +180,7 @@ static void __init ath79_detect_sys_type +@@ -170,7 +181,7 @@ static void __init ath79_detect_sys_type ath79_soc_rev = rev; diff --git a/target/linux/ar71xx/patches-4.1/735-MIPS-ath79-add-support-for-QCA956x-SoC.patch b/target/linux/ar71xx/patches-4.1/621-MIPS-ath79-add-support-for-QCA956x-SoC.patch index 47e8c793c1..b23c18eb14 100644 --- a/target/linux/ar71xx/patches-4.1/735-MIPS-ath79-add-support-for-QCA956x-SoC.patch +++ b/target/linux/ar71xx/patches-4.1/621-MIPS-ath79-add-support-for-QCA956x-SoC.patch @@ -1,6 +1,6 @@ --- a/arch/mips/ath79/Kconfig +++ b/arch/mips/ath79/Kconfig -@@ -1249,6 +1249,12 @@ config SOC_QCA955X +@@ -114,6 +114,12 @@ config SOC_QCA955X select PCI_AR724X if PCI def_bool n @@ -13,7 +13,7 @@ config ATH79_DEV_M25P80 select ATH79_DEV_SPI def_bool n -@@ -1286,7 +1292,7 @@ config ATH79_DEV_USB +@@ -148,7 +154,7 @@ config ATH79_DEV_USB def_bool n config ATH79_DEV_WMAC diff --git a/target/linux/ar71xx/patches-4.1/736-MIPS-ath79-fix-chained-irq-disable.patch b/target/linux/ar71xx/patches-4.1/630-MIPS-ath79-fix-chained-irq-disable.patch index 8c0cc95384..8c0cc95384 100644 --- a/target/linux/ar71xx/patches-4.1/736-MIPS-ath79-fix-chained-irq-disable.patch +++ b/target/linux/ar71xx/patches-4.1/630-MIPS-ath79-fix-chained-irq-disable.patch diff --git a/target/linux/ar71xx/patches-4.1/810-MIPS-ath79-wmac-enable-set-led-pin.patch b/target/linux/ar71xx/patches-4.1/631-MIPS-ath79-wmac-enable-set-led-pin.patch index 03b32b1461..03b32b1461 100644 --- a/target/linux/ar71xx/patches-4.1/810-MIPS-ath79-wmac-enable-set-led-pin.patch +++ b/target/linux/ar71xx/patches-4.1/631-MIPS-ath79-wmac-enable-set-led-pin.patch diff --git a/target/linux/ar71xx/patches-4.1/811-MIPS-ath79-gpio-enable-set-direction.patch b/target/linux/ar71xx/patches-4.1/632-MIPS-ath79-gpio-enable-set-direction.patch index b5dbb74d79..c628f1df89 100644 --- a/target/linux/ar71xx/patches-4.1/811-MIPS-ath79-gpio-enable-set-direction.patch +++ b/target/linux/ar71xx/patches-4.1/632-MIPS-ath79-gpio-enable-set-direction.patch @@ -10,7 +10,7 @@ #endif /* __ATH79_COMMON_H */ --- a/arch/mips/ath79/gpio.c +++ b/arch/mips/ath79/gpio.c -@@ -142,6 +142,30 @@ static int ar934x_gpio_direction_output( +@@ -130,6 +130,30 @@ static int ar934x_gpio_direction_output( return 0; } diff --git a/target/linux/ar71xx/patches-4.1/739-MIPS-ath79-add-gpio-irq-support.patch b/target/linux/ar71xx/patches-4.1/633-MIPS-ath79-add-gpio-irq-support.patch index 90bc963cf2..e8183e7d92 100644 --- a/target/linux/ar71xx/patches-4.1/739-MIPS-ath79-add-gpio-irq-support.patch +++ b/target/linux/ar71xx/patches-4.1/633-MIPS-ath79-add-gpio-irq-support.patch @@ -29,7 +29,7 @@ static void __ath79_gpio_set_value(unsigned gpio, int value) { void __iomem *base = ath79_gpio_base; -@@ -209,6 +221,132 @@ void __init ath79_gpio_output_select(uns +@@ -233,6 +245,132 @@ void __init ath79_gpio_output_select(uns spin_unlock_irqrestore(&ath79_gpio_lock, flags); } @@ -162,7 +162,7 @@ void __init ath79_gpio_init(void) { int err; -@@ -245,6 +383,10 @@ void __init ath79_gpio_init(void) +@@ -269,6 +407,10 @@ void __init ath79_gpio_init(void) err = gpiochip_add(&ath79_gpio_chip); if (err) panic("cannot add AR71xx GPIO chip, error=%d", err); @@ -173,7 +173,7 @@ } int gpio_get_value(unsigned gpio) -@@ -267,14 +409,22 @@ EXPORT_SYMBOL(gpio_set_value); +@@ -291,14 +433,22 @@ EXPORT_SYMBOL(gpio_set_value); int gpio_to_irq(unsigned gpio) { diff --git a/target/linux/ar71xx/patches-4.1/610-MIPS-ath79-openwrt-machines.patch b/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch index 8e0d194a2f..02d996691e 100644 --- a/target/linux/ar71xx/patches-4.1/610-MIPS-ath79-openwrt-machines.patch +++ b/target/linux/ar71xx/patches-4.1/700-MIPS-ath79-openwrt-machines.patch @@ -1,6 +1,6 @@ --- a/arch/mips/ath79/machtypes.h +++ b/arch/mips/ath79/machtypes.h -@@ -16,22 +16,195 @@ +@@ -16,24 +16,206 @@ enum ath79_mach_type { ATH79_MACH_GENERIC = 0, @@ -9,6 +9,8 @@ + ATH79_MACH_ALL0258N, /* Allnet ALL0258N */ + ATH79_MACH_ALL0305, /* Allnet ALL0305 */ + ATH79_MACH_ALL0315N, /* Allnet ALL0315N */ ++ ATH79_MACH_ANTMINER_S1, /* Bitmain Antminer S1 */ ++ ATH79_MACH_ANTMINER_S3, /* Bitmain Antminer S3 */ + ATH79_MACH_AP113, /* Atheros AP113 reference board */ ATH79_MACH_AP121, /* Atheros AP121 reference board */ ATH79_MACH_AP121_MINI, /* Atheros AP121-MINI reference board */ @@ -16,6 +18,7 @@ ATH79_MACH_AP135_020, /* Atheros AP135-020 reference board */ ATH79_MACH_AP136_010, /* Atheros AP136-010 reference board */ ATH79_MACH_AP136_020, /* Atheros AP136-020 reference board */ ++ ATH79_MACH_AP143, /* Atheros AP143 reference board */ ATH79_MACH_AP81, /* Atheros AP81 reference board */ + ATH79_MACH_AP83, /* Atheros AP83 */ + ATH79_MACH_AP96, /* Atheros AP96 */ @@ -50,6 +53,7 @@ + ATH79_MACH_EL_M150, /* EasyLink EL-M150 */ + ATH79_MACH_EL_MINI, /* EasyLink EL-MINI */ + ATH79_MACH_ESR1750, /* EnGenius ESR1750 */ ++ ATH79_MACH_EPG5000, /* EnGenius EPG5000 */ + ATH79_MACH_F9K1115V2, /* Belkin AC1750DB */ + ATH79_MACH_GL_INET, /* GL-CONNECT GL-INET */ + ATH79_MACH_GS_OOLITE, /* GS OOLITE V1.0 */ @@ -58,6 +62,8 @@ + ATH79_MACH_JA76PF2, /* jjPlus JA76PF2 */ + ATH79_MACH_JWAP003, /* jjPlus JWAP003 */ + ATH79_MACH_HORNET_UB, /* ALFA Networks Hornet-UB */ ++ ATH79_MACH_MR12, /* Cisco Meraki MR12 */ ++ ATH79_MACH_MR16, /* Cisco Meraki MR16 */ + ATH79_MACH_MR600V2, /* OpenMesh MR600v2 */ + ATH79_MACH_MR600, /* OpenMesh MR600 */ + ATH79_MACH_MR900, /* OpenMesh MR900 */ @@ -74,6 +80,7 @@ + ATH79_MACH_OM2P_LC, /* OpenMesh OM2P-LC */ + ATH79_MACH_OM2Pv2, /* OpenMesh OM2Pv2 */ + ATH79_MACH_OM2P, /* OpenMesh OM2P */ ++ ATH79_MACH_OM5P_AN, /* OpenMesh OM5P-AN */ + ATH79_MACH_OM5P, /* OpenMesh OM5P */ + ATH79_MACH_PB42, /* Atheros PB42 */ + ATH79_MACH_PB92, /* Atheros PB92 */ @@ -93,6 +100,7 @@ + ATH79_MACH_RB_750G_R3, /* MikroTik RouterBOARD 750GL */ + ATH79_MACH_RB_751, /* MikroTik RouterBOARD 751 */ + ATH79_MACH_RB_751G, /* Mikrotik RouterBOARD 751G */ ++ ATH79_MACH_RB_922GS, /* Mikrotik RouterBOARD 911/922GS boards */ + ATH79_MACH_RB_951G, /* Mikrotik RouterBOARD 951G */ + ATH79_MACH_RB_951U, /* Mikrotik RouterBOARD 951Ui-2HnD */ + ATH79_MACH_RB_2011G, /* Mikrotik RouterBOARD 2011UAS-2HnD */ @@ -107,6 +115,7 @@ + ATH79_MACH_TEW_673GRU, /* TRENDnet TEW-673GRU */ + ATH79_MACH_TEW_712BR, /* TRENDnet TEW-712BR */ + ATH79_MACH_TEW_732BR, /* TRENDnet TEW-732BR */ ++ ATH79_MACH_MC_MAC1200R, /* MERCURY MAC1200R*/ + ATH79_MACH_TL_MR10U, /* TP-LINK TL-MR10U */ + ATH79_MACH_TL_MR11U, /* TP-LINK TL-MR11U */ + ATH79_MACH_TL_MR13U, /* TP-LINK TL-MR13U */ @@ -157,6 +166,8 @@ ATH79_MACH_UBNT_NANO_M, /* Ubiquiti NanoStation M */ + ATH79_MACH_UBNT_NANO_M_XW, /* Ubiquiti NanoStation M XW */ ATH79_MACH_UBNT_ROCKET_M, /* Ubiquiti Rocket M */ + ATH79_MACH_UBNT_ROCKET_M_XW, /* Ubiquiti Rocket M XW*/ + ATH79_MACH_UBNT_ROCKET_M_TI, /* Ubiquiti Rocket M TI*/ + ATH79_MACH_UBNT_RSPRO, /* Ubiquiti RouterStation Pro */ + ATH79_MACH_UBNT_RS, /* Ubiquiti RouterStation */ ATH79_MACH_UBNT_UAP_PRO, /* Ubiquiti UniFi AP Pro */ @@ -198,7 +209,7 @@ #endif /* _ATH79_MACHTYPE_H */ --- a/arch/mips/ath79/Kconfig +++ b/arch/mips/ath79/Kconfig -@@ -2,6 +2,70 @@ if ATH79 +@@ -2,6 +2,90 @@ if ATH79 menu "Atheros AR71XX/AR724X/AR913X machine selection" @@ -256,6 +267,26 @@ + select ATH79_DEV_LEDS_GPIO + select ATH79_DEV_M25P80 + ++config ATH79_MACH_ANTMINER_S1 ++ bool "Bitmain Antminer S1 support" ++ select SOC_AR933X ++ select ATH79_DEV_ETH ++ select ATH79_DEV_GPIO_BUTTONS ++ select ATH79_DEV_LEDS_GPIO ++ select ATH79_DEV_M25P80 ++ select ATH79_DEV_USB ++ select ATH79_DEV_WMAC ++ ++config ATH79_MACH_ANTMINER_S3 ++ bool "Bitmain Antminer S3 support" ++ select SOC_AR933X ++ select ATH79_DEV_ETH ++ select ATH79_DEV_GPIO_BUTTONS ++ select ATH79_DEV_LEDS_GPIO ++ select ATH79_DEV_M25P80 ++ select ATH79_DEV_USB ++ select ATH79_DEV_WMAC ++ +config ATH79_MACH_AP113 + bool "Atheros AP113 board support" + select SOC_AR724X @@ -269,7 +300,7 @@ config ATH79_MACH_AP121 bool "Atheros AP121 reference board" select SOC_AR933X -@@ -11,62 +75,1031 @@ config ATH79_MACH_AP121 +@@ -11,62 +95,1097 @@ config ATH79_MACH_AP121 select ATH79_DEV_M25P80 select ATH79_DEV_USB select ATH79_DEV_WMAC @@ -305,6 +336,20 @@ + Say 'Y' here if you want your kernel to support the + Atheros AP136 or AP135 reference boards. + ++config ATH79_MACH_AP143 ++ bool "Atheros AP143 reference board" ++ select SOC_QCA953X ++ select ATH79_DEV_GPIO_BUTTONS ++ select ATH79_DEV_LEDS_GPIO ++ select ATH79_DEV_SPI ++ select ATH79_DEV_USB ++ select ATH79_DEV_WMAC ++ select ATH79_DEV_ETH ++ select ATH79_DEV_M25P80 ++ help ++ Say 'Y' here if you want your kernel to support the ++ Atheros AP143 reference board. ++ +config ATH79_MACH_AP81 + bool "Atheros AP81 reference board" + select SOC_AR913X @@ -397,6 +442,17 @@ + select ATH79_DEV_USB + select ATH79_DEV_WMAC + ++config ATH79_MACH_EPG5000 ++ bool "EnGenius EPG5000 board support" ++ select SOC_QCA955X ++ select ATH79_DEV_ETH ++ select ATH79_DEV_GPIO_BUTTONS ++ select ATH79_DEV_LEDS_GPIO ++ select ATH79_DEV_M25P80 ++ select ATH79_DEV_USB ++ select ATH79_DEV_WMAC ++ select ATH79_NVRAM ++ +config ATH79_MACH_ESR1750 + bool "EnGenius ESR1750 board support" + select SOC_QCA955X @@ -780,6 +836,16 @@ + select ATH79_DEV_USB + select ATH79_DEV_WMAC + ++config ATH79_MACH_MC_MAC1200R ++ bool "MERCURY MAC1200R board support" ++ select SOC_AR934X ++ select ATH79_DEV_AP9X_PCI if PCI ++ select ATH79_DEV_ETH ++ select ATH79_DEV_GPIO_BUTTONS ++ select ATH79_DEV_LEDS_GPIO ++ select ATH79_DEV_M25P80 ++ select ATH79_DEV_WMAC ++ +config ATH79_MACH_RB4XX + bool "MikroTik RouterBOARD 4xx series support" + select SOC_AR71XX @@ -805,6 +871,16 @@ + select ATH79_DEV_USB + select ATH79_ROUTERBOOT + ++config ATH79_MACH_RB922 ++ bool "MikroTik RouterBOARD 922 support" ++ select SOC_QCA955X ++ select ATH79_DEV_ETH ++ select ATH79_DEV_M25P80 ++ select ATH79_DEV_NFC ++ select ATH79_DEV_USB ++ select ATH79_ROUTERBOOT ++ select RLE_DECOMPRESS ++ +config ATH79_MACH_RB95X + bool "MikroTik RouterBOARD 95X support" + select SOC_AR934X @@ -923,6 +999,27 @@ +config ATH79_MACH_OM5P + bool "OpenMesh OM5P board support" + select SOC_AR934X ++ select ATH79_DEV_AP9X_PCI if PCI ++ select ATH79_DEV_ETH ++ select ATH79_DEV_GPIO_BUTTONS ++ select ATH79_DEV_LEDS_GPIO ++ select ATH79_DEV_M25P80 ++ select ATH79_DEV_WMAC ++ ++config ATH79_MACH_MR12 ++ bool "Meraki MR12 board support" ++ select SOC_AR724X ++ select ATH79_DEV_AP9X_PCI if PCI ++ select ATH79_DEV_ETH ++ select ATH79_DEV_GPIO_BUTTONS ++ select ATH79_DEV_LEDS_GPIO ++ select ATH79_DEV_M25P80 ++ select ATH79_DEV_WMAC ++ ++config ATH79_MACH_MR16 ++ bool "Meraki MR16 board support" ++ select SOC_AR71XX ++ select ATH79_DEV_AP9X_PCI if PCI + select ATH79_DEV_ETH + select ATH79_DEV_GPIO_BUTTONS + select ATH79_DEV_LEDS_GPIO @@ -1329,7 +1426,7 @@ config ATH79_MACH_UBNT_XM bool "Ubiquiti Networks XM/UniFi boards" -@@ -83,6 +1116,97 @@ config ATH79_MACH_UBNT_XM +@@ -83,6 +1202,97 @@ config ATH79_MACH_UBNT_XM Say 'Y' here if you want your kernel to support the Ubiquiti Networks XM (rev 1.0) board. @@ -1427,7 +1524,7 @@ endmenu config SOC_AR71XX -@@ -124,7 +1248,10 @@ config ATH79_DEV_DSA +@@ -134,7 +1344,10 @@ config ATH79_DEV_DSA config ATH79_DEV_ETH def_bool n @@ -1439,7 +1536,7 @@ def_bool n config ATH79_DEV_GPIO_BUTTONS -@@ -154,6 +1281,11 @@ config ATH79_PCI_ATH9K_FIXUP +@@ -164,6 +1377,11 @@ config ATH79_PCI_ATH9K_FIXUP def_bool n config ATH79_ROUTERBOOT @@ -1453,7 +1550,7 @@ endif --- a/arch/mips/ath79/Makefile +++ b/arch/mips/ath79/Makefile -@@ -38,9 +38,124 @@ obj-$(CONFIG_ATH79_ROUTERBOOT) += route +@@ -38,9 +38,132 @@ obj-$(CONFIG_ATH79_ROUTERBOOT) += route # # Machines # @@ -1461,10 +1558,13 @@ +obj-$(CONFIG_ATH79_MACH_ALFA_NX) += mach-alfa-nx.o +obj-$(CONFIG_ATH79_MACH_ALL0258N) += mach-all0258n.o +obj-$(CONFIG_ATH79_MACH_ALL0315N) += mach-all0315n.o ++obj-$(CONFIG_ATH79_MACH_ANTMINER_S1)+= mach-antminer-s1.o ++obj-$(CONFIG_ATH79_MACH_ANTMINER_S3)+= mach-antminer-s3.o +obj-$(CONFIG_ATH79_MACH_AP113) += mach-ap113.o obj-$(CONFIG_ATH79_MACH_AP121) += mach-ap121.o +obj-$(CONFIG_ATH79_MACH_AP132) += mach-ap132.o obj-$(CONFIG_ATH79_MACH_AP136) += mach-ap136.o ++obj-$(CONFIG_ATH79_MACH_AP143) += mach-ap143.o obj-$(CONFIG_ATH79_MACH_AP81) += mach-ap81.o +obj-$(CONFIG_ATH79_MACH_AP83) += mach-ap83.o +obj-$(CONFIG_ATH79_MACH_AP96) += mach-ap96.o @@ -1491,6 +1591,7 @@ +obj-$(CONFIG_ATH79_MACH_EAP7660D) += mach-eap7660d.o +obj-$(CONFIG_ATH79_MACH_EL_M150) += mach-el-m150.o +obj-$(CONFIG_ATH79_MACH_EL_MINI) += mach-el-mini.o ++obj-$(CONFIG_ATH79_MACH_EPG5000) += mach-epg5000.o +obj-$(CONFIG_ATH79_MACH_ESR1750) += mach-esr1750.o +obj-$(CONFIG_ATH79_MACH_F9K1115V2) += mach-f9k1115v2.o +obj-$(CONFIG_ATH79_MACH_GL_INET) += mach-gl-inet.o @@ -1499,6 +1600,9 @@ +obj-$(CONFIG_ATH79_MACH_JA76PF) += mach-ja76pf.o +obj-$(CONFIG_ATH79_MACH_JWAP003) += mach-jwap003.o +obj-$(CONFIG_ATH79_MACH_HORNET_UB) += mach-hornet-ub.o ++obj-$(CONFIG_ATH79_MACH_MC_MAC1200R) += mach-mc-mac1200r.o ++obj-$(CONFIG_ATH79_MACH_MR12) += mach-mr12.o ++obj-$(CONFIG_ATH79_MACH_MR16) += mach-mr16.o +obj-$(CONFIG_ATH79_MACH_MR600) += mach-mr600.o +obj-$(CONFIG_ATH79_MACH_MR900) += mach-mr900.o +obj-$(CONFIG_ATH79_MACH_MYNET_N600) += mach-mynet-n600.o @@ -1517,6 +1621,7 @@ +obj-$(CONFIG_ATH79_MACH_RB4XX) += mach-rb4xx.o +obj-$(CONFIG_ATH79_MACH_RB750) += mach-rb750.o +obj-$(CONFIG_ATH79_MACH_RB91X) += mach-rb91x.o ++obj-$(CONFIG_ATH79_MACH_RB922) += mach-rb922.o +obj-$(CONFIG_ATH79_MACH_RB95X) += mach-rb95x.o +obj-$(CONFIG_ATH79_MACH_RB2011) += mach-rb2011.o +obj-$(CONFIG_ATH79_MACH_RBSXTLITE) += mach-rbsxtlite.o @@ -1580,7 +1685,7 @@ +obj-$(CONFIG_ATH79_MACH_NBG6716) += mach-nbg6716.o --- a/arch/mips/ath79/prom.c +++ b/arch/mips/ath79/prom.c -@@ -130,6 +130,12 @@ void __init prom_init(void) +@@ -130,6 +130,13 @@ void __init prom_init(void) initrd_end = initrd_start + fw_getenvl("initrd_size"); } #endif @@ -1588,7 +1693,8 @@ + if (strstr(arcs_cmdline, "board=750Gr3") || + strstr(arcs_cmdline, "board=951G") || + strstr(arcs_cmdline, "board=2011L") || -+ strstr(arcs_cmdline, "board=711Gr100")) ++ strstr(arcs_cmdline, "board=711Gr100") || ++ strstr(arcs_cmdline, "board=922gs")) + ath79_prom_append_cmdline("console", "ttyS0,115200"); } diff --git a/target/linux/ar71xx/patches-4.1/718-MIPS-ath79-add-EPG5000-support.patch b/target/linux/ar71xx/patches-4.1/718-MIPS-ath79-add-EPG5000-support.patch deleted file mode 100644 index a47e24d61b..0000000000 --- a/target/linux/ar71xx/patches-4.1/718-MIPS-ath79-add-EPG5000-support.patch +++ /dev/null @@ -1,40 +0,0 @@ ---- a/arch/mips/ath79/Kconfig -+++ b/arch/mips/ath79/Kconfig -@@ -196,6 +196,17 @@ config ATH79_MACH_F9K1115V2 - select ATH79_DEV_USB - select ATH79_DEV_WMAC - -+config ATH79_MACH_EPG5000 -+ bool "EnGenius EPG5000 board support" -+ select SOC_QCA955X -+ select ATH79_DEV_ETH -+ select ATH79_DEV_GPIO_BUTTONS -+ select ATH79_DEV_LEDS_GPIO -+ select ATH79_DEV_M25P80 -+ select ATH79_DEV_USB -+ select ATH79_DEV_WMAC -+ select ATH79_NVRAM -+ - config ATH79_MACH_ESR1750 - bool "EnGenius ESR1750 board support" - select SOC_QCA955X ---- a/arch/mips/ath79/Makefile -+++ b/arch/mips/ath79/Makefile -@@ -72,6 +72,7 @@ obj-$(CONFIG_ATH79_MACH_EAP300V2) += mac - obj-$(CONFIG_ATH79_MACH_EAP7660D) += mach-eap7660d.o - obj-$(CONFIG_ATH79_MACH_EL_M150) += mach-el-m150.o - obj-$(CONFIG_ATH79_MACH_EL_MINI) += mach-el-mini.o -+obj-$(CONFIG_ATH79_MACH_EPG5000) += mach-epg5000.o - obj-$(CONFIG_ATH79_MACH_ESR1750) += mach-esr1750.o - obj-$(CONFIG_ATH79_MACH_F9K1115V2) += mach-f9k1115v2.o - obj-$(CONFIG_ATH79_MACH_GL_INET) += mach-gl-inet.o ---- a/arch/mips/ath79/machtypes.h -+++ b/arch/mips/ath79/machtypes.h -@@ -62,6 +62,7 @@ enum ath79_mach_type { - ATH79_MACH_EL_M150, /* EasyLink EL-M150 */ - ATH79_MACH_EL_MINI, /* EasyLink EL-MINI */ - ATH79_MACH_ESR1750, /* EnGenius ESR1750 */ -+ ATH79_MACH_EPG5000, /* EnGenius EPG5000 */ - ATH79_MACH_F9K1115V2, /* Belkin AC1750DB */ - ATH79_MACH_GL_INET, /* GL-CONNECT GL-INET */ - ATH79_MACH_GS_OOLITE, /* GS OOLITE V1.0 */ diff --git a/target/linux/ar71xx/patches-4.1/736-MIPS-ath79-add-MC-MAC1200R-support.patch b/target/linux/ar71xx/patches-4.1/736-MIPS-ath79-add-MC-MAC1200R-support.patch deleted file mode 100644 index 4c041d0b53..0000000000 --- a/target/linux/ar71xx/patches-4.1/736-MIPS-ath79-add-MC-MAC1200R-support.patch +++ /dev/null @@ -1,39 +0,0 @@ ---- a/arch/mips/ath79/Kconfig -+++ b/arch/mips/ath79/Kconfig -@@ -590,6 +590,16 @@ config ATH79_MACH_R6100 - select ATH79_DEV_USB - select ATH79_DEV_WMAC - -+config ATH79_MACH_MC_MAC1200R -+ bool "MERCURY MAC1200R board support" -+ select SOC_AR934X -+ select ATH79_DEV_AP9X_PCI if PCI -+ select ATH79_DEV_ETH -+ select ATH79_DEV_GPIO_BUTTONS -+ select ATH79_DEV_LEDS_GPIO -+ select ATH79_DEV_M25P80 -+ select ATH79_DEV_WMAC -+ - config ATH79_MACH_RB4XX - bool "MikroTik RouterBOARD 4xx series support" - select SOC_AR71XX ---- a/arch/mips/ath79/Makefile -+++ b/arch/mips/ath79/Makefile -@@ -81,6 +81,7 @@ obj-$(CONFIG_ATH79_MACH_HIWIFI_HC6361) + - obj-$(CONFIG_ATH79_MACH_JA76PF) += mach-ja76pf.o - obj-$(CONFIG_ATH79_MACH_JWAP003) += mach-jwap003.o - obj-$(CONFIG_ATH79_MACH_HORNET_UB) += mach-hornet-ub.o -+obj-$(CONFIG_ATH79_MACH_MC_MAC1200R) += mach-mc-mac1200r.o - obj-$(CONFIG_ATH79_MACH_MR600) += mach-mr600.o - obj-$(CONFIG_ATH79_MACH_MR900) += mach-mr900.o - obj-$(CONFIG_ATH79_MACH_MYNET_N600) += mach-mynet-n600.o ---- a/arch/mips/ath79/machtypes.h -+++ b/arch/mips/ath79/machtypes.h -@@ -120,6 +120,7 @@ enum ath79_mach_type { - ATH79_MACH_TEW_673GRU, /* TRENDnet TEW-673GRU */ - ATH79_MACH_TEW_712BR, /* TRENDnet TEW-712BR */ - ATH79_MACH_TEW_732BR, /* TRENDnet TEW-732BR */ -+ ATH79_MACH_MC_MAC1200R, /* MERCURY MAC1200R*/ - ATH79_MACH_TL_MR10U, /* TP-LINK TL-MR10U */ - ATH79_MACH_TL_MR11U, /* TP-LINK TL-MR11U */ - ATH79_MACH_TL_MR13U, /* TP-LINK TL-MR13U */ diff --git a/target/linux/ar71xx/patches-4.1/737-MIPS-ath79-add-om5p-an-support.patch b/target/linux/ar71xx/patches-4.1/737-MIPS-ath79-add-om5p-an-support.patch deleted file mode 100644 index 935a845ab4..0000000000 --- a/target/linux/ar71xx/patches-4.1/737-MIPS-ath79-add-om5p-an-support.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- a/arch/mips/ath79/machtypes.h -+++ b/arch/mips/ath79/machtypes.h -@@ -87,6 +87,7 @@ enum ath79_mach_type { - ATH79_MACH_OM2P_LC, /* OpenMesh OM2P-LC */ - ATH79_MACH_OM2Pv2, /* OpenMesh OM2Pv2 */ - ATH79_MACH_OM2P, /* OpenMesh OM2P */ -+ ATH79_MACH_OM5P_AN, /* OpenMesh OM5P-AN */ - ATH79_MACH_OM5P, /* OpenMesh OM5P */ - ATH79_MACH_PB42, /* Atheros PB42 */ - ATH79_MACH_PB92, /* Atheros PB92 */ ---- a/arch/mips/ath79/Kconfig -+++ b/arch/mips/ath79/Kconfig -@@ -743,6 +743,7 @@ config ATH79_MACH_OM2P - config ATH79_MACH_OM5P - bool "OpenMesh OM5P board support" - select SOC_AR934X -+ select ATH79_DEV_AP9X_PCI if PCI - select ATH79_DEV_ETH - select ATH79_DEV_GPIO_BUTTONS - select ATH79_DEV_LEDS_GPIO diff --git a/target/linux/ar71xx/patches-4.1/738-MIPS-ath79-add-meraki-mr12-mr16-support.patch b/target/linux/ar71xx/patches-4.1/738-MIPS-ath79-add-meraki-mr12-mr16-support.patch deleted file mode 100644 index 94d0aedc56..0000000000 --- a/target/linux/ar71xx/patches-4.1/738-MIPS-ath79-add-meraki-mr12-mr16-support.patch +++ /dev/null @@ -1,51 +0,0 @@ ---- a/arch/mips/ath79/Kconfig -+++ b/arch/mips/ath79/Kconfig -@@ -750,6 +750,26 @@ config ATH79_MACH_OM5P - select ATH79_DEV_M25P80 - select ATH79_DEV_WMAC - -+config ATH79_MACH_MR12 -+ bool "Meraki MR12 board support" -+ select SOC_AR724X -+ select ATH79_DEV_AP9X_PCI if PCI -+ select ATH79_DEV_ETH -+ select ATH79_DEV_GPIO_BUTTONS -+ select ATH79_DEV_LEDS_GPIO -+ select ATH79_DEV_M25P80 -+ select ATH79_DEV_WMAC -+ -+config ATH79_MACH_MR16 -+ bool "Meraki MR16 board support" -+ select SOC_AR71XX -+ select ATH79_DEV_AP9X_PCI if PCI -+ select ATH79_DEV_ETH -+ select ATH79_DEV_GPIO_BUTTONS -+ select ATH79_DEV_LEDS_GPIO -+ select ATH79_DEV_M25P80 -+ select ATH79_DEV_WMAC -+ - config ATH79_MACH_MR600 - bool "OpenMesh MR600 board support" - select SOC_AR934X ---- a/arch/mips/ath79/Makefile -+++ b/arch/mips/ath79/Makefile -@@ -82,6 +82,8 @@ obj-$(CONFIG_ATH79_MACH_JA76PF) += mach - obj-$(CONFIG_ATH79_MACH_JWAP003) += mach-jwap003.o - obj-$(CONFIG_ATH79_MACH_HORNET_UB) += mach-hornet-ub.o - obj-$(CONFIG_ATH79_MACH_MC_MAC1200R) += mach-mc-mac1200r.o -+obj-$(CONFIG_ATH79_MACH_MR12) += mach-mr12.o -+obj-$(CONFIG_ATH79_MACH_MR16) += mach-mr16.o - obj-$(CONFIG_ATH79_MACH_MR600) += mach-mr600.o - obj-$(CONFIG_ATH79_MACH_MR900) += mach-mr900.o - obj-$(CONFIG_ATH79_MACH_MYNET_N600) += mach-mynet-n600.o ---- a/arch/mips/ath79/machtypes.h -+++ b/arch/mips/ath79/machtypes.h -@@ -71,6 +71,8 @@ enum ath79_mach_type { - ATH79_MACH_JA76PF2, /* jjPlus JA76PF2 */ - ATH79_MACH_JWAP003, /* jjPlus JWAP003 */ - ATH79_MACH_HORNET_UB, /* ALFA Networks Hornet-UB */ -+ ATH79_MACH_MR12, /* Cisco Meraki MR12 */ -+ ATH79_MACH_MR16, /* Cisco Meraki MR16 */ - ATH79_MACH_MR600V2, /* OpenMesh MR600v2 */ - ATH79_MACH_MR600, /* OpenMesh MR600 */ - ATH79_MACH_MR900, /* OpenMesh MR900 */ diff --git a/target/linux/ar71xx/patches-4.1/800-MIPS-ath79-add-RB922GS-support.patch b/target/linux/ar71xx/patches-4.1/800-MIPS-ath79-add-RB922GS-support.patch deleted file mode 100644 index ca28652da1..0000000000 --- a/target/linux/ar71xx/patches-4.1/800-MIPS-ath79-add-RB922GS-support.patch +++ /dev/null @@ -1,51 +0,0 @@ ---- a/arch/mips/ath79/Kconfig -+++ b/arch/mips/ath79/Kconfig -@@ -625,6 +625,16 @@ config ATH79_MACH_RB91X - select ATH79_DEV_USB - select ATH79_ROUTERBOOT - -+config ATH79_MACH_RB922 -+ bool "MikroTik RouterBOARD 922 support" -+ select SOC_QCA955X -+ select ATH79_DEV_ETH -+ select ATH79_DEV_M25P80 -+ select ATH79_DEV_NFC -+ select ATH79_DEV_USB -+ select ATH79_ROUTERBOOT -+ select RLE_DECOMPRESS -+ - config ATH79_MACH_RB95X - bool "MikroTik RouterBOARD 95X support" - select SOC_AR934X ---- a/arch/mips/ath79/Makefile -+++ b/arch/mips/ath79/Makefile -@@ -102,6 +102,7 @@ obj-$(CONFIG_ATH79_MACH_R6100) += mach- - obj-$(CONFIG_ATH79_MACH_RB4XX) += mach-rb4xx.o - obj-$(CONFIG_ATH79_MACH_RB750) += mach-rb750.o - obj-$(CONFIG_ATH79_MACH_RB91X) += mach-rb91x.o -+obj-$(CONFIG_ATH79_MACH_RB922) += mach-rb922.o - obj-$(CONFIG_ATH79_MACH_RB95X) += mach-rb95x.o - obj-$(CONFIG_ATH79_MACH_RB2011) += mach-rb2011.o - obj-$(CONFIG_ATH79_MACH_RBSXTLITE) += mach-rbsxtlite.o ---- a/arch/mips/ath79/machtypes.h -+++ b/arch/mips/ath79/machtypes.h -@@ -109,6 +109,7 @@ enum ath79_mach_type { - ATH79_MACH_RB_750G_R3, /* MikroTik RouterBOARD 750GL */ - ATH79_MACH_RB_751, /* MikroTik RouterBOARD 751 */ - ATH79_MACH_RB_751G, /* Mikrotik RouterBOARD 751G */ -+ ATH79_MACH_RB_922GS, /* Mikrotik RouterBOARD 911/922GS boards */ - ATH79_MACH_RB_951G, /* Mikrotik RouterBOARD 951G */ - ATH79_MACH_RB_951U, /* Mikrotik RouterBOARD 951Ui-2HnD */ - ATH79_MACH_RB_2011G, /* Mikrotik RouterBOARD 2011UAS-2HnD */ ---- a/arch/mips/ath79/prom.c -+++ b/arch/mips/ath79/prom.c -@@ -134,7 +134,8 @@ void __init prom_init(void) - if (strstr(arcs_cmdline, "board=750Gr3") || - strstr(arcs_cmdline, "board=951G") || - strstr(arcs_cmdline, "board=2011L") || -- strstr(arcs_cmdline, "board=711Gr100")) -+ strstr(arcs_cmdline, "board=711Gr100") || -+ strstr(arcs_cmdline, "board=922gs")) - ath79_prom_append_cmdline("console", "ttyS0,115200"); - } - diff --git a/target/linux/ar71xx/patches-4.1/812-MIPS-ath79-add-ap143-support.patch b/target/linux/ar71xx/patches-4.1/812-MIPS-ath79-add-ap143-support.patch deleted file mode 100644 index 29d91ef284..0000000000 --- a/target/linux/ar71xx/patches-4.1/812-MIPS-ath79-add-ap143-support.patch +++ /dev/null @@ -1,43 +0,0 @@ ---- a/arch/mips/ath79/Kconfig -+++ b/arch/mips/ath79/Kconfig -@@ -104,6 +104,20 @@ config ATH79_MACH_AP136 - Say 'Y' here if you want your kernel to support the - Atheros AP136 or AP135 reference boards. - -+config ATH79_MACH_AP143 -+ bool "Atheros AP143 reference board" -+ select SOC_QCA953X -+ select ATH79_DEV_GPIO_BUTTONS -+ select ATH79_DEV_LEDS_GPIO -+ select ATH79_DEV_SPI -+ select ATH79_DEV_USB -+ select ATH79_DEV_WMAC -+ select ATH79_DEV_ETH -+ select ATH79_DEV_M25P80 -+ help -+ Say 'Y' here if you want your kernel to support the -+ Atheros AP143 reference board. -+ - config ATH79_MACH_AP81 - bool "Atheros AP81 reference board" - select SOC_AR913X ---- a/arch/mips/ath79/Makefile -+++ b/arch/mips/ath79/Makefile -@@ -46,6 +46,7 @@ obj-$(CONFIG_ATH79_MACH_AP113) += mach- - obj-$(CONFIG_ATH79_MACH_AP121) += mach-ap121.o - obj-$(CONFIG_ATH79_MACH_AP132) += mach-ap132.o - obj-$(CONFIG_ATH79_MACH_AP136) += mach-ap136.o -+obj-$(CONFIG_ATH79_MACH_AP143) += mach-ap143.o - obj-$(CONFIG_ATH79_MACH_AP81) += mach-ap81.o - obj-$(CONFIG_ATH79_MACH_AP83) += mach-ap83.o - obj-$(CONFIG_ATH79_MACH_AP96) += mach-ap96.o ---- a/arch/mips/ath79/machtypes.h -+++ b/arch/mips/ath79/machtypes.h -@@ -28,6 +28,7 @@ enum ath79_mach_type { - ATH79_MACH_AP135_020, /* Atheros AP135-020 reference board */ - ATH79_MACH_AP136_010, /* Atheros AP136-010 reference board */ - ATH79_MACH_AP136_020, /* Atheros AP136-020 reference board */ -+ ATH79_MACH_AP143, /* Atheros AP143 reference board */ - ATH79_MACH_AP81, /* Atheros AP81 reference board */ - ATH79_MACH_AP83, /* Atheros AP83 */ - ATH79_MACH_AP96, /* Atheros AP96 */ diff --git a/target/linux/ar71xx/patches-4.1/901-mdio_bitbang_ignore_ta_value.patch b/target/linux/ar71xx/patches-4.1/900-mdio_bitbang_ignore_ta_value.patch index 39584aabfa..39584aabfa 100644 --- a/target/linux/ar71xx/patches-4.1/901-mdio_bitbang_ignore_ta_value.patch +++ b/target/linux/ar71xx/patches-4.1/900-mdio_bitbang_ignore_ta_value.patch diff --git a/target/linux/ar71xx/patches-4.1/904-phy-mdio-bitbang-prevent-rescheduling-during-command.patch b/target/linux/ar71xx/patches-4.1/901-phy-mdio-bitbang-prevent-rescheduling-during-command.patch index 68f86e0e09..68f86e0e09 100644 --- a/target/linux/ar71xx/patches-4.1/904-phy-mdio-bitbang-prevent-rescheduling-during-command.patch +++ b/target/linux/ar71xx/patches-4.1/901-phy-mdio-bitbang-prevent-rescheduling-during-command.patch diff --git a/target/linux/ar71xx/patches-4.1/903-MIPS-ath79-ubnt-rocket-m-xw-support.patch b/target/linux/ar71xx/patches-4.1/903-MIPS-ath79-ubnt-rocket-m-xw-support.patch deleted file mode 100644 index ad302636da..0000000000 --- a/target/linux/ar71xx/patches-4.1/903-MIPS-ath79-ubnt-rocket-m-xw-support.patch +++ /dev/null @@ -1,56 +0,0 @@ ---- a/arch/mips/ath79/machtypes.h -+++ b/arch/mips/ath79/machtypes.h -@@ -176,6 +176,7 @@ enum ath79_mach_type { - ATH79_MACH_UBNT_NANO_M, /* Ubiquiti NanoStation M */ - ATH79_MACH_UBNT_NANO_M_XW, /* Ubiquiti NanoStation M XW */ - ATH79_MACH_UBNT_ROCKET_M, /* Ubiquiti Rocket M */ -+ ATH79_MACH_UBNT_ROCKET_M_XW, /* Ubiquiti Rocket M XW*/ - ATH79_MACH_UBNT_RSPRO, /* Ubiquiti RouterStation Pro */ - ATH79_MACH_UBNT_RS, /* Ubiquiti RouterStation */ - ATH79_MACH_UBNT_UAP_PRO, /* Ubiquiti UniFi AP Pro */ ---- a/arch/mips/ath79/mach-ubnt-xm.c -+++ b/arch/mips/ath79/mach-ubnt-xm.c -@@ -449,12 +449,43 @@ static void __init ubnt_loco_m_xw_setup( - ath79_register_eth(0); - } - -+static void __init ubnt_rocket_m_xw_setup(void) -+{ -+ u8 *eeprom = (u8 *) KSEG1ADDR(0x1fff0000); -+ -+ ath79_register_m25p80(NULL); -+ -+ ath79_register_leds_gpio(-1, ARRAY_SIZE(ubnt_xw_leds_gpio), -+ ubnt_xw_leds_gpio); -+ ath79_register_gpio_keys_polled(-1, UBNT_XM_KEYS_POLL_INTERVAL, -+ ARRAY_SIZE(ubnt_xm_gpio_keys), -+ ubnt_xm_gpio_keys); -+ -+ ath79_register_wmac(eeprom + UAP_PRO_WMAC_CALDATA_OFFSET, NULL); -+ ap91_pci_init(eeprom + UAP_PRO_PCI_CALDATA_OFFSET, NULL); -+ -+ ath79_setup_ar934x_eth_cfg(AR934X_ETH_CFG_RGMII_GMAC0); -+ ath79_init_mac(ath79_eth0_data.mac_addr, -+ eeprom + UAP_PRO_MAC0_OFFSET, 0); -+ -+ ath79_eth0_data.phy_if_mode = PHY_INTERFACE_MODE_RGMII; -+ ath79_eth0_data.mii_bus_dev = &ath79_mdio0_device.dev; -+ -+ ath79_register_mdio(0, ~BIT(4)); -+ ath79_eth0_data.phy_mask = BIT(4); -+ ath79_eth0_pll_data.pll_1000 = 0x06000000; -+ ath79_register_eth(0); -+} -+ - MIPS_MACHINE(ATH79_MACH_UBNT_NANO_M_XW, "UBNT-NM-XW", "Ubiquiti Nanostation M XW", - ubnt_nano_m_xw_setup); - - MIPS_MACHINE(ATH79_MACH_UBNT_LOCO_M_XW, "UBNT-LOCO-XW", "Ubiquiti Loco M XW", - ubnt_loco_m_xw_setup); - -+MIPS_MACHINE(ATH79_MACH_UBNT_ROCKET_M_XW, "UBNT-RM-XW", "Ubiquiti Rocket M XW", -+ ubnt_rocket_m_xw_setup); -+ - static struct gpio_led ubnt_airgateway_gpio_leds[] __initdata = { - { - .name = "ubnt:blue:wlan", diff --git a/target/linux/ar71xx/patches-4.1/904-MIPS-ath79-bitmain-antminer-s1-support.patch b/target/linux/ar71xx/patches-4.1/904-MIPS-ath79-bitmain-antminer-s1-support.patch deleted file mode 100644 index 875061467c..0000000000 --- a/target/linux/ar71xx/patches-4.1/904-MIPS-ath79-bitmain-antminer-s1-support.patch +++ /dev/null @@ -1,39 +0,0 @@ ---- a/arch/mips/ath79/machtypes.h -+++ b/arch/mips/ath79/machtypes.h -@@ -21,6 +21,7 @@ enum ath79_mach_type { - ATH79_MACH_ALL0258N, /* Allnet ALL0258N */ - ATH79_MACH_ALL0305, /* Allnet ALL0305 */ - ATH79_MACH_ALL0315N, /* Allnet ALL0315N */ -+ ATH79_MACH_ANTMINER_S1, /* Bitmain Antminer S1 */ - ATH79_MACH_AP113, /* Atheros AP113 reference board */ - ATH79_MACH_AP121, /* Atheros AP121 reference board */ - ATH79_MACH_AP121_MINI, /* Atheros AP121-MINI reference board */ ---- a/arch/mips/ath79/Kconfig -+++ b/arch/mips/ath79/Kconfig -@@ -56,6 +56,16 @@ config ATH79_MACH_ALL0315N - select ATH79_DEV_LEDS_GPIO - select ATH79_DEV_M25P80 - -+config ATH79_MACH_ANTMINER_S1 -+ bool "Bitmain Antminer S1 support" -+ select SOC_AR933X -+ select ATH79_DEV_ETH -+ select ATH79_DEV_GPIO_BUTTONS -+ select ATH79_DEV_LEDS_GPIO -+ select ATH79_DEV_M25P80 -+ select ATH79_DEV_USB -+ select ATH79_DEV_WMAC -+ - config ATH79_MACH_AP113 - bool "Atheros AP113 board support" - select SOC_AR724X ---- a/arch/mips/ath79/Makefile -+++ b/arch/mips/ath79/Makefile -@@ -42,6 +42,7 @@ obj-$(CONFIG_ATH79_MACH_ALFA_AP96) += ma - obj-$(CONFIG_ATH79_MACH_ALFA_NX) += mach-alfa-nx.o - obj-$(CONFIG_ATH79_MACH_ALL0258N) += mach-all0258n.o - obj-$(CONFIG_ATH79_MACH_ALL0315N) += mach-all0315n.o -+obj-$(CONFIG_ATH79_MACH_ANTMINER_S1)+= mach-antminer-s1.o - obj-$(CONFIG_ATH79_MACH_AP113) += mach-ap113.o - obj-$(CONFIG_ATH79_MACH_AP121) += mach-ap121.o - obj-$(CONFIG_ATH79_MACH_AP132) += mach-ap132.o diff --git a/target/linux/ar71xx/patches-4.1/904-MIPS-ath79-ubnt-rocket-m-ti-supprt.patch b/target/linux/ar71xx/patches-4.1/904-MIPS-ath79-ubnt-rocket-m-ti-supprt.patch deleted file mode 100644 index 52d4a09bcc..0000000000 --- a/target/linux/ar71xx/patches-4.1/904-MIPS-ath79-ubnt-rocket-m-ti-supprt.patch +++ /dev/null @@ -1,135 +0,0 @@ ---- a/arch/mips/ath79/mach-ubnt-xm.c -+++ b/arch/mips/ath79/mach-ubnt-xm.c -@@ -21,6 +21,8 @@ - #include <asm/mach-ath79/irq.h> - #include <asm/mach-ath79/ar71xx_regs.h> - -+#include <linux/platform_data/phy-at803x.h> -+ - #include "common.h" - #include "dev-ap9x-pci.h" - #include "dev-eth.h" -@@ -404,6 +406,40 @@ static struct gpio_led ubnt_xw_leds_gpio - }, - }; - -+#define UBNT_ROCKET_TI_GPIO_LED_L1 16 -+#define UBNT_ROCKET_TI_GPIO_LED_L2 17 -+#define UBNT_ROCKET_TI_GPIO_LED_L3 18 -+#define UBNT_ROCKET_TI_GPIO_LED_L4 19 -+#define UBNT_ROCKET_TI_GPIO_LED_L5 20 -+#define UBNT_ROCKET_TI_GPIO_LED_L6 21 -+static struct gpio_led ubnt_rocket_ti_leds_gpio[] __initdata = { -+ { -+ .name = "ubnt:green:link1", -+ .gpio = UBNT_ROCKET_TI_GPIO_LED_L1, -+ .active_low = 1, -+ }, { -+ .name = "ubnt:green:link2", -+ .gpio = UBNT_ROCKET_TI_GPIO_LED_L2, -+ .active_low = 1, -+ }, { -+ .name = "ubnt:green:link3", -+ .gpio = UBNT_ROCKET_TI_GPIO_LED_L3, -+ .active_low = 1, -+ }, { -+ .name = "ubnt:green:link4", -+ .gpio = UBNT_ROCKET_TI_GPIO_LED_L4, -+ .active_low = 0, -+ }, { -+ .name = "ubnt:green:link5", -+ .gpio = UBNT_ROCKET_TI_GPIO_LED_L5, -+ .active_low = 0, -+ }, { -+ .name = "ubnt:green:link6", -+ .gpio = UBNT_ROCKET_TI_GPIO_LED_L6, -+ .active_low = 0, -+ }, -+}; -+ - static void __init ubnt_xw_init(void) - { - u8 *eeprom = (u8 *) KSEG1ADDR(0x1fff0000); -@@ -477,6 +513,62 @@ static void __init ubnt_rocket_m_xw_setu - ath79_register_eth(0); - } - -+static struct at803x_platform_data ubnt_rocket_m_ti_at803_data = { -+ .disable_smarteee = 1, -+ .enable_rgmii_rx_delay = 1, -+ .enable_rgmii_tx_delay = 1, -+}; -+static struct mdio_board_info ubnt_rocket_m_ti_mdio_info[] = { -+ { -+ .bus_id = "ag71xx-mdio.0", -+ .phy_addr = 4, -+ .platform_data = &ubnt_rocket_m_ti_at803_data, -+ }, -+}; -+ -+static void __init ubnt_rocket_m_ti_setup(void) -+{ -+ u8 *eeprom = (u8 *) KSEG1ADDR(0x1fff0000); -+ -+ ath79_register_m25p80(NULL); -+ -+ ath79_register_leds_gpio(-1, ARRAY_SIZE(ubnt_rocket_ti_leds_gpio), -+ ubnt_rocket_ti_leds_gpio); -+ ath79_register_gpio_keys_polled(-1, UBNT_XM_KEYS_POLL_INTERVAL, -+ ARRAY_SIZE(ubnt_xm_gpio_keys), -+ ubnt_xm_gpio_keys); -+ -+ ap91_pci_init(eeprom + 0x1000, NULL); -+ -+ ath79_setup_ar934x_eth_cfg(AR934X_ETH_CFG_RGMII_GMAC0); -+ ath79_setup_ar934x_eth_rx_delay(3, 3); -+ ath79_init_mac(ath79_eth0_data.mac_addr, -+ eeprom + UAP_PRO_MAC0_OFFSET, 0); -+ ath79_init_mac(ath79_eth1_data.mac_addr, -+ eeprom + UAP_PRO_MAC1_OFFSET, 0); -+ -+ ath79_eth0_data.phy_if_mode = PHY_INTERFACE_MODE_RGMII; -+ ath79_eth0_data.mii_bus_dev = &ath79_mdio0_device.dev; -+ ath79_eth1_data.phy_if_mode = PHY_INTERFACE_MODE_GMII; -+ ath79_eth1_data.mii_bus_dev = &ath79_mdio1_device.dev; -+ -+ mdiobus_register_board_info(ubnt_rocket_m_ti_mdio_info, -+ ARRAY_SIZE(ubnt_rocket_m_ti_mdio_info)); -+ ath79_register_mdio(0, 0x0); -+ -+ -+ ath79_eth0_data.phy_mask = BIT(4); -+ /* read out from vendor */ -+ ath79_eth0_pll_data.pll_1000 = 0x2000000; -+ ath79_eth0_pll_data.pll_10 = 0x1313; -+ ath79_register_eth(0); -+ -+ ath79_register_mdio(1, 0x0); -+ ath79_eth1_data.phy_mask = BIT(3); -+ ath79_register_eth(1); -+} -+ -+ - MIPS_MACHINE(ATH79_MACH_UBNT_NANO_M_XW, "UBNT-NM-XW", "Ubiquiti Nanostation M XW", - ubnt_nano_m_xw_setup); - -@@ -486,6 +578,9 @@ MIPS_MACHINE(ATH79_MACH_UBNT_LOCO_M_XW, - MIPS_MACHINE(ATH79_MACH_UBNT_ROCKET_M_XW, "UBNT-RM-XW", "Ubiquiti Rocket M XW", - ubnt_rocket_m_xw_setup); - -+MIPS_MACHINE(ATH79_MACH_UBNT_ROCKET_M_TI, "UBNT-RM-TI", "Ubiquiti Rocket M TI", -+ ubnt_rocket_m_ti_setup); -+ - static struct gpio_led ubnt_airgateway_gpio_leds[] __initdata = { - { - .name = "ubnt:blue:wlan", ---- a/arch/mips/ath79/machtypes.h -+++ b/arch/mips/ath79/machtypes.h -@@ -178,6 +178,7 @@ enum ath79_mach_type { - ATH79_MACH_UBNT_NANO_M_XW, /* Ubiquiti NanoStation M XW */ - ATH79_MACH_UBNT_ROCKET_M, /* Ubiquiti Rocket M */ - ATH79_MACH_UBNT_ROCKET_M_XW, /* Ubiquiti Rocket M XW*/ -+ ATH79_MACH_UBNT_ROCKET_M_TI, /* Ubiquiti Rocket M TI*/ - ATH79_MACH_UBNT_RSPRO, /* Ubiquiti RouterStation Pro */ - ATH79_MACH_UBNT_RS, /* Ubiquiti RouterStation */ - ATH79_MACH_UBNT_UAP_PRO, /* Ubiquiti UniFi AP Pro */ diff --git a/target/linux/ar71xx/patches-4.1/905-MIPS-ath79-bitmain-antminer-s3-support.patch b/target/linux/ar71xx/patches-4.1/905-MIPS-ath79-bitmain-antminer-s3-support.patch deleted file mode 100644 index 7fd77567e6..0000000000 --- a/target/linux/ar71xx/patches-4.1/905-MIPS-ath79-bitmain-antminer-s3-support.patch +++ /dev/null @@ -1,39 +0,0 @@ ---- a/arch/mips/ath79/machtypes.h -+++ b/arch/mips/ath79/machtypes.h -@@ -22,6 +22,7 @@ enum ath79_mach_type { - ATH79_MACH_ALL0305, /* Allnet ALL0305 */ - ATH79_MACH_ALL0315N, /* Allnet ALL0315N */ - ATH79_MACH_ANTMINER_S1, /* Bitmain Antminer S1 */ -+ ATH79_MACH_ANTMINER_S3, /* Bitmain Antminer S3 */ - ATH79_MACH_AP113, /* Atheros AP113 reference board */ - ATH79_MACH_AP121, /* Atheros AP121 reference board */ - ATH79_MACH_AP121_MINI, /* Atheros AP121-MINI reference board */ ---- a/arch/mips/ath79/Kconfig -+++ b/arch/mips/ath79/Kconfig -@@ -66,6 +66,16 @@ config ATH79_MACH_ANTMINER_S1 - select ATH79_DEV_USB - select ATH79_DEV_WMAC - -+config ATH79_MACH_ANTMINER_S3 -+ bool "Bitmain Antminer S3 support" -+ select SOC_AR933X -+ select ATH79_DEV_ETH -+ select ATH79_DEV_GPIO_BUTTONS -+ select ATH79_DEV_LEDS_GPIO -+ select ATH79_DEV_M25P80 -+ select ATH79_DEV_USB -+ select ATH79_DEV_WMAC -+ - config ATH79_MACH_AP113 - bool "Atheros AP113 board support" - select SOC_AR724X ---- a/arch/mips/ath79/Makefile -+++ b/arch/mips/ath79/Makefile -@@ -43,6 +43,7 @@ obj-$(CONFIG_ATH79_MACH_ALFA_NX) += mach - obj-$(CONFIG_ATH79_MACH_ALL0258N) += mach-all0258n.o - obj-$(CONFIG_ATH79_MACH_ALL0315N) += mach-all0315n.o - obj-$(CONFIG_ATH79_MACH_ANTMINER_S1)+= mach-antminer-s1.o -+obj-$(CONFIG_ATH79_MACH_ANTMINER_S3)+= mach-antminer-s3.o - obj-$(CONFIG_ATH79_MACH_AP113) += mach-ap113.o - obj-$(CONFIG_ATH79_MACH_AP121) += mach-ap121.o - obj-$(CONFIG_ATH79_MACH_AP132) += mach-ap132.o diff --git a/target/linux/ar71xx/patches-4.1/902-unaligned_access_hacks.patch b/target/linux/ar71xx/patches-4.1/910-unaligned_access_hacks.patch index fbbe22e33b..fbbe22e33b 100644 --- a/target/linux/ar71xx/patches-4.1/902-unaligned_access_hacks.patch +++ b/target/linux/ar71xx/patches-4.1/910-unaligned_access_hacks.patch |