Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 42684
CPU_TYPE=34kc
SUBTARGETS:=generic nand mikrotik
CPU_TYPE=34kc
SUBTARGETS:=generic nand mikrotik
include $(INCLUDE_DIR)/target.mk
include $(INCLUDE_DIR)/target.mk
--- a/drivers/mtd/Kconfig
+++ b/drivers/mtd/Kconfig
--- a/drivers/mtd/Kconfig
+++ b/drivers/mtd/Kconfig
-@@ -212,6 +212,12 @@ config MTD_BCM47XX_PARTS
+@@ -189,6 +189,12 @@ config MTD_BCM47XX_PARTS
This provides partitions parser for devices based on BCM47xx
boards.
This provides partitions parser for devices based on BCM47xx
boards.
--- a/drivers/mtd/Kconfig
+++ b/drivers/mtd/Kconfig
--- a/drivers/mtd/Kconfig
+++ b/drivers/mtd/Kconfig
-@@ -214,7 +214,7 @@ config MTD_BCM47XX_PARTS
+@@ -191,7 +191,7 @@ config MTD_BCM47XX_PARTS
config MTD_WRT160NL_PARTS
tristate "Linksys WRT160NL partitioning support"
config MTD_WRT160NL_PARTS
tristate "Linksys WRT160NL partitioning support"
---help---
Linksys WRT160NL partitioning support
---help---
Linksys WRT160NL partitioning support
-@@ -234,6 +234,12 @@ config MTD_MYLOADER_PARTS
+@@ -211,6 +211,12 @@ config MTD_MYLOADER_PARTS
You will still need the parsing functions to be called by the driver
for your particular device. It won't happen automatically.
You will still need the parsing functions to be called by the driver
for your particular device. It won't happen automatically.
config ATH79_MACH_AP121
bool "Atheros AP121 reference board"
select SOC_AR933X
config ATH79_MACH_AP121
bool "Atheros AP121 reference board"
select SOC_AR933X
-@@ -9,64 +64,736 @@ config ATH79_MACH_AP121
- select ATH79_DEV_GPIO_BUTTONS
- select ATH79_DEV_LEDS_GPIO
+@@ -11,62 +66,734 @@ config ATH79_MACH_AP121
-- select ATH79_DEV_USB
-+ select ATH79_DEV_USB
-+ select ATH79_DEV_WMAC
+ select ATH79_DEV_USB
+ select ATH79_DEV_WMAC
+- help
+- Say 'Y' here if you want your kernel to support the
+- Atheros AP121 reference board.
+ help
+ Say 'Y' here if you want your kernel to support the
+ Atheros AP121 reference board.
+ help
+ Say 'Y' here if you want your kernel to support the
+ Atheros AP121 reference board.
+ select ATH79_DEV_GPIO_BUTTONS
+ select ATH79_DEV_LEDS_GPIO
+ select ATH79_DEV_M25P80
+ select ATH79_DEV_GPIO_BUTTONS
+ select ATH79_DEV_LEDS_GPIO
+ select ATH79_DEV_M25P80
- select ATH79_DEV_WMAC
-- help
-- Say 'Y' here if you want your kernel to support the
-- Atheros AP121 reference board.
-
--config ATH79_MACH_AP136
-- bool "Atheros AP136/AP135 reference board"
++ select ATH79_DEV_WMAC
++
+config ATH79_MACH_EAP7660D
+ bool "Senao EAP7660D support"
+ select SOC_AR71XX
+config ATH79_MACH_EAP7660D
+ bool "Senao EAP7660D support"
+ select SOC_AR71XX
+
+config ATH79_MACH_ARCHER_C7
+ bool "TP-LINK Archer C7 board support"
+
+config ATH79_MACH_ARCHER_C7
+ bool "TP-LINK Archer C7 board support"
- select ATH79_DEV_GPIO_BUTTONS
- select ATH79_DEV_LEDS_GPIO
-- select ATH79_DEV_NFC
-- select ATH79_DEV_SPI
++ select ATH79_DEV_GPIO_BUTTONS
++ select ATH79_DEV_LEDS_GPIO
+ select ATH79_DEV_M25P80
+ select ATH79_DEV_M25P80
- select ATH79_DEV_USB
- select ATH79_DEV_WMAC
-- help
-- Say 'Y' here if you want your kernel to support the
-- Atheros AP136 or AP135 reference boards.
-
--config ATH79_MACH_AP81
-- bool "Atheros AP81 reference board"
++ select ATH79_DEV_USB
++ select ATH79_DEV_WMAC
++
+config ATH79_MACH_TL_MR11U
+ bool "TP-LINK TL-MR11U/TL-MR3040 support"
+ select SOC_AR933X
+config ATH79_MACH_TL_MR11U
+ bool "TP-LINK TL-MR11U/TL-MR3040 support"
+ select SOC_AR933X
+ select ATH79_DEV_M25P80
+ select ATH79_DEV_USB
+ select ATH79_DEV_WMAC
+ select ATH79_DEV_M25P80
+ select ATH79_DEV_USB
+ select ATH79_DEV_WMAC
+
+-config ATH79_MACH_AP136
+- bool "Atheros AP136/AP135 reference board"
+- select SOC_QCA955X
+config ATH79_MACH_TL_MR13U
+ bool "TP-LINK TL-MR13U support"
+ select SOC_AR933X
+ select ATH79_DEV_ETH
+config ATH79_MACH_TL_MR13U
+ bool "TP-LINK TL-MR13U support"
+ select SOC_AR933X
+ select ATH79_DEV_ETH
-+ select ATH79_DEV_GPIO_BUTTONS
-+ select ATH79_DEV_LEDS_GPIO
+ select ATH79_DEV_GPIO_BUTTONS
+ select ATH79_DEV_LEDS_GPIO
+- select ATH79_DEV_NFC
+- select ATH79_DEV_SPI
+ select ATH79_DEV_M25P80
+ select ATH79_DEV_M25P80
-+ select ATH79_DEV_USB
-+ select ATH79_DEV_WMAC
-+
+ select ATH79_DEV_USB
+ select ATH79_DEV_WMAC
+- help
+- Say 'Y' here if you want your kernel to support the
+- Atheros AP136 or AP135 reference boards.
+
+-config ATH79_MACH_AP81
+- bool "Atheros AP81 reference board"
+config ATH79_MACH_TL_MR3020
+ bool "TP-LINK TL-MR3020 support"
+ select SOC_AR933X
+config ATH79_MACH_TL_MR3020
+ bool "TP-LINK TL-MR3020 support"
+ select SOC_AR933X
+ bool "TP-LINK TL-WR841N v1 support"
select SOC_AR71XX
+ select ATH79_DEV_DSA
+ bool "TP-LINK TL-WR841N v1 support"
select SOC_AR71XX
+ select ATH79_DEV_DSA
-+ select ATH79_DEV_ETH
-+ select ATH79_DEV_GPIO_BUTTONS
-+ select ATH79_DEV_LEDS_GPIO
+ select ATH79_DEV_ETH
+ select ATH79_DEV_GPIO_BUTTONS
+ select ATH79_DEV_LEDS_GPIO
+- select ATH79_DEV_SPI
+ select ATH79_DEV_M25P80
+
+config ATH79_MACH_TL_WR841N_V8
+ select ATH79_DEV_M25P80
+
+config ATH79_MACH_TL_WR841N_V8
+config ATH79_MACH_TL_WR1043ND_V2
+ bool "TP-LINK TL-WR1043ND v2 support"
+ select SOC_QCA955X
+config ATH79_MACH_TL_WR1043ND_V2
+ bool "TP-LINK TL-WR1043ND v2 support"
+ select SOC_QCA955X
- select ATH79_DEV_ETH
- select ATH79_DEV_GPIO_BUTTONS
- select ATH79_DEV_LEDS_GPIO
-- select ATH79_DEV_SPI
++ select ATH79_DEV_ETH
++ select ATH79_DEV_GPIO_BUTTONS
++ select ATH79_DEV_LEDS_GPIO
+ select ATH79_DEV_M25P80
+ select ATH79_DEV_M25P80
- select ATH79_DEV_USB
-- help
-- Say 'Y' here if you want your kernel to support the
-- Atheros PB44 reference board.
+ select ATH79_DEV_WMAC
+
+config ATH79_MACH_TL_WR2543N
+ select ATH79_DEV_WMAC
+
+config ATH79_MACH_TL_WR2543N
+ select ATH79_DEV_GPIO_BUTTONS
+ select ATH79_DEV_LEDS_GPIO
+ select ATH79_DEV_M25P80
+ select ATH79_DEV_GPIO_BUTTONS
+ select ATH79_DEV_LEDS_GPIO
+ select ATH79_DEV_M25P80
+ select ATH79_DEV_USB
+- help
+- Say 'Y' here if you want your kernel to support the
+- Atheros PB44 reference board.
config ATH79_MACH_UBNT_XM
bool "Ubiquiti Networks XM/UniFi boards"
config ATH79_MACH_UBNT_XM
bool "Ubiquiti Networks XM/UniFi boards"
--- a/arch/mips/ath79/Kconfig
+++ b/arch/mips/ath79/Kconfig
--- a/arch/mips/ath79/Kconfig
+++ b/arch/mips/ath79/Kconfig
+@@ -1034,6 +1034,17 @@ config ATH79_MACH_BHU_BXU2000N2_A
select ATH79_DEV_USB
select ATH79_DEV_WMAC
select ATH79_DEV_USB
select ATH79_DEV_WMAC
config SOC_AR71XX
--- a/arch/mips/ath79/machtypes.h
+++ b/arch/mips/ath79/machtypes.h
config SOC_AR71XX
--- a/arch/mips/ath79/machtypes.h
+++ b/arch/mips/ath79/machtypes.h
+@@ -80,6 +80,7 @@ enum ath79_mach_type {
ATH79_MACH_OM5P, /* OpenMesh OM5P */
ATH79_MACH_PB42, /* Atheros PB42 */
ATH79_MACH_PB92, /* Atheros PB92 */
ATH79_MACH_OM5P, /* OpenMesh OM5P */
ATH79_MACH_PB42, /* Atheros PB42 */
ATH79_MACH_PB92, /* Atheros PB92 */
ATH79_MACH_RB_433, /* MikroTik RouterBOARD 433/433AH */
--- a/arch/mips/ath79/Makefile
+++ b/arch/mips/ath79/Makefile
ATH79_MACH_RB_433, /* MikroTik RouterBOARD 433/433AH */
--- a/arch/mips/ath79/Makefile
+++ b/arch/mips/ath79/Makefile
+@@ -85,6 +85,7 @@ obj-$(CONFIG_ATH79_MACH_OM5P) += mach-o
obj-$(CONFIG_ATH79_MACH_PB42) += mach-pb42.o
obj-$(CONFIG_ATH79_MACH_PB44) += mach-pb44.o
obj-$(CONFIG_ATH79_MACH_PB92) += mach-pb92.o
obj-$(CONFIG_ATH79_MACH_PB42) += mach-pb42.o
obj-$(CONFIG_ATH79_MACH_PB44) += mach-pb44.o
obj-$(CONFIG_ATH79_MACH_PB92) += mach-pb92.o
for (p = *head; p; p = p->next) {
--- a/net/ipv4/route.c
+++ b/net/ipv4/route.c
for (p = *head; p; p = p->next) {
--- a/net/ipv4/route.c
+++ b/net/ipv4/route.c
-@@ -459,7 +459,7 @@ static struct neighbour *ipv4_neigh_look
+@@ -460,7 +460,7 @@ static struct neighbour *ipv4_neigh_look
else if (skb)
pkey = &ip_hdr(skb)->daddr;
else if (skb)
pkey = &ip_hdr(skb)->daddr;
if (xb)
return i * 32 + 31 - __fls(ntohl(xb));
}
if (xb)
return i * 32 + 31 - __fls(ntohl(xb));
}
-@@ -670,12 +674,13 @@ int ip6_dst_hoplimit(struct dst_entry *d
+@@ -668,12 +672,13 @@ int ip6_dst_hoplimit(struct dst_entry *d
static inline void ip6_flow_hdr(struct ipv6hdr *hdr, unsigned int tclass,
__be32 flowlabel)
{
static inline void ip6_flow_hdr(struct ipv6hdr *hdr, unsigned int tclass,
__be32 flowlabel)
{
#include <linux/types.h>
+#include <linux/in6.h>
#include <linux/types.h>
+#include <linux/in6.h>
- __u32 secure_ip_id(__be32 daddr);
- __u32 secure_ipv6_id(const __be32 daddr[4]);
+ u32 secure_ipv4_port_ephemeral(__be32 saddr, __be32 daddr, __be16 dport);
+ u32 secure_ipv6_port_ephemeral(const __be32 *saddr, const __be32 *daddr,
--- a/include/uapi/linux/in.h
+++ b/include/uapi/linux/in.h
@@ -78,7 +78,7 @@ enum {
--- a/include/uapi/linux/in.h
+++ b/include/uapi/linux/in.h
@@ -78,7 +78,7 @@ enum {
secret[4] = net_secret[4] + (__force u32)dport;
for (i = 5; i < MD5_MESSAGE_BYTES / 4; i++)
secret[i] = net_secret[i];
secret[4] = net_secret[4] + (__force u32)dport;
for (i = 5; i < MD5_MESSAGE_BYTES / 4; i++)
secret[i] = net_secret[i];
-@@ -175,11 +177,12 @@ u64 secure_dccpv6_sequence_number(__be32
+@@ -150,11 +152,12 @@ u64 secure_dccpv6_sequence_number(__be32
u32 hash[MD5_DIGEST_WORDS];
u64 seq;
u32 i;
u32 hash[MD5_DIGEST_WORDS];
u64 seq;
u32 i;