diff mbox series

[OpenWrt-Devel,RFT] arc770: bump kernel to 5.4

Message ID 20200413103352.7429-1-freifunk@adrianschmutzler.de
State Deferred
Delegated to: Adrian Schmutzler
Headers show
Series [OpenWrt-Devel,RFT] arc770: bump kernel to 5.4 | expand

Commit Message

Adrian Schmutzler April 13, 2020, 10:33 a.m. UTC
Update config with make kernel_oldconfig and copy patch.

Directly switch to kernel 5.4.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>

---

I just stupidly copied/refreshed the patch and the config.

Build-tested, run-test required as I have no hardware.

---
 target/linux/arc770/Makefile                  |   2 +-
 target/linux/arc770/config-5.4                | 198 ++++++++++++++++++
 ...c-Disable-frame-filtering-completely.patch |  31 +++
 3 files changed, 230 insertions(+), 1 deletion(-)
 create mode 100644 target/linux/arc770/config-5.4
 create mode 100644 target/linux/arc770/patches-5.4/700-stmmac-Disable-frame-filtering-completely.patch

Comments

Hauke Mehrtens May 25, 2020, 1:56 p.m. UTC | #1
On 4/13/20 12:33 PM, Adrian Schmutzler wrote:
> Update config with make kernel_oldconfig and copy patch.
> 
> Directly switch to kernel 5.4.
> 
> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
> 
> ---
> 
> I just stupidly copied/refreshed the patch and the config.
> 
> Build-tested, run-test required as I have no hardware.

Hi Evgeniy and Alexey,

Could you please test, if this patch works?

We would like to get all targets to kernel 5.4 for the next release and
this is one of the targets still at an older kernel. Adrian and I do not
have any hardware to test this.

You can find this patch also on patchwork:
https://patchwork.ozlabs.org/project/openwrt/patch/20200413103352.7429-1-freifunk@adrianschmutzler.de/

Hauke

> 
> ---
>  target/linux/arc770/Makefile                  |   2 +-
>  target/linux/arc770/config-5.4                | 198 ++++++++++++++++++
>  ...c-Disable-frame-filtering-completely.patch |  31 +++
>  3 files changed, 230 insertions(+), 1 deletion(-)
>  create mode 100644 target/linux/arc770/config-5.4
>  create mode 100644 target/linux/arc770/patches-5.4/700-stmmac-Disable-frame-filtering-completely.patch
> 
> diff --git a/target/linux/arc770/Makefile b/target/linux/arc770/Makefile
> index 8150f147c5..a182ef16a5 100644
> --- a/target/linux/arc770/Makefile
> +++ b/target/linux/arc770/Makefile
> @@ -11,7 +11,7 @@ BOARD:=arc770
>  BOARDNAME:=Synopsys DesignWare ARC 770D
>  SUBTARGETS:=generic
>  
> -KERNEL_PATCHVER:=4.14
> +KERNEL_PATCHVER:=5.4
>  
>  DEVICE_TYPE:=developerboard
>  
> diff --git a/target/linux/arc770/config-5.4 b/target/linux/arc770/config-5.4
> new file mode 100644
> index 0000000000..ce712b4c34
> --- /dev/null
> +++ b/target/linux/arc770/config-5.4
> @@ -0,0 +1,198 @@
> +# CONFIG_16KSTACKS is not set
> +CONFIG_ARC=y
> +CONFIG_ARCH_32BIT_OFF_T=y
> +CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
> +CONFIG_ARCH_HAS_DMA_COHERENT_TO_PFN=y
> +CONFIG_ARCH_HAS_DMA_PREP_COHERENT=y
> +CONFIG_ARCH_HAS_PTE_SPECIAL=y
> +CONFIG_ARCH_HAS_SETUP_DMA_OPS=y
> +CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU=y
> +CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE=y
> +CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
> +CONFIG_ARC_BUILTIN_DTB_NAME=""
> +CONFIG_ARC_CACHE=y
> +CONFIG_ARC_CACHE_LINE_SHIFT=5
> +CONFIG_ARC_CACHE_PAGES=y
> +# CONFIG_ARC_CACHE_VIPT_ALIASING is not set
> +# CONFIG_ARC_COMPACT_IRQ_LEVELS is not set
> +# CONFIG_ARC_CPU_750D is not set
> +CONFIG_ARC_CPU_770=y
> +CONFIG_ARC_CURR_IN_REG=y
> +CONFIG_ARC_DBG=y
> +# CONFIG_ARC_DBG_TLB_PARANOIA is not set
> +CONFIG_ARC_DW2_UNWIND=y
> +CONFIG_ARC_EMUL_UNALIGNED=y
> +# CONFIG_ARC_FPU_SAVE_RESTORE is not set
> +CONFIG_ARC_HAS_DCACHE=y
> +# CONFIG_ARC_HAS_DCCM is not set
> +CONFIG_ARC_HAS_ICACHE=y
> +# CONFIG_ARC_HAS_ICCM is not set
> +CONFIG_ARC_HAS_LLSC=y
> +CONFIG_ARC_HAS_SWAPE=y
> +CONFIG_ARC_KVADDR_SIZE=256
> +# CONFIG_ARC_METAWARE_HLINK is not set
> +# CONFIG_ARC_MMU_V1 is not set
> +# CONFIG_ARC_MMU_V2 is not set
> +CONFIG_ARC_MMU_V3=y
> +# CONFIG_ARC_PAGE_SIZE_16K is not set
> +# CONFIG_ARC_PAGE_SIZE_4K is not set
> +CONFIG_ARC_PAGE_SIZE_8K=y
> +CONFIG_ARC_PLAT_AXS10X=y
> +# CONFIG_ARC_PLAT_EZNPS is not set
> +# CONFIG_ARC_PLAT_TB10X is not set
> +CONFIG_ARC_TIMERS=y
> +CONFIG_AXS101=y
> +CONFIG_CC_HAS_KASAN_GENERIC=y
> +# CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE_O3 is not set
> +CONFIG_CLKDEV_LOOKUP=y
> +CONFIG_CLONE_BACKWARDS=y
> +CONFIG_COMMON_CLK=y
> +CONFIG_COMPAT_32BIT_TIME=y
> +CONFIG_CPU_NO_EFFICIENT_FFS=y
> +CONFIG_CRC16=y
> +CONFIG_CRYPTO_CRC32C=y
> +CONFIG_CRYPTO_HASH=y
> +CONFIG_CRYPTO_HASH2=y
> +CONFIG_CRYPTO_RNG2=y
> +CONFIG_DMA_DIRECT_REMAP=y
> +CONFIG_DMA_REMAP=y
> +CONFIG_DTC=y
> +CONFIG_DWMAC_ANARION=y
> +CONFIG_DWMAC_GENERIC=y
> +CONFIG_DW_APB_ICTL=y
> +CONFIG_EXT4_FS=y
> +# CONFIG_EZNPS_GIC is not set
> +CONFIG_FIXED_PHY=y
> +CONFIG_FS_IOMAP=y
> +CONFIG_FS_MBCACHE=y
> +CONFIG_FW_LOADER_PAGED_BUF=y
> +CONFIG_GENERIC_ALLOCATOR=y
> +CONFIG_GENERIC_ATOMIC64=y
> +CONFIG_GENERIC_CLOCKEVENTS=y
> +CONFIG_GENERIC_CSUM=y
> +CONFIG_GENERIC_FIND_FIRST_BIT=y
> +CONFIG_GENERIC_IRQ_CHIP=y
> +CONFIG_GENERIC_IRQ_SHOW=y
> +CONFIG_GENERIC_PCI_IOMAP=y
> +CONFIG_GENERIC_SCHED_CLOCK=y
> +CONFIG_GENERIC_SMP_IDLE_THREAD=y
> +CONFIG_GPIOLIB=y
> +CONFIG_GPIO_DWAPB=y
> +CONFIG_GPIO_GENERIC=y
> +# CONFIG_GPIO_SNPS_CREG is not set
> +CONFIG_HANDLE_DOMAIN_IRQ=y
> +CONFIG_HAS_DMA=y
> +CONFIG_HAS_IOMEM=y
> +CONFIG_HAVE_ARCH_KGDB=y
> +CONFIG_HAVE_ARCH_TRACEHOOK=y
> +CONFIG_HAVE_CLK=y
> +CONFIG_HAVE_CLK_PREPARE=y
> +CONFIG_HAVE_DEBUG_STACKOVERFLOW=y
> +CONFIG_HAVE_FUTEX_CMPXCHG=y
> +CONFIG_HAVE_IOREMAP_PROT=y
> +CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
> +CONFIG_HAVE_NET_DSA=y
> +CONFIG_HAVE_OPROFILE=y
> +CONFIG_HAVE_PCI=y
> +CONFIG_HAVE_PERF_EVENTS=y
> +CONFIG_HZ=100
> +CONFIG_HZ_PERIODIC=y
> +CONFIG_INITRAMFS_SOURCE=""
> +CONFIG_IRQCHIP=y
> +CONFIG_IRQ_DOMAIN=y
> +CONFIG_IRQ_WORK=y
> +CONFIG_ISA_ARCOMPACT=y
> +# CONFIG_ISA_ARCV2 is not set
> +CONFIG_JBD2=y
> +CONFIG_KALLSYMS=y
> +CONFIG_KERNEL_GZIP=y
> +CONFIG_LIBFDT=y
> +CONFIG_LINUX_LINK_BASE=0x80000000
> +CONFIG_LINUX_RAM_BASE=0x80000000
> +CONFIG_LOCK_DEBUGGING_SUPPORT=y
> +CONFIG_MDIO_BUS=y
> +CONFIG_MDIO_DEVICE=y
> +CONFIG_MEMFD_CREATE=y
> +CONFIG_MFD_SYSCON=y
> +CONFIG_MIGRATION=y
> +CONFIG_MMC=y
> +CONFIG_MMC_BLOCK=y
> +CONFIG_MMC_DW=y
> +# CONFIG_MMC_DW_BLUEFIELD is not set
> +# CONFIG_MMC_DW_EXYNOS is not set
> +# CONFIG_MMC_DW_HI3798CV200 is not set
> +# CONFIG_MMC_DW_K3 is not set
> +CONFIG_MMC_DW_PLTFM=y
> +CONFIG_MMC_SDHCI=y
> +CONFIG_MMC_SDHCI_PLTFM=y
> +CONFIG_MODULES_USE_ELF_RELA=y
> +CONFIG_NATIONAL_PHY=y
> +CONFIG_NEED_DMA_MAP_STATE=y
> +CONFIG_NEED_PER_CPU_KM=y
> +CONFIG_NET_PTP_CLASSIFY=y
> +# CONFIG_NET_VENDOR_ARC is not set
> +# CONFIG_NET_VENDOR_BROADCOM is not set
> +# CONFIG_NET_VENDOR_INTEL is not set
> +# CONFIG_NET_VENDOR_MARVELL is not set
> +# CONFIG_NET_VENDOR_MICREL is not set
> +# CONFIG_NET_VENDOR_NATSEMI is not set
> +# CONFIG_NET_VENDOR_QUALCOMM is not set
> +# CONFIG_NET_VENDOR_ROCKER is not set
> +# CONFIG_NET_VENDOR_SAMSUNG is not set
> +# CONFIG_NET_VENDOR_SEEQ is not set
> +# CONFIG_NET_VENDOR_VIA is not set
> +# CONFIG_NET_VENDOR_WIZNET is not set
> +CONFIG_NO_IOPORT_MAP=y
> +CONFIG_OF=y
> +CONFIG_OF_ADDRESS=y
> +CONFIG_OF_EARLY_FLATTREE=y
> +CONFIG_OF_FLATTREE=y
> +CONFIG_OF_GPIO=y
> +CONFIG_OF_IRQ=y
> +CONFIG_OF_KOBJ=y
> +CONFIG_OF_MDIO=y
> +CONFIG_OF_NET=y
> +CONFIG_PAGE_POOL=y
> +CONFIG_PGTABLE_LEVELS=2
> +CONFIG_PHYLIB=y
> +CONFIG_PHYLINK=y
> +CONFIG_PPS=y
> +CONFIG_PREEMPT=y
> +CONFIG_PREEMPTION=y
> +CONFIG_PREEMPT_COUNT=y
> +# CONFIG_PREEMPT_NONE is not set
> +CONFIG_PREEMPT_RCU=y
> +CONFIG_PTP_1588_CLOCK=y
> +CONFIG_RATIONAL=y
> +CONFIG_RCU_NEED_SEGCBLIST=y
> +CONFIG_RCU_STALL_COMMON=y
> +CONFIG_REGMAP=y
> +CONFIG_REGMAP_MMIO=y
> +CONFIG_RESET_AXS10X=y
> +CONFIG_RESET_CONTROLLER=y
> +CONFIG_RESET_SIMPLE=y
> +CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y
> +CONFIG_SERIAL_8250_DW=y
> +CONFIG_SERIAL_8250_DWLIB=y
> +CONFIG_SERIAL_8250_NR_UARTS=4
> +CONFIG_SERIAL_8250_RUNTIME_UARTS=4
> +CONFIG_SERIAL_ARC=y
> +CONFIG_SERIAL_ARC_CONSOLE=y
> +CONFIG_SERIAL_ARC_NR_PORTS=1
> +CONFIG_SERIAL_MCTRL_GPIO=y
> +CONFIG_SERIAL_OF_PLATFORM=y
> +CONFIG_SRCU=y
> +CONFIG_STACKTRACE=y
> +CONFIG_STMMAC_ETH=y
> +CONFIG_STMMAC_PLATFORM=y
> +# CONFIG_STMMAC_SELFTESTS is not set
> +CONFIG_SWPHY=y
> +CONFIG_SYSCTL_ARCH_UNALIGN_ALLOW=y
> +CONFIG_SYSCTL_ARCH_UNALIGN_NO_WARN=y
> +CONFIG_TASKS_RCU=y
> +CONFIG_TICK_CPU_ACCOUNTING=y
> +CONFIG_TIMER_OF=y
> +CONFIG_TIMER_PROBE=y
> +CONFIG_TREE_SRCU=y
> +CONFIG_UNINLINE_SPIN_UNLOCK=y
> +CONFIG_USB_SUPPORT=y
> diff --git a/target/linux/arc770/patches-5.4/700-stmmac-Disable-frame-filtering-completely.patch b/target/linux/arc770/patches-5.4/700-stmmac-Disable-frame-filtering-completely.patch
> new file mode 100644
> index 0000000000..9adfcb1be2
> --- /dev/null
> +++ b/target/linux/arc770/patches-5.4/700-stmmac-Disable-frame-filtering-completely.patch
> @@ -0,0 +1,31 @@
> +From 0031b9011cb2b2b1de4dbb4f9620303aec760db4 Mon Sep 17 00:00:00 2001
> +From: Alexey Brodkin <abrodkin@synopsys.com>
> +Date: Wed, 27 Jul 2016 11:33:14 +0300
> +Subject: [PATCH] stmmac: Disable frame filtering completely
> +
> +For some [still unknown] reason in ARC SDP boards
> +DW GMAC doesn't enter promiscuous mode if eth0 gets
> +added to the br-lan interface before Ethernet PHY finishes
> +autonegotiation (PHY gets reset on DW GMAC start).
> +
> +As a work-around we completely disable frame filtering
> +in GMAC hardware which gives us working bridge that consists
> +of eth0 and wlan0 (USB Wi-Fi dongle). I.e. we finally have
> +working "Dumb AP" setup made of ARC AXS10x boards.
> +
> +Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
> +---
> + drivers/net/ethernet/stmicro/stmmac/common.h | 2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +--- a/drivers/net/ethernet/stmicro/stmmac/common.h
> ++++ b/drivers/net/ethernet/stmicro/stmmac/common.h
> +@@ -42,7 +42,7 @@
> + #define STMMAC_GET_ENTRY(x, size)	((x + 1) & (size - 1))
> + 
> + #undef FRAME_FILTER_DEBUG
> +-/* #define FRAME_FILTER_DEBUG */
> ++#define FRAME_FILTER_DEBUG
> + 
> + /* Extra statistic and debug information exposed by ethtool */
> + struct stmmac_extra_stats {
>
Adrian Schmutzler July 22, 2020, 4:36 p.m. UTC | #2
Hi Hauke,

> -----Original Message-----
> From: openwrt-devel [mailto:openwrt-devel-bounces@lists.openwrt.org]
> On Behalf Of Hauke Mehrtens
> Sent: Montag, 25. Mai 2020 15:56
> To: Evgeniy Didin <evgeniy.didin@synopsys.com>; Alexey Brodkin
> <alexey.brodkin@synopsys.com>
> Cc: Adrian Schmutzler <freifunk@adrianschmutzler.de>; openwrt-
> devel@lists.openwrt.org
> Subject: Re: [OpenWrt-Devel] [RFT PATCH] arc770: bump kernel to 5.4
> 
> On 4/13/20 12:33 PM, Adrian Schmutzler wrote:
> > Update config with make kernel_oldconfig and copy patch.
> >
> > Directly switch to kernel 5.4.
> >
> > Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
> >
> > ---
> >
> > I just stupidly copied/refreshed the patch and the config.
> >
> > Build-tested, run-test required as I have no hardware.
> 
> Hi Evgeniy and Alexey,
> 
> Could you please test, if this patch works?
> 
> We would like to get all targets to kernel 5.4 for the next release and this is
> one of the targets still at an older kernel. Adrian and I do not have any
> hardware to test this.

just looked at this one again. This target appears to be upstream with almost no local adjustments.

I wonder whether I should just push the kernel bump to master if it builds fine, without a device test. (would do a new refresh and build-test beforehand, of course). Nobody seems to care anyway.

Do you have an opinion here?

Best

Adrian


> 
> You can find this patch also on patchwork:
> https://patchwork.ozlabs.org/project/openwrt/patch/20200413103352.7429-
> 1-freifunk@adrianschmutzler.de/
> 
> Hauke
> 
> >
> > ---
> >  target/linux/arc770/Makefile                  |   2 +-
> >  target/linux/arc770/config-5.4                | 198 ++++++++++++++++++
> >  ...c-Disable-frame-filtering-completely.patch |  31 +++
> >  3 files changed, 230 insertions(+), 1 deletion(-)  create mode 100644
> > target/linux/arc770/config-5.4  create mode 100644
> > target/linux/arc770/patches-5.4/700-stmmac-Disable-frame-filtering-com
> > pletely.patch
> >
> > diff --git a/target/linux/arc770/Makefile
> > b/target/linux/arc770/Makefile index 8150f147c5..a182ef16a5 100644
> > --- a/target/linux/arc770/Makefile
> > +++ b/target/linux/arc770/Makefile
> > @@ -11,7 +11,7 @@ BOARD:=arc770
> >  BOARDNAME:=Synopsys DesignWare ARC 770D  SUBTARGETS:=generic
> >
> > -KERNEL_PATCHVER:=4.14
> > +KERNEL_PATCHVER:=5.4
> >
> >  DEVICE_TYPE:=developerboard
> >
> > diff --git a/target/linux/arc770/config-5.4
> > b/target/linux/arc770/config-5.4 new file mode 100644 index
> > 0000000000..ce712b4c34
> > --- /dev/null
> > +++ b/target/linux/arc770/config-5.4
> > @@ -0,0 +1,198 @@
> > +# CONFIG_16KSTACKS is not set
> > +CONFIG_ARC=y
> > +CONFIG_ARCH_32BIT_OFF_T=y
> > +CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
> > +CONFIG_ARCH_HAS_DMA_COHERENT_TO_PFN=y
> > +CONFIG_ARCH_HAS_DMA_PREP_COHERENT=y
> > +CONFIG_ARCH_HAS_PTE_SPECIAL=y
> > +CONFIG_ARCH_HAS_SETUP_DMA_OPS=y
> > +CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU=y
> > +CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE=y
> > +CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
> > +CONFIG_ARC_BUILTIN_DTB_NAME=""
> > +CONFIG_ARC_CACHE=y
> > +CONFIG_ARC_CACHE_LINE_SHIFT=5
> > +CONFIG_ARC_CACHE_PAGES=y
> > +# CONFIG_ARC_CACHE_VIPT_ALIASING is not set #
> > +CONFIG_ARC_COMPACT_IRQ_LEVELS is not set #
> CONFIG_ARC_CPU_750D is not
> > +set CONFIG_ARC_CPU_770=y CONFIG_ARC_CURR_IN_REG=y
> CONFIG_ARC_DBG=y #
> > +CONFIG_ARC_DBG_TLB_PARANOIA is not set
> CONFIG_ARC_DW2_UNWIND=y
> > +CONFIG_ARC_EMUL_UNALIGNED=y #
> CONFIG_ARC_FPU_SAVE_RESTORE is not set
> > +CONFIG_ARC_HAS_DCACHE=y # CONFIG_ARC_HAS_DCCM is not set
> > +CONFIG_ARC_HAS_ICACHE=y # CONFIG_ARC_HAS_ICCM is not set
> > +CONFIG_ARC_HAS_LLSC=y CONFIG_ARC_HAS_SWAPE=y
> > +CONFIG_ARC_KVADDR_SIZE=256
> > +# CONFIG_ARC_METAWARE_HLINK is not set # CONFIG_ARC_MMU_V1
> is not set
> > +# CONFIG_ARC_MMU_V2 is not set CONFIG_ARC_MMU_V3=y #
> > +CONFIG_ARC_PAGE_SIZE_16K is not set # CONFIG_ARC_PAGE_SIZE_4K is
> not
> > +set CONFIG_ARC_PAGE_SIZE_8K=y CONFIG_ARC_PLAT_AXS10X=y #
> > +CONFIG_ARC_PLAT_EZNPS is not set # CONFIG_ARC_PLAT_TB10X is not
> set
> > +CONFIG_ARC_TIMERS=y CONFIG_AXS101=y
> CONFIG_CC_HAS_KASAN_GENERIC=y #
> > +CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE_O3 is not set
> > +CONFIG_CLKDEV_LOOKUP=y CONFIG_CLONE_BACKWARDS=y
> CONFIG_COMMON_CLK=y
> > +CONFIG_COMPAT_32BIT_TIME=y CONFIG_CPU_NO_EFFICIENT_FFS=y
> > +CONFIG_CRC16=y CONFIG_CRYPTO_CRC32C=y
> CONFIG_CRYPTO_HASH=y
> > +CONFIG_CRYPTO_HASH2=y CONFIG_CRYPTO_RNG2=y
> CONFIG_DMA_DIRECT_REMAP=y
> > +CONFIG_DMA_REMAP=y CONFIG_DTC=y CONFIG_DWMAC_ANARION=y
> > +CONFIG_DWMAC_GENERIC=y CONFIG_DW_APB_ICTL=y
> CONFIG_EXT4_FS=y #
> > +CONFIG_EZNPS_GIC is not set CONFIG_FIXED_PHY=y
> CONFIG_FS_IOMAP=y
> > +CONFIG_FS_MBCACHE=y CONFIG_FW_LOADER_PAGED_BUF=y
> > +CONFIG_GENERIC_ALLOCATOR=y CONFIG_GENERIC_ATOMIC64=y
> > +CONFIG_GENERIC_CLOCKEVENTS=y CONFIG_GENERIC_CSUM=y
> > +CONFIG_GENERIC_FIND_FIRST_BIT=y CONFIG_GENERIC_IRQ_CHIP=y
> > +CONFIG_GENERIC_IRQ_SHOW=y CONFIG_GENERIC_PCI_IOMAP=y
> > +CONFIG_GENERIC_SCHED_CLOCK=y
> CONFIG_GENERIC_SMP_IDLE_THREAD=y
> > +CONFIG_GPIOLIB=y CONFIG_GPIO_DWAPB=y
> CONFIG_GPIO_GENERIC=y #
> > +CONFIG_GPIO_SNPS_CREG is not set CONFIG_HANDLE_DOMAIN_IRQ=y
> > +CONFIG_HAS_DMA=y CONFIG_HAS_IOMEM=y
> CONFIG_HAVE_ARCH_KGDB=y
> > +CONFIG_HAVE_ARCH_TRACEHOOK=y CONFIG_HAVE_CLK=y
> > +CONFIG_HAVE_CLK_PREPARE=y
> CONFIG_HAVE_DEBUG_STACKOVERFLOW=y
> > +CONFIG_HAVE_FUTEX_CMPXCHG=y CONFIG_HAVE_IOREMAP_PROT=y
> > +CONFIG_HAVE_MOD_ARCH_SPECIFIC=y CONFIG_HAVE_NET_DSA=y
> > +CONFIG_HAVE_OPROFILE=y CONFIG_HAVE_PCI=y
> CONFIG_HAVE_PERF_EVENTS=y
> > +CONFIG_HZ=100
> > +CONFIG_HZ_PERIODIC=y
> > +CONFIG_INITRAMFS_SOURCE=""
> > +CONFIG_IRQCHIP=y
> > +CONFIG_IRQ_DOMAIN=y
> > +CONFIG_IRQ_WORK=y
> > +CONFIG_ISA_ARCOMPACT=y
> > +# CONFIG_ISA_ARCV2 is not set
> > +CONFIG_JBD2=y
> > +CONFIG_KALLSYMS=y
> > +CONFIG_KERNEL_GZIP=y
> > +CONFIG_LIBFDT=y
> > +CONFIG_LINUX_LINK_BASE=0x80000000
> > +CONFIG_LINUX_RAM_BASE=0x80000000
> > +CONFIG_LOCK_DEBUGGING_SUPPORT=y
> > +CONFIG_MDIO_BUS=y
> > +CONFIG_MDIO_DEVICE=y
> > +CONFIG_MEMFD_CREATE=y
> > +CONFIG_MFD_SYSCON=y
> > +CONFIG_MIGRATION=y
> > +CONFIG_MMC=y
> > +CONFIG_MMC_BLOCK=y
> > +CONFIG_MMC_DW=y
> > +# CONFIG_MMC_DW_BLUEFIELD is not set
> > +# CONFIG_MMC_DW_EXYNOS is not set
> > +# CONFIG_MMC_DW_HI3798CV200 is not set # CONFIG_MMC_DW_K3 is
> not set
> > +CONFIG_MMC_DW_PLTFM=y CONFIG_MMC_SDHCI=y
> CONFIG_MMC_SDHCI_PLTFM=y
> > +CONFIG_MODULES_USE_ELF_RELA=y CONFIG_NATIONAL_PHY=y
> > +CONFIG_NEED_DMA_MAP_STATE=y CONFIG_NEED_PER_CPU_KM=y
> > +CONFIG_NET_PTP_CLASSIFY=y # CONFIG_NET_VENDOR_ARC is not set #
> > +CONFIG_NET_VENDOR_BROADCOM is not set #
> CONFIG_NET_VENDOR_INTEL is
> > +not set # CONFIG_NET_VENDOR_MARVELL is not set #
> > +CONFIG_NET_VENDOR_MICREL is not set #
> CONFIG_NET_VENDOR_NATSEMI is
> > +not set # CONFIG_NET_VENDOR_QUALCOMM is not set #
> > +CONFIG_NET_VENDOR_ROCKER is not set #
> CONFIG_NET_VENDOR_SAMSUNG is
> > +not set # CONFIG_NET_VENDOR_SEEQ is not set #
> CONFIG_NET_VENDOR_VIA
> > +is not set # CONFIG_NET_VENDOR_WIZNET is not set
> > +CONFIG_NO_IOPORT_MAP=y CONFIG_OF=y CONFIG_OF_ADDRESS=y
> > +CONFIG_OF_EARLY_FLATTREE=y CONFIG_OF_FLATTREE=y
> CONFIG_OF_GPIO=y
> > +CONFIG_OF_IRQ=y CONFIG_OF_KOBJ=y CONFIG_OF_MDIO=y
> CONFIG_OF_NET=y
> > +CONFIG_PAGE_POOL=y
> > +CONFIG_PGTABLE_LEVELS=2
> > +CONFIG_PHYLIB=y
> > +CONFIG_PHYLINK=y
> > +CONFIG_PPS=y
> > +CONFIG_PREEMPT=y
> > +CONFIG_PREEMPTION=y
> > +CONFIG_PREEMPT_COUNT=y
> > +# CONFIG_PREEMPT_NONE is not set
> > +CONFIG_PREEMPT_RCU=y
> > +CONFIG_PTP_1588_CLOCK=y
> > +CONFIG_RATIONAL=y
> > +CONFIG_RCU_NEED_SEGCBLIST=y
> > +CONFIG_RCU_STALL_COMMON=y
> > +CONFIG_REGMAP=y
> > +CONFIG_REGMAP_MMIO=y
> > +CONFIG_RESET_AXS10X=y
> > +CONFIG_RESET_CONTROLLER=y
> > +CONFIG_RESET_SIMPLE=y
> > +CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y
> > +CONFIG_SERIAL_8250_DW=y
> > +CONFIG_SERIAL_8250_DWLIB=y
> > +CONFIG_SERIAL_8250_NR_UARTS=4
> > +CONFIG_SERIAL_8250_RUNTIME_UARTS=4
> > +CONFIG_SERIAL_ARC=y
> > +CONFIG_SERIAL_ARC_CONSOLE=y
> > +CONFIG_SERIAL_ARC_NR_PORTS=1
> > +CONFIG_SERIAL_MCTRL_GPIO=y
> > +CONFIG_SERIAL_OF_PLATFORM=y
> > +CONFIG_SRCU=y
> > +CONFIG_STACKTRACE=y
> > +CONFIG_STMMAC_ETH=y
> > +CONFIG_STMMAC_PLATFORM=y
> > +# CONFIG_STMMAC_SELFTESTS is not set
> > +CONFIG_SWPHY=y
> > +CONFIG_SYSCTL_ARCH_UNALIGN_ALLOW=y
> > +CONFIG_SYSCTL_ARCH_UNALIGN_NO_WARN=y
> > +CONFIG_TASKS_RCU=y
> > +CONFIG_TICK_CPU_ACCOUNTING=y
> > +CONFIG_TIMER_OF=y
> > +CONFIG_TIMER_PROBE=y
> > +CONFIG_TREE_SRCU=y
> > +CONFIG_UNINLINE_SPIN_UNLOCK=y
> > +CONFIG_USB_SUPPORT=y
> > diff --git
> > a/target/linux/arc770/patches-5.4/700-stmmac-Disable-frame-filtering-c
> > ompletely.patch
> > b/target/linux/arc770/patches-5.4/700-stmmac-Disable-frame-filtering-c
> > ompletely.patch
> > new file mode 100644
> > index 0000000000..9adfcb1be2
> > --- /dev/null
> > +++ b/target/linux/arc770/patches-5.4/700-stmmac-Disable-frame-filteri
> > +++ ng-completely.patch
> > @@ -0,0 +1,31 @@
> > +From 0031b9011cb2b2b1de4dbb4f9620303aec760db4 Mon Sep 17 00:00:00
> > +2001
> > +From: Alexey Brodkin <abrodkin@synopsys.com>
> > +Date: Wed, 27 Jul 2016 11:33:14 +0300
> > +Subject: [PATCH] stmmac: Disable frame filtering completely
> > +
> > +For some [still unknown] reason in ARC SDP boards DW GMAC doesn't
> > +enter promiscuous mode if eth0 gets added to the br-lan interface
> > +before Ethernet PHY finishes autonegotiation (PHY gets reset on DW
> > +GMAC start).
> > +
> > +As a work-around we completely disable frame filtering in GMAC
> > +hardware which gives us working bridge that consists of eth0 and
> > +wlan0 (USB Wi-Fi dongle). I.e. we finally have working "Dumb AP"
> > +setup made of ARC AXS10x boards.
> > +
> > +Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
> > +---
> > + drivers/net/ethernet/stmicro/stmmac/common.h | 2 +-
> > + 1 file changed, 1 insertion(+), 1 deletion(-)
> > +
> > +--- a/drivers/net/ethernet/stmicro/stmmac/common.h
> > ++++ b/drivers/net/ethernet/stmicro/stmmac/common.h
> > +@@ -42,7 +42,7 @@
> > + #define STMMAC_GET_ENTRY(x, size)	((x + 1) & (size - 1))
> > +
> > + #undef FRAME_FILTER_DEBUG
> > +-/* #define FRAME_FILTER_DEBUG */
> > ++#define FRAME_FILTER_DEBUG
> > +
> > + /* Extra statistic and debug information exposed by ethtool */
> > + struct stmmac_extra_stats {
> >
>
Hauke Mehrtens July 26, 2020, 4:11 p.m. UTC | #3
On 7/22/20 6:36 PM, mail@adrianschmutzler.de wrote:
> Hi Hauke,
> 
>> -----Original Message-----
>> From: openwrt-devel [mailto:openwrt-devel-bounces@lists.openwrt.org]
>> On Behalf Of Hauke Mehrtens
>> Sent: Montag, 25. Mai 2020 15:56
>> To: Evgeniy Didin <evgeniy.didin@synopsys.com>; Alexey Brodkin
>> <alexey.brodkin@synopsys.com>
>> Cc: Adrian Schmutzler <freifunk@adrianschmutzler.de>; openwrt-
>> devel@lists.openwrt.org
>> Subject: Re: [OpenWrt-Devel] [RFT PATCH] arc770: bump kernel to 5.4
>>
>> On 4/13/20 12:33 PM, Adrian Schmutzler wrote:
>>> Update config with make kernel_oldconfig and copy patch.
>>>
>>> Directly switch to kernel 5.4.
>>>
>>> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
>>>
>>> ---
>>>
>>> I just stupidly copied/refreshed the patch and the config.
>>>
>>> Build-tested, run-test required as I have no hardware.
>>
>> Hi Evgeniy and Alexey,
>>
>> Could you please test, if this patch works?
>>
>> We would like to get all targets to kernel 5.4 for the next release and this is
>> one of the targets still at an older kernel. Adrian and I do not have any
>> hardware to test this.
> 
> just looked at this one again. This target appears to be upstream with almost no local adjustments.
> 
> I wonder whether I should just push the kernel bump to master if it builds fine, without a device test. (would do a new refresh and build-test beforehand, of course). Nobody seems to care anyway.
> 
> Do you have an opinion here?

I am fine with this.

I think we do not have many users on this target anyway.

@Evgeniy and @Alexey: Could you please test if this update to kernel 5.4
for the arc770 works basically.

If someone else has this hardware and can try this out, some feedback
would be nice.

Hauke
Evgeniy Didin July 27, 2020, 8:25 a.m. UTC | #4
Hi Hauke, Adrian,

> -----Original Message-----
> From: Hauke Mehrtens <hauke@hauke-m.de> 
> Sent: Sunday, July 26, 2020 7:11 PM
> To: mail@adrianschmutzler.de; Evgeniy Didin <didin@synopsys.com>; Alexey Brodkin <abrodkin@synopsys.com>
> Cc: openwrt-devel@lists.openwrt.org
> Subject: Re: [OpenWrt-Devel] [RFT PATCH] arc770: bump kernel to 5.4

> On 7/22/20 6:36 PM, mail@adrianschmutzler.de wrote:
>> Hi Hauke,
>> 
>>> -----Original Message-----
>>> From: openwrt-devel [mailto:openwrt-devel-bounces@lists.openwrt.org]
>>> On Behalf Of Hauke Mehrtens
>>> Sent: Montag, 25. Mai 2020 15:56
>>> To: Evgeniy Didin <evgeniy.didin@synopsys.com>; Alexey Brodkin 
>>> <alexey.brodkin@synopsys.com>
>>> Cc: Adrian Schmutzler <freifunk@adrianschmutzler.de>; openwrt- 
>>> devel@lists.openwrt.org
>>> Subject: Re: [OpenWrt-Devel] [RFT PATCH] arc770: bump kernel to 5.4
>>>
>>> On 4/13/20 12:33 PM, Adrian Schmutzler wrote:
>>>> Update config with make kernel_oldconfig and copy patch.
>>>>
>>>> Directly switch to kernel 5.4.
>>>>
>>>> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
>>>>
>>>> ---
>>>>
>>>> I just stupidly copied/refreshed the patch and the config.
>>>>
>>>> Build-tested, run-test required as I have no hardware.
>>>
>>> Hi Evgeniy and Alexey,
>>>
>>> Could you please test, if this patch works?
>>>
>>> We would like to get all targets to kernel 5.4 for the next release 
>>> and this is one of the targets still at an older kernel. Adrian and I 
>>> do not have any hardware to test this.
>> 
>> just looked at this one again. This target appears to be upstream with almost no local adjustments.
>> 
>> I wonder whether I should just push the kernel bump to master if it builds fine, without a device test. (would do a new refresh and build-test beforehand, of course). Nobody seems to care anyway.
>> 
>> Do you have an opinion here?
>
> I am fine with this.
>
> I think we do not have many users on this target anyway.
> 
> @Evgeniy and @Alexey: Could you please test if this update to kernel 5.4 for the arc770 works basically.

Thank you a lot for updating kernel to 5.4 for arc770! Unfortunately we do not have access to boards with arc770,
so we are not able to test the image right now. By the way we ran Linux kernel v5.4(built by buildroot)
 on arc770 board and it worked well. I guess we can apply this patch and if any issue appears we will fix it.

Thanks and best regards,
Evgeniy Didin

> If someone else has this hardware and can try this out, some feedback would be nice.
>
> Hauke
Adrian Schmutzler July 27, 2020, 1:39 p.m. UTC | #5
> > @Evgeniy and @Alexey: Could you please test if this update to kernel 5.4
> for the arc770 works basically.
> 
> Thank you a lot for updating kernel to 5.4 for arc770! Unfortunately we do
> not have access to boards with arc770, so we are not able to test the image
> right now. By the way we ran Linux kernel v5.4(built by buildroot)  on arc770
> board and it worked well. I guess we can apply this patch and if any issue
> appears we will fix it.

Just tried to build it based on recent master and with buildbot settings, ended with this error, though:

checking if we should build libunwind-ptrace... yes
checking if we should build libunwind-setjmp... yes
checking for build architecture... x86_64
checking for host architecture... arc
checking for target architecture... arc
checking for target operating system... linux-gnu
checking for ELF helper width... configure: error: Unknown ELF target: arc
make[3]: *** [Makefile:65: /data/openwrt/build_dir/target-arc_arc700_uClibc/libunwind-1.3.1/.configured_68b329da9893e34099c7d8ad5cb9c940] Error 1
make[3]: Leaving directory '/data/openwrt/package/libs/libunwind'
time: package/libs/libunwind/compile#11.36#1.63#14.15
make[2]: *** [package/Makefile:113: package/libs/libunwind/compile] Error 2
make[2]: Leaving directory '/data/openwrt'
make[1]: *** [package/Makefile:107: /data/openwrt/staging_dir/target-arc_arc700_uClibc/stamp/.package_compile] Error 2
make[1]: Leaving directory '/data/openwrt'
make: *** [/data/openwrt/include/toplevel.mk:235: world] Error 2

Best

Adrian

> 
> Thanks and best regards,
> Evgeniy Didin
> 
> > If someone else has this hardware and can try this out, some feedback
> would be nice.
> >
> > Hauke
> 
> _______________________________________________
> openwrt-devel mailing list
> openwrt-devel@lists.openwrt.org
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
Adrian Schmutzler July 27, 2020, 6:21 p.m. UTC | #6
> -----Original Message-----
> From: openwrt-devel [mailto:openwrt-devel-bounces@lists.openwrt.org]
> On Behalf Of mail@adrianschmutzler.de
> Sent: Montag, 27. Juli 2020 15:39
> To: 'Evgeniy Didin' <Evgeniy.Didin@synopsys.com>; 'Hauke Mehrtens'
> <hauke@hauke-m.de>; 'Alexey Brodkin' <Alexey.Brodkin@synopsys.com>
> Cc: openwrt-devel@lists.openwrt.org
> Subject: RE: [OpenWrt-Devel] [RFT PATCH] arc770: bump kernel to 5.4
> 
> > > @Evgeniy and @Alexey: Could you please test if this update to kernel
> > > 5.4
> > for the arc770 works basically.
> >
> > Thank you a lot for updating kernel to 5.4 for arc770! Unfortunately
> > we do not have access to boards with arc770, so we are not able to
> > test the image right now. By the way we ran Linux kernel v5.4(built by
> > buildroot)  on arc770 board and it worked well. I guess we can apply
> > this patch and if any issue appears we will fix it.
> 
> Just tried to build it based on recent master and with buildbot settings,
> ended with this error, though:
> 
> checking if we should build libunwind-ptrace... yes checking if we should
> build libunwind-setjmp... yes checking for build architecture... x86_64
> checking for host architecture... arc checking for target architecture... arc
> checking for target operating system... linux-gnu checking for ELF helper
> width... configure: error: Unknown ELF target: arc
> make[3]: *** [Makefile:65: /data/openwrt/build_dir/target-
> arc_arc700_uClibc/libunwind-
> 1.3.1/.configured_68b329da9893e34099c7d8ad5cb9c940] Error 1
> make[3]: Leaving directory '/data/openwrt/package/libs/libunwind'
> time: package/libs/libunwind/compile#11.36#1.63#14.15
> make[2]: *** [package/Makefile:113: package/libs/libunwind/compile] Error
> 2
> make[2]: Leaving directory '/data/openwrt'
> make[1]: *** [package/Makefile:107: /data/openwrt/staging_dir/target-
> arc_arc700_uClibc/stamp/.package_compile] Error 2
> make[1]: Leaving directory '/data/openwrt'
> make: *** [/data/openwrt/include/toplevel.mk:235: world] Error 2

I've found that the root cause is openvswitch selecting libunwind, and due to some mechanism I don't understand openvswitch isn't built anymore for 4.14 on buildbots already (though only for the most recent 4.14.x kernel version).

Since everything else is working, I decided to push 5.4 support now and will be curious whether buildbots run through or not.

Best

Adrian

> 
> Best
> 
> Adrian
> 
> >
> > Thanks and best regards,
> > Evgeniy Didin
> >
> > > If someone else has this hardware and can try this out, some
> > > feedback
> > would be nice.
> > >
> > > Hauke
> >
> > _______________________________________________
> > openwrt-devel mailing list
> > openwrt-devel@lists.openwrt.org
> > https://lists.openwrt.org/mailman/listinfo/openwrt-devel
diff mbox series

Patch

diff --git a/target/linux/arc770/Makefile b/target/linux/arc770/Makefile
index 8150f147c5..a182ef16a5 100644
--- a/target/linux/arc770/Makefile
+++ b/target/linux/arc770/Makefile
@@ -11,7 +11,7 @@  BOARD:=arc770
 BOARDNAME:=Synopsys DesignWare ARC 770D
 SUBTARGETS:=generic
 
-KERNEL_PATCHVER:=4.14
+KERNEL_PATCHVER:=5.4
 
 DEVICE_TYPE:=developerboard
 
diff --git a/target/linux/arc770/config-5.4 b/target/linux/arc770/config-5.4
new file mode 100644
index 0000000000..ce712b4c34
--- /dev/null
+++ b/target/linux/arc770/config-5.4
@@ -0,0 +1,198 @@ 
+# CONFIG_16KSTACKS is not set
+CONFIG_ARC=y
+CONFIG_ARCH_32BIT_OFF_T=y
+CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
+CONFIG_ARCH_HAS_DMA_COHERENT_TO_PFN=y
+CONFIG_ARCH_HAS_DMA_PREP_COHERENT=y
+CONFIG_ARCH_HAS_PTE_SPECIAL=y
+CONFIG_ARCH_HAS_SETUP_DMA_OPS=y
+CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU=y
+CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE=y
+CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
+CONFIG_ARC_BUILTIN_DTB_NAME=""
+CONFIG_ARC_CACHE=y
+CONFIG_ARC_CACHE_LINE_SHIFT=5
+CONFIG_ARC_CACHE_PAGES=y
+# CONFIG_ARC_CACHE_VIPT_ALIASING is not set
+# CONFIG_ARC_COMPACT_IRQ_LEVELS is not set
+# CONFIG_ARC_CPU_750D is not set
+CONFIG_ARC_CPU_770=y
+CONFIG_ARC_CURR_IN_REG=y
+CONFIG_ARC_DBG=y
+# CONFIG_ARC_DBG_TLB_PARANOIA is not set
+CONFIG_ARC_DW2_UNWIND=y
+CONFIG_ARC_EMUL_UNALIGNED=y
+# CONFIG_ARC_FPU_SAVE_RESTORE is not set
+CONFIG_ARC_HAS_DCACHE=y
+# CONFIG_ARC_HAS_DCCM is not set
+CONFIG_ARC_HAS_ICACHE=y
+# CONFIG_ARC_HAS_ICCM is not set
+CONFIG_ARC_HAS_LLSC=y
+CONFIG_ARC_HAS_SWAPE=y
+CONFIG_ARC_KVADDR_SIZE=256
+# CONFIG_ARC_METAWARE_HLINK is not set
+# CONFIG_ARC_MMU_V1 is not set
+# CONFIG_ARC_MMU_V2 is not set
+CONFIG_ARC_MMU_V3=y
+# CONFIG_ARC_PAGE_SIZE_16K is not set
+# CONFIG_ARC_PAGE_SIZE_4K is not set
+CONFIG_ARC_PAGE_SIZE_8K=y
+CONFIG_ARC_PLAT_AXS10X=y
+# CONFIG_ARC_PLAT_EZNPS is not set
+# CONFIG_ARC_PLAT_TB10X is not set
+CONFIG_ARC_TIMERS=y
+CONFIG_AXS101=y
+CONFIG_CC_HAS_KASAN_GENERIC=y
+# CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE_O3 is not set
+CONFIG_CLKDEV_LOOKUP=y
+CONFIG_CLONE_BACKWARDS=y
+CONFIG_COMMON_CLK=y
+CONFIG_COMPAT_32BIT_TIME=y
+CONFIG_CPU_NO_EFFICIENT_FFS=y
+CONFIG_CRC16=y
+CONFIG_CRYPTO_CRC32C=y
+CONFIG_CRYPTO_HASH=y
+CONFIG_CRYPTO_HASH2=y
+CONFIG_CRYPTO_RNG2=y
+CONFIG_DMA_DIRECT_REMAP=y
+CONFIG_DMA_REMAP=y
+CONFIG_DTC=y
+CONFIG_DWMAC_ANARION=y
+CONFIG_DWMAC_GENERIC=y
+CONFIG_DW_APB_ICTL=y
+CONFIG_EXT4_FS=y
+# CONFIG_EZNPS_GIC is not set
+CONFIG_FIXED_PHY=y
+CONFIG_FS_IOMAP=y
+CONFIG_FS_MBCACHE=y
+CONFIG_FW_LOADER_PAGED_BUF=y
+CONFIG_GENERIC_ALLOCATOR=y
+CONFIG_GENERIC_ATOMIC64=y
+CONFIG_GENERIC_CLOCKEVENTS=y
+CONFIG_GENERIC_CSUM=y
+CONFIG_GENERIC_FIND_FIRST_BIT=y
+CONFIG_GENERIC_IRQ_CHIP=y
+CONFIG_GENERIC_IRQ_SHOW=y
+CONFIG_GENERIC_PCI_IOMAP=y
+CONFIG_GENERIC_SCHED_CLOCK=y
+CONFIG_GENERIC_SMP_IDLE_THREAD=y
+CONFIG_GPIOLIB=y
+CONFIG_GPIO_DWAPB=y
+CONFIG_GPIO_GENERIC=y
+# CONFIG_GPIO_SNPS_CREG is not set
+CONFIG_HANDLE_DOMAIN_IRQ=y
+CONFIG_HAS_DMA=y
+CONFIG_HAS_IOMEM=y
+CONFIG_HAVE_ARCH_KGDB=y
+CONFIG_HAVE_ARCH_TRACEHOOK=y
+CONFIG_HAVE_CLK=y
+CONFIG_HAVE_CLK_PREPARE=y
+CONFIG_HAVE_DEBUG_STACKOVERFLOW=y
+CONFIG_HAVE_FUTEX_CMPXCHG=y
+CONFIG_HAVE_IOREMAP_PROT=y
+CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
+CONFIG_HAVE_NET_DSA=y
+CONFIG_HAVE_OPROFILE=y
+CONFIG_HAVE_PCI=y
+CONFIG_HAVE_PERF_EVENTS=y
+CONFIG_HZ=100
+CONFIG_HZ_PERIODIC=y
+CONFIG_INITRAMFS_SOURCE=""
+CONFIG_IRQCHIP=y
+CONFIG_IRQ_DOMAIN=y
+CONFIG_IRQ_WORK=y
+CONFIG_ISA_ARCOMPACT=y
+# CONFIG_ISA_ARCV2 is not set
+CONFIG_JBD2=y
+CONFIG_KALLSYMS=y
+CONFIG_KERNEL_GZIP=y
+CONFIG_LIBFDT=y
+CONFIG_LINUX_LINK_BASE=0x80000000
+CONFIG_LINUX_RAM_BASE=0x80000000
+CONFIG_LOCK_DEBUGGING_SUPPORT=y
+CONFIG_MDIO_BUS=y
+CONFIG_MDIO_DEVICE=y
+CONFIG_MEMFD_CREATE=y
+CONFIG_MFD_SYSCON=y
+CONFIG_MIGRATION=y
+CONFIG_MMC=y
+CONFIG_MMC_BLOCK=y
+CONFIG_MMC_DW=y
+# CONFIG_MMC_DW_BLUEFIELD is not set
+# CONFIG_MMC_DW_EXYNOS is not set
+# CONFIG_MMC_DW_HI3798CV200 is not set
+# CONFIG_MMC_DW_K3 is not set
+CONFIG_MMC_DW_PLTFM=y
+CONFIG_MMC_SDHCI=y
+CONFIG_MMC_SDHCI_PLTFM=y
+CONFIG_MODULES_USE_ELF_RELA=y
+CONFIG_NATIONAL_PHY=y
+CONFIG_NEED_DMA_MAP_STATE=y
+CONFIG_NEED_PER_CPU_KM=y
+CONFIG_NET_PTP_CLASSIFY=y
+# CONFIG_NET_VENDOR_ARC is not set
+# CONFIG_NET_VENDOR_BROADCOM is not set
+# CONFIG_NET_VENDOR_INTEL is not set
+# CONFIG_NET_VENDOR_MARVELL is not set
+# CONFIG_NET_VENDOR_MICREL is not set
+# CONFIG_NET_VENDOR_NATSEMI is not set
+# CONFIG_NET_VENDOR_QUALCOMM is not set
+# CONFIG_NET_VENDOR_ROCKER is not set
+# CONFIG_NET_VENDOR_SAMSUNG is not set
+# CONFIG_NET_VENDOR_SEEQ is not set
+# CONFIG_NET_VENDOR_VIA is not set
+# CONFIG_NET_VENDOR_WIZNET is not set
+CONFIG_NO_IOPORT_MAP=y
+CONFIG_OF=y
+CONFIG_OF_ADDRESS=y
+CONFIG_OF_EARLY_FLATTREE=y
+CONFIG_OF_FLATTREE=y
+CONFIG_OF_GPIO=y
+CONFIG_OF_IRQ=y
+CONFIG_OF_KOBJ=y
+CONFIG_OF_MDIO=y
+CONFIG_OF_NET=y
+CONFIG_PAGE_POOL=y
+CONFIG_PGTABLE_LEVELS=2
+CONFIG_PHYLIB=y
+CONFIG_PHYLINK=y
+CONFIG_PPS=y
+CONFIG_PREEMPT=y
+CONFIG_PREEMPTION=y
+CONFIG_PREEMPT_COUNT=y
+# CONFIG_PREEMPT_NONE is not set
+CONFIG_PREEMPT_RCU=y
+CONFIG_PTP_1588_CLOCK=y
+CONFIG_RATIONAL=y
+CONFIG_RCU_NEED_SEGCBLIST=y
+CONFIG_RCU_STALL_COMMON=y
+CONFIG_REGMAP=y
+CONFIG_REGMAP_MMIO=y
+CONFIG_RESET_AXS10X=y
+CONFIG_RESET_CONTROLLER=y
+CONFIG_RESET_SIMPLE=y
+CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y
+CONFIG_SERIAL_8250_DW=y
+CONFIG_SERIAL_8250_DWLIB=y
+CONFIG_SERIAL_8250_NR_UARTS=4
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+CONFIG_SERIAL_ARC=y
+CONFIG_SERIAL_ARC_CONSOLE=y
+CONFIG_SERIAL_ARC_NR_PORTS=1
+CONFIG_SERIAL_MCTRL_GPIO=y
+CONFIG_SERIAL_OF_PLATFORM=y
+CONFIG_SRCU=y
+CONFIG_STACKTRACE=y
+CONFIG_STMMAC_ETH=y
+CONFIG_STMMAC_PLATFORM=y
+# CONFIG_STMMAC_SELFTESTS is not set
+CONFIG_SWPHY=y
+CONFIG_SYSCTL_ARCH_UNALIGN_ALLOW=y
+CONFIG_SYSCTL_ARCH_UNALIGN_NO_WARN=y
+CONFIG_TASKS_RCU=y
+CONFIG_TICK_CPU_ACCOUNTING=y
+CONFIG_TIMER_OF=y
+CONFIG_TIMER_PROBE=y
+CONFIG_TREE_SRCU=y
+CONFIG_UNINLINE_SPIN_UNLOCK=y
+CONFIG_USB_SUPPORT=y
diff --git a/target/linux/arc770/patches-5.4/700-stmmac-Disable-frame-filtering-completely.patch b/target/linux/arc770/patches-5.4/700-stmmac-Disable-frame-filtering-completely.patch
new file mode 100644
index 0000000000..9adfcb1be2
--- /dev/null
+++ b/target/linux/arc770/patches-5.4/700-stmmac-Disable-frame-filtering-completely.patch
@@ -0,0 +1,31 @@ 
+From 0031b9011cb2b2b1de4dbb4f9620303aec760db4 Mon Sep 17 00:00:00 2001
+From: Alexey Brodkin <abrodkin@synopsys.com>
+Date: Wed, 27 Jul 2016 11:33:14 +0300
+Subject: [PATCH] stmmac: Disable frame filtering completely
+
+For some [still unknown] reason in ARC SDP boards
+DW GMAC doesn't enter promiscuous mode if eth0 gets
+added to the br-lan interface before Ethernet PHY finishes
+autonegotiation (PHY gets reset on DW GMAC start).
+
+As a work-around we completely disable frame filtering
+in GMAC hardware which gives us working bridge that consists
+of eth0 and wlan0 (USB Wi-Fi dongle). I.e. we finally have
+working "Dumb AP" setup made of ARC AXS10x boards.
+
+Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
+---
+ drivers/net/ethernet/stmicro/stmmac/common.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/net/ethernet/stmicro/stmmac/common.h
++++ b/drivers/net/ethernet/stmicro/stmmac/common.h
+@@ -42,7 +42,7 @@
+ #define STMMAC_GET_ENTRY(x, size)	((x + 1) & (size - 1))
+ 
+ #undef FRAME_FILTER_DEBUG
+-/* #define FRAME_FILTER_DEBUG */
++#define FRAME_FILTER_DEBUG
+ 
+ /* Extra statistic and debug information exposed by ethtool */
+ struct stmmac_extra_stats {