[OpenWrt-Devel] [PATCH] build: svn: remove the check for trust-server-cert option

2020-06-07 Thread kai zhang
The command:(svn help export) does not display trust-server-cert
option by default even if it is supported with svn version 1.13.0.

Signed-off-by: kai zhang 
---
 include/download.mk | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/include/download.mk b/include/download.mk
index 9c8ada052b..6c7b5f6371 100644
--- a/include/download.mk
+++ b/include/download.mk
@@ -167,9 +167,7 @@ define DownloadMethod/svn
cd $(TMP_DIR)/dl && \
rm -rf $(SUBDIR) && \
[ \! -d $(SUBDIR) ] && \
-   ( svn help export | grep -q trust-server-cert && \
-   svn export --non-interactive --trust-server-cert -r$(VERSION) 
$(URL) $(SUBDIR) || \
-   svn export --non-interactive -r$(VERSION) $(URL) $(SUBDIR) ) && 
\
+   svn export --non-interactive --trust-server-cert -r$(VERSION) 
$(URL) $(SUBDIR) && \
echo "Packing checkout..." && \
export TAR_TIMESTAMP="" && \
$(call dl_tar_pack,$(TMP_DIR)/dl/$(FILE),$(SUBDIR)) && \
-- 
2.25.1
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] olsrd: not compiling with gcc 9

2020-06-07 Thread Sven Roederer
Am Sonntag, 7. Juni 2020, 23:39:08 CEST schrieb Rosen Penev:
> > Le 7 juin 2020 à 1:38 PM, Nick  a écrit :
> > 
> > I would suggest doing this PR as patch like freifunk berlin is doing it:
> > https://github.com/freifunk-berlin/firmware/commit/93f9a026e025c7b663369f5
> > 284cec0bb91345220
> Someone needs to propose one then.
> 

This patch was referenced by an issue (https://github.com/openwrt-routing/
packages/issues/547#issuecomment-586213155), but original author was not
able to runtime-test. In Freifunk Berlin we also don't use the pud-plugin and
can't therefore not confirm it.

> > Otherwise, olsrd won't compile anymore. :/ Or making a fork, because
> > olsrd seems not to be maintained anymore.
> > 

I just opened PR #575 to mark this package as broken, till there is a 
maintainer again ...

Sven

> >> On 07.06.20 22:27, Nick wrote:
> >> Here is a PR that is fixing the issue. Why is that not merged? :/
> >> 
> >> https://github.com/OLSR/olsrd/pull/79/files
> >> 
> >> On 07.06.20 22:03, Rosen Penev wrote:
>  Le 7 juin 2020 à 1:00 PM, Nick  a écrit :
>  
>  I can not compile olsrd daemon with gcc9.
>  
> > #define isNaN(x) (x != x)
> > ...
> > if (!isNaN(gpsdata->fix.time)) {
>  
>  Here fix.time is a struct timespec.
>  The call is just wrong, or? Why should I check a struct for a valid
>  float?
> >>> 
> >>> This broke when gpsutils got updated. API change with libgps.
> >>> 




___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] olsrd: not compiling with gcc 9

2020-06-07 Thread Rosen Penev


> Le 7 juin 2020 à 1:38 PM, Nick  a écrit :
> 
> I would suggest doing this PR as patch like freifunk berlin is doing it:
> https://github.com/freifunk-berlin/firmware/commit/93f9a026e025c7b663369f5284cec0bb91345220
Someone needs to propose one then.
> 
> Otherwise, olsrd won't compile anymore. :/ Or making a fork, because
> olsrd seems not to be maintained anymore.
> 
>> On 07.06.20 22:27, Nick wrote:
>> Here is a PR that is fixing the issue. Why is that not merged? :/
>> 
>> https://github.com/OLSR/olsrd/pull/79/files
>> 
>> On 07.06.20 22:03, Rosen Penev wrote:
 Le 7 juin 2020 à 1:00 PM, Nick  a écrit :
 
 I can not compile olsrd daemon with gcc9.
> #define isNaN(x) (x != x)
> ...
> if (!isNaN(gpsdata->fix.time)) {
 Here fix.time is a struct timespec.
 The call is just wrong, or? Why should I check a struct for a valid float?
>>> This broke when gpsutils got updated. API change with libgps.
 ___
 openwrt-devel mailing list
 openwrt-devel@lists.openwrt.org
 https://lists.openwrt.org/mailman/listinfo/openwrt-devel
>>> ___
>>> openwrt-devel mailing list
>>> openwrt-devel@lists.openwrt.org
>>> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
>> ___
>> openwrt-devel mailing list
>> openwrt-devel@lists.openwrt.org
>> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
> 
> ___
> openwrt-devel mailing list
> openwrt-devel@lists.openwrt.org
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [sdwalker/sdwalker.github.io] 8eec96: This week's update

2020-06-07 Thread Stephen Walker
  Branch: refs/heads/master
  Home:   https://github.com/sdwalker/sdwalker.github.io
  Commit: 8eec96afe126fbc48ec648a0165e7ec5138d5e6a
  
https://github.com/sdwalker/sdwalker.github.io/commit/8eec96afe126fbc48ec648a0165e7ec5138d5e6a
  Author: Stephen Walker 
  Date:   2020-06-07 (Sun, 07 Jun 2020)

  Changed paths:
M uscan/index-18.06.html
M uscan/index-19.07.html
M uscan/index.html

  Log Message:
  ---
  This week's update



___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] olsrd: not compiling with gcc 9

2020-06-07 Thread Nick
I would suggest doing this PR as patch like freifunk berlin is doing it:
https://github.com/freifunk-berlin/firmware/commit/93f9a026e025c7b663369f5284cec0bb91345220

Otherwise, olsrd won't compile anymore. :/ Or making a fork, because
olsrd seems not to be maintained anymore.

On 07.06.20 22:27, Nick wrote:
> Here is a PR that is fixing the issue. Why is that not merged? :/
>
> https://github.com/OLSR/olsrd/pull/79/files
>
> On 07.06.20 22:03, Rosen Penev wrote:
>>> Le 7 juin 2020 à 1:00 PM, Nick  a écrit :
>>>
>>> I can not compile olsrd daemon with gcc9.
 #define isNaN(x) (x != x)
 ...
 if (!isNaN(gpsdata->fix.time)) {
>>> Here fix.time is a struct timespec.
>>> The call is just wrong, or? Why should I check a struct for a valid float?
>> This broke when gpsutils got updated. API change with libgps.
>>> ___
>>> openwrt-devel mailing list
>>> openwrt-devel@lists.openwrt.org
>>> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
>> ___
>> openwrt-devel mailing list
>> openwrt-devel@lists.openwrt.org
>> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
> ___
> openwrt-devel mailing list
> openwrt-devel@lists.openwrt.org
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] olsrd: not compiling with gcc 9

2020-06-07 Thread Nick
Here is a PR that is fixing the issue. Why is that not merged? :/

https://github.com/OLSR/olsrd/pull/79/files

On 07.06.20 22:03, Rosen Penev wrote:
>
>> Le 7 juin 2020 à 1:00 PM, Nick  a écrit :
>>
>> I can not compile olsrd daemon with gcc9.
>>> #define isNaN(x) (x != x)
>>> ...
>>> if (!isNaN(gpsdata->fix.time)) {
>> Here fix.time is a struct timespec.
>> The call is just wrong, or? Why should I check a struct for a valid float?
> This broke when gpsutils got updated. API change with libgps.
>> ___
>> openwrt-devel mailing list
>> openwrt-devel@lists.openwrt.org
>> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
> ___
> openwrt-devel mailing list
> openwrt-devel@lists.openwrt.org
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] olsrd: not compiling with gcc 9

2020-06-07 Thread Rosen Penev


> Le 7 juin 2020 à 1:00 PM, Nick  a écrit :
> 
> I can not compile olsrd daemon with gcc9.
>> #define isNaN(x) (x != x)
>> ...
>> if (!isNaN(gpsdata->fix.time)) {
> Here fix.time is a struct timespec.
> The call is just wrong, or? Why should I check a struct for a valid float?
This broke when gpsutils got updated. API change with libgps.
> 
> ___
> openwrt-devel mailing list
> openwrt-devel@lists.openwrt.org
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] olsrd: not compiling with gcc 9

2020-06-07 Thread Nick
I can not compile olsrd daemon with gcc9.
> #define isNaN(x) (x != x)
> ...
> if (!isNaN(gpsdata->fix.time)) {
Here fix.time is a struct timespec.
The call is just wrong, or? Why should I check a struct for a valid float?

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] DSA vlan configuration

2020-06-07 Thread John Crispin

On 06.06.20 15:19, Bjørn Mork wrote:

Bjørn Mork  writes:


I wonder if I have understood this correctly:
1) vlan_filtering is required when bridging tagged and untagged DSA
ports, and
2) all bridge ports, including the wireless VIFs, must be configured
with the correct VIDs when vlan_filtering is enabled

An if so, how are we supposed to configure that?


quarky just posted a great tip in the forum:
https://forum.openwrt.org/t/mt7621-dsa-switch-vlan-configuration/65458/2?u=bmork

Despite having looked for exactly this, I had not seen the
"vlan_default_pvid" setting before.  This seems to solve the problem I
described.

I believe the tagged wan port, where one VID on wan is part of a bridge,
is a semi-common usecase for OpenWrt (and CPEs in general).  Maybe this
kind of bridge automatically should enable settings like:

  ip link set  type bridge vlan_default_pvid 
  ip link set  type bridge vlan_filtering 1

as described by quarky?

AFAICS, a DSA based brigde won't work without something like that, and
having each user figure that out by themselves is going to create a lot
of frustration...


Bjørn



Hi Bjørn,
indeed, we need to put this into netifd. would it be possible to collect 
all the relevant info and put it into the wiki for manual setup ? i 
would volunteer to add it into netifd in that case.

John

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] [PATCH 2/2] libcxx: update to 10.0.0

2020-06-07 Thread Ian Cooper
On Sat,  6 Jun 2020 11:52:23 -0700 Rosen Penev  wrote:

> Switched to upstream tarballs.
> 
> Switched to libcxxabi as using libsupc++ is quite wonky.
> 
> Fixed description.
> 
> Removed patches. The fixes are cosmetic.
> 
> Added ssp patch. This one is needed for i386 and powerpc under musl.
> 
> Compile tested every C++ package in the tree with the exception of
> several boost packages. There's something broken with boost.
> 
> Ran tested with gerbera.
> 
> Signed-off-by: Rosen Penev 
> ---
>  package/libs/libcxx/Makefile| 18 +--
>  package/libs/libcxx/files/g++-libcxx|  2 +-
>  package/libs/libcxx/patches/010-cxx17.patch | 14 -
>  package/libs/libcxx/patches/010-ssp.patch   | 13 
>  package/libs/libcxx/patches/020-fixes.patch | 35 -
>  5 files changed, 23 insertions(+), 59 deletions(-)
>  delete mode 100644 package/libs/libcxx/patches/010-cxx17.patch
>  create mode 100644 package/libs/libcxx/patches/010-ssp.patch
>  delete mode 100644 package/libs/libcxx/patches/020-fixes.patch
> 
> diff --git a/package/libs/libcxx/Makefile b/package/libs/libcxx/Makefile
> index 8343cbb427..3809bea651 100644
> --- a/package/libs/libcxx/Makefile
> +++ b/package/libs/libcxx/Makefile
> @@ -7,19 +7,20 @@
>  include $(TOPDIR)/rules.mk
>  
>  PKG_NAME:=libcxx
> -PKG_VERSION:=9.0.1
> -PKG_RELEASE:=4
> +PKG_VERSION:=10.0.0
> +PKG_RELEASE:=1
>  
> -PKG_SOURCE_PROTO:=git
> -PKG_SOURCE_URL:=https://git.llvm.org/git/libcxx
> -PKG_SOURCE_VERSION:=2076f539f410805ef88692b9c0ce0a0b882a7680
> -PKG_MIRROR_HASH:=d527880a18dec9109575c76717cf5288fb91c11381b9d261cae2e5bebcbdab2e
> +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).src.tar.xz
> +PKG_SOURCE_URL:=https://github.com/llvm/llvm-project/releases/download/llvmorg-$(PKG_VERSION)
> +PKG_HASH:=270f8a3f176f1981b0f6ab8aa556720988872ec2b48ed3b605d0ced8d09156c7
> +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION).src
>  
>  PKG_MAINTAINER:=Rosen Penev 
>  PKG_LICENSE:=MIT
>  PKG_LICENSE_FILES:=LICENSE.txt
>  
>  PKG_BUILD_PARALLEL:=1
> +PKG_BUILD_DEPENDS:=libcxxabi
>  CMAKE_BINARY_SUBDIR:=build
>  
>  include $(INCLUDE_DIR)/package.mk
> @@ -34,12 +35,11 @@ define Package/libcxx
>  endef
>  
>  define Package/libcxx/description
> -  LLVM C++ library targeting C++11 and above
> +  libc++ is an implementation of the C++ standard library, targeting C++11, 
> C++14 and above.
>  endef
>  
>  CMAKE_OPTIONS += \
> - -DLIBCXX_CXX_ABI="libsupc++" \
> - 
> -DLIBCXX_CXX_ABI_INCLUDE_PATHS="$(TOOLCHAIN_DIR)/$(REAL_GNU_TARGET_NAME)/include/c++/$(CONFIG_GCC_VERSION);$(TOOLCHAIN_DIR)/$(REAL_GNU_TARGET_NAME)/include/c++/$(CONFIG_GCC_VERSION)/$(REAL_GNU_TARGET_NAME)"
>  \
> + -DLIBCXX_CXX_ABI="libcxxabi" \
>   -DLIBCXX_ENABLE_ASSERTIONS=OFF \
>   -DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=OFF \
>   -DLIBCXX_INCLUDE_BENCHMARKS=OFF \
> diff --git a/package/libs/libcxx/files/g++-libcxx 
> b/package/libs/libcxx/files/g++-libcxx
> index 81ca46eb0e..f37afb2fd5 100755
> --- a/package/libs/libcxx/files/g++-libcxx
> +++ b/package/libs/libcxx/files/g++-libcxx
> @@ -13,7 +13,7 @@ do
>   -static) [ "$WRAPPER_LIBS" != "-lc -lgcc_s -lssp_nonshared -lgcc_eh" ] 
> && WRAPPER_LIBS="-lc -lgcc_s -lssp_nonshared -lgcc_eh" ;;
>   esac
>  done
> -[ "$WRAPPER_INCLIB" = "Y" ] && WRAPPER_OPTIONS="-nodefaultlibs 
> $WRAPPER_LIBDIR -lc++ -lsupc++ $WRAPPER_LIBS"
> +[ "$WRAPPER_INCLIB" = "Y" ] && WRAPPER_OPTIONS="-nodefaultlibs 
> $WRAPPER_LIBDIR -lc++ -lc++abi $WRAPPER_LIBS"
>  
>  exec CXX -fno-builtin -nostdinc++ -DGCC_HASCLASSVISIBILITY 
> "$WRAPPER_INCLUDEDIR" "$@" $WRAPPER_OPTIONS
>  
> diff --git a/package/libs/libcxx/patches/010-cxx17.patch 
> b/package/libs/libcxx/patches/010-cxx17.patch
> deleted file mode 100644
> index dceec9d4f3..00
> --- a/package/libs/libcxx/patches/010-cxx17.patch
> +++ /dev/null
> @@ -1,14 +0,0 @@
>  a/CMakeLists.txt
> -+++ b/CMakeLists.txt
> -@@ -524,9 +524,9 @@ remove_flags(-Wno-pedantic -pedantic-err
> - if (LIBCXX_HAS_MUSL_LIBC OR LIBCXX_TARGETING_CLANG_CL)
> -   # musl's pthread implementations uses volatile types in their structs 
> which is
> -   # not a constexpr in C++11 but is in C++14, so we use C++14 with musl.
> --  set(LIBCXX_STANDARD_VER c++14 CACHE STRING "internal option to change 
> build dialect")
> -+  set(LIBCXX_STANDARD_VER c++2a CACHE STRING "internal option to change 
> build dialect")
> - else()
> --  set(LIBCXX_STANDARD_VER c++11 CACHE STRING "internal option to change 
> build dialect")
> -+  set(LIBCXX_STANDARD_VER c++2a CACHE STRING "internal option to change 
> build dialect")
> - endif()
> - add_compile_flags_if_supported(-std=${LIBCXX_STANDARD_VER})
> - add_compile_flags_if_supported("/std:${LIBCXX_STANDARD_VER}")
> diff --git a/package/libs/libcxx/patches/010-ssp.patch 
> b/package/libs/libcxx/patches/010-ssp.patch
> new file mode 100644
> index 00..c9dc90c7f2
> --- /dev/null
> +++ b/package/libs/libcxx/patches/010-ssp.patch
> @@ -0,0 +1,13 @@
> +--- 

Re: [OpenWrt-Devel] [PATCH 1/2] libcxxabi: add

2020-06-07 Thread Ian Cooper
On Sat,  6 Jun 2020 11:52:22 -0700 Rosen Penev  wrote:

> This will be used for libcxx.
> 
> Signed-off-by: Rosen Penev 
> ---
>  package/libs/libcxxabi/Makefile | 71 +
>  1 file changed, 71 insertions(+)
>  create mode 100644 package/libs/libcxxabi/Makefile
> 
> diff --git a/package/libs/libcxxabi/Makefile b/package/libs/libcxxabi/Makefile
> new file mode 100644
> index 00..90547561b2
> --- /dev/null
> +++ b/package/libs/libcxxabi/Makefile
> @@ -0,0 +1,71 @@
> +
> +#
> +# This is free software, licensed under the GNU General Public License v2.
> +# See /LICENSE for more information.
> +#
> +
> +include $(TOPDIR)/rules.mk
> +
> +PKG_NAME:=libcxxabi
> +PKG_VERSION:=10.0.0
> +PKG_RELEASE:=1
> +
> +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).src.tar.xz
> +PKG_SOURCE_URL:=https://github.com/llvm/llvm-project/releases/download/llvmorg-$(PKG_VERSION)
> +PKG_HASH:=e71bac75a88c9dde455ad3f2a2b449bf745eafd41d2d8432253b2964e0ca14e1
> +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION).src
> +
> +PKG_MAINTAINER:=Rosen Penev 
> +PKG_LICENSE:=MIT
> +PKG_LICENSE_FILES:=LICENSE.txt
> +
> +PKG_BUILD_PARALLEL:=1
> +CMAKE_BINARY_SUBDIR:=build
> +
> +include $(INCLUDE_DIR)/package.mk
> +include $(INCLUDE_DIR)/cmake.mk
> +
> +define Package/libcxxabi
> +  SECTION:=libs
> +  CATEGORY:=Libraries
> +  TITLE:=LLVM lib++abi
> +  URL:=https://libcxxabi.llvm.org/
> +  DEPENDS:=+libpthread
> +  BUILDONLY:=1
> +endef
> +
> +define Package/libcxxabi/description
> +  libc++abi is a new implementation of low level support for a standard C++ 
> library.
> +endef
> +
> +CMAKE_OPTIONS += \
> + -DLIBCXXABI_ENABLE_EXCEPTIONS=ON \
> + -DLIBCXXABI_ENABLE_PEDANTIC=OFF \
> + -DLIBCXXABI_ENABLE_PIC=ON \
> + -DLIBCXXABI_ENABLE_WERROR=OFF \
> + -DLIBCXXABI_USE_LLVM_UNWINDER=OFF \
> + -DLIBCXXABI_USE_COMPILER_RT=OFF \
> + -DLIBCXXABI_ENABLE_THREADS=ON \
> + -DLIBCXXABI_HAS_PTHREAD_API=ON \
> + -DLIBCXXABI_INCLUDE_TESTS=OFF \
> + -DLIBCXXABI_LIBDIR_SUFFIX="" \
> + -DLIBCXXABI_INSTALL_LIBRARY=ON \
> + -DLIBCXXABI_ENABLE_SHARED=OFF \
> + -DLIBCXXABI_LIBCXX_SRC_DIR=$(BUILD_DIR)/libcxx-$(PKG_VERSION).src \
> + 
> -DLIBCXXABI_LIBCXX_INCLUDES=$(BUILD_DIR)/libcxx-$(PKG_VERSION).src/include
> +
> +TARGET_CXXFLAGS += -flto
> +TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed
> +
> +define Build/Prepare
> + $(MAKE) -C $(TOPDIR)/package/libs/libcxx prepare
> + $(call Build/Prepare/Default)
> +endef
> +
> +define Build/InstallDev
> + $(call Build/InstallDev/cmake,$(1))
> + $(INSTALL_DIR) $(1)/usr/include/
> + $(INSTALL_DATA) $(PKG_BUILD_DIR)/include/*.h $(1)/usr/include/
> +endef
> +
> +$(eval $(call BuildPackage,libcxxabi))

Reviewed-by: Ian Cooper 

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] [PATCH] treewide: simplify inclusion of subtarget image files

2020-06-07 Thread mail
Hi Matthias,

> -Original Message-
> From: openwrt-devel [mailto:openwrt-devel-boun...@lists.openwrt.org]
> On Behalf Of Matthias Schiffer
> Sent: Sonntag, 7. Juni 2020 13:33
> To: Adrian Schmutzler 
> Cc: openwrt-devel@lists.openwrt.org
> Subject: Re: [OpenWrt-Devel] [PATCH] treewide: simplify inclusion of
> subtarget image files
> 
> On 6/7/20 1:11 PM, Adrian Schmutzler wrote:
> > Many target use a repetitive if-include scheme for their subtarget
> > image files, though their names are consistent with the subtarget
> > names.
> >
> > This patch removes these redundant conditions and just uses the
> > variable for the include where the target setup allows it.
> >
> > For sunxi, this includes a trivial rename of the subtarget image
> > Makefiles.
> >
> > Signed-off-by: Adrian Schmutzler 
> > ---
> [...]
> > diff --git a/target/linux/ath79/image/Makefile
> > b/target/linux/ath79/image/Makefile
> > index 529baf8f57..a555cfc6d5 100644
> > --- a/target/linux/ath79/image/Makefile
> > +++ b/target/linux/ath79/image/Makefile
> > @@ -68,20 +68,16 @@ define Device/Default
> > append-rootfs | pad-rootfs | append-metadata | check-size  endef
> >
> > +include $(SUBTARGET).mk
> > +
> >  ifeq ($(SUBTARGET),generic)
> > -include ./generic.mk
> > -include ./generic-tp-link.mk
> > -include ./generic-ubnt.mk
> > -endif
> > -ifeq ($(SUBTARGET),mikrotik)
> > -include ./mikrotik.mk
> > -endif
> > -ifeq ($(SUBTARGET),nand)
> > -include ./nand.mk
> > +include generic-tp-link.mk
> > +include generic-ubnt.mk
> 
> How about moving these lines into generic.mk, etc.? That way we could get
> rid of the ifeq ($(SUBTARGET),...) completely.

I considered that as well, but personally I like it better "my" way, as the 
image/Makefile provides "an overview"  of the relevant files rather than having 
a cascading arrangement. (Of course, that's purely matter of taste and your 
proposed method wouldn't be worse by any means.)

Best

Adrian

> 
> >  endif
> > +
> >  ifeq ($(SUBTARGET),tiny)
> > -include ./tiny.mk
> > -include ./tiny-netgear.mk
> > -include ./tiny-tp-link.mk
> > +include tiny-netgear.mk
> > +include tiny-tp-link.mk
> >  endif
> > +
> >  $(eval $(call BuildImage))
> [...]


openpgp-digital-signature.asc
Description: PGP signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] [PATCH] treewide: simplify inclusion of subtarget image files

2020-06-07 Thread Matthias Schiffer
On 6/7/20 1:11 PM, Adrian Schmutzler wrote:
> Many target use a repetitive if-include scheme for their subtarget
> image files, though their names are consistent with the subtarget
> names.
> 
> This patch removes these redundant conditions and just uses the
> variable for the include where the target setup allows it.
> 
> For sunxi, this includes a trivial rename of the subtarget image
> Makefiles.
> 
> Signed-off-by: Adrian Schmutzler 
> ---
[...]
> diff --git a/target/linux/ath79/image/Makefile 
> b/target/linux/ath79/image/Makefile
> index 529baf8f57..a555cfc6d5 100644
> --- a/target/linux/ath79/image/Makefile
> +++ b/target/linux/ath79/image/Makefile
> @@ -68,20 +68,16 @@ define Device/Default
>   append-rootfs | pad-rootfs | append-metadata | check-size
>  endef
>  
> +include $(SUBTARGET).mk
> +
>  ifeq ($(SUBTARGET),generic)
> -include ./generic.mk
> -include ./generic-tp-link.mk
> -include ./generic-ubnt.mk
> -endif
> -ifeq ($(SUBTARGET),mikrotik)
> -include ./mikrotik.mk
> -endif
> -ifeq ($(SUBTARGET),nand)
> -include ./nand.mk
> +include generic-tp-link.mk
> +include generic-ubnt.mk

How about moving these lines into generic.mk, etc.? That way we could get
rid of the ifeq ($(SUBTARGET),...) completely.

>  endif
> +
>  ifeq ($(SUBTARGET),tiny)
> -include ./tiny.mk
> -include ./tiny-netgear.mk
> -include ./tiny-tp-link.mk
> +include tiny-netgear.mk
> +include tiny-tp-link.mk
>  endif
> +
>  $(eval $(call BuildImage))
[...]



signature.asc
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH] apm821xx: move device definitions to subfiles

2020-06-07 Thread Adrian Schmutzler
With several subtargets, the image/Makefile becomes crowded after a
while. Many targets have moved their device definitions to $subtarget.mk
files to have them more organized, let's do this here as well.

While at it, also move subtarget-specific build recipes.

Cc: Christian Lamparter 
Signed-off-by: Adrian Schmutzler 
---
 target/linux/apm821xx/image/Makefile | 159 +--
 target/linux/apm821xx/image/nand.mk  | 126 +
 target/linux/apm821xx/image/sata.mk  |  25 +
 3 files changed, 152 insertions(+), 158 deletions(-)
 create mode 100644 target/linux/apm821xx/image/nand.mk
 create mode 100644 target/linux/apm821xx/image/sata.mk

diff --git a/target/linux/apm821xx/image/Makefile 
b/target/linux/apm821xx/image/Makefile
index c26c015751..1b7c466a44 100644
--- a/target/linux/apm821xx/image/Makefile
+++ b/target/linux/apm821xx/image/Makefile
@@ -34,14 +34,6 @@ define Build/copy-file
cat "$(1)" > "$@"
 endef
 
-define Build/create-uImage-dtb
-   # flat_dt target expect FIT image - which WNDR4700's uboot doesn't 
support
-   -$(STAGING_DIR_HOST)/bin/mkimage -A $(LINUX_KARCH) \
-   -O linux -T kernel -C none \
-   -n '$(call toupper,$(LINUX_KARCH)) $(VERSION_DIST) 
Linux-$(LINUX_VERSION)' \
-   -d "$@.dtb" "$@.dtb.uimage"
-endef
-
 define Build/dtb
$(call Image/BuildDTB,../dts/$(DEVICE_DTS).dts,$@.dtb,,--space 
$(DTB_SIZE))
 endef
@@ -50,27 +42,6 @@ define Build/export-dtb
cp $(IMAGE_KERNEL).dtb $@
 endef
 
-define Build/hdd-img
-   ./mbl_gen_hdd_img.sh $@ $@.boot $(IMAGE_ROOTFS) 
$(CONFIG_TARGET_KERNEL_PARTSIZE) $(CONFIG_TARGET_ROOTFS_PARTSIZE)
-endef
-
-define Build/MerakiAdd-dtb
-   $(call Image/BuildDTB,../dts/$(DEVICE_DTS).dts,$@.dtb)
-   ( \
-   dd if=$@.dtb bs=$(DTB_SIZE) conv=sync; \
-   cat $@ ; \
-   ) > $@.new
-   @mv $@.new $@
-endef
-
-define Build/MerakiNAND
-   -$(STAGING_DIR_HOST)/bin/mkmerakifw \
-   -B $(BOARD_NAME) -s \
-   -i $@ \
-   -o $@.new
-   @cp $@.new $@
-endef
-
 define Build/MuImage-initramfs
rm -rf $@.fakerd $@.new
 
@@ -119,134 +90,6 @@ define Device/Default
   SUPPORTED_DEVICES = $(subst _,$(comma),$(1))
 endef
 
-ifeq ($(SUBTARGET),nand)
-
-define Device/meraki_mr24
-  DEVICE_VENDOR := Cisco Meraki
-  DEVICE_MODEL := MR24
-  DEVICE_PACKAGES := kmod-spi-gpio -swconfig
-  BOARD_NAME := mr24
-  DEVICE_DTS := meraki-mr24
-  IMAGES := sysupgrade.bin
-  DTB_SIZE := 64512
-  IMAGE_SIZE := 8191k
-  KERNEL := kernel-bin | lzma | uImage lzma | MerakiAdd-dtb | MerakiNAND
-  KERNEL_INITRAMFS := kernel-bin | lzma | dtb | MuImage-initramfs lzma
-  IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
-  UBINIZE_OPTS := -E 5
-  SUPPORTED_DEVICES += mr24
-endef
-TARGET_DEVICES += meraki_mr24
-
-define Device/meraki_mx60
-  DEVICE_VENDOR := Cisco Meraki
-  DEVICE_MODEL := MX60/MX60W
-  DEVICE_PACKAGES := kmod-spi-gpio kmod-usb-ledtrig-usbport kmod-usb-dwc2 \
-kmod-usb-storage block-mount
-  BOARD_NAME := mx60
-  DEVICE_DTS := meraki-mx60
-  BLOCKSIZE := 63k
-  IMAGES := sysupgrade.bin
-  DTB_SIZE := 64512
-  IMAGE_SIZE := 1021m
-  KERNEL_SIZE := 4031k
-  KERNEL := kernel-bin | gzip | uImage gzip | MerakiAdd-dtb | MerakiNAND
-  KERNEL_INITRAMFS := kernel-bin | gzip | dtb | MuImage-initramfs gzip
-  IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
-  UBINIZE_OPTS := -E 5
-  SUPPORTED_DEVICES += mx60
-endef
-TARGET_DEVICES += meraki_mx60
-
-define Device/netgear_wndap6x0
-  DEVICE_VENDOR := NETGEAR
-  DEVICE_PACKAGES := kmod-eeprom-at24
-  SUBPAGESIZE := 256
-  PAGESIZE := 512
-  BLOCKSIZE := 16k
-  DTB_SIZE := 32768
-  IMAGE_SIZE := 27392k
-  IMAGES := sysupgrade.bin factory.img
-  KERNEL_SIZE := 4032k
-  KERNEL := dtb | kernel-bin | gzip | MuImage-initramfs gzip
-  IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
-  IMAGE/factory.img := append-kernel | pad-to (KERNEL_SIZE) | append-ubi
-  UBINIZE_OPTS := -E 5
-endef
-
-define Device/netgear_wndap620
-  $(Device/netgear_wndap6x0)
-  DEVICE_MODEL := WNDAP620 (Premium Wireless-N)
-  DEVICE_DTS := netgear-wndap620
-endef
-TARGET_DEVICES += netgear_wndap620
-
-define Device/netgear_wndap660
-  $(Device/netgear_wndap6x0)
-  DEVICE_MODEL := WNDAP660 (Dual Radio Dual Band Wireless-N)
-  DEVICE_DTS := netgear-wndap660
-endef
-TARGET_DEVICES += netgear_wndap660
-
-define Device/netgear_wndr4700
-  DEVICE_VENDOR := NETGEAR
-  DEVICE_MODEL := Centria N900 WNDR4700/WNDR4720
-  DEVICE_PACKAGES := badblocks block-mount e2fsprogs kmod-hwmon-drivetemp \
-   kmod-dm kmod-fs-ext4 kmod-fs-vfat kmod-usb-ledtrig-usbport \
-   kmod-md-mod kmod-nls-cp437 kmod-nls-iso8859-1 kmod-nls-iso8859-15 \
-   kmod-nls-utf8 kmod-usb3 kmod-usb-dwc2 kmod-usb-storage \
-   partx-utils
-  BOARD_NAME := wndr4700
-  DEVICE_DTS := netgear-wndr4700
-  PAGESIZE := 2048
-  SUBPAGESIZE := 512
-  BLOCKSIZE := 128k
-  DTB_SIZE := 

[OpenWrt-Devel] [PATCH] bcm47xx: move device definitions to subfiles

2020-06-07 Thread Adrian Schmutzler
With several subtargets, the image/Makefile becomes crowded after a
while. Many targets have moved their device definitions to $subtarget.mk
files to have them more organized, let's do this here as well.

Cc: Rafał Miłecki 
Signed-off-by: Adrian Schmutzler 
---
 target/linux/bcm47xx/image/Makefile   | 854 +-
 target/linux/bcm47xx/image/generic.mk |  72 +++
 target/linux/bcm47xx/image/legacy.mk  | 292 +
 target/linux/bcm47xx/image/mips74k.mk | 482 +++
 4 files changed, 848 insertions(+), 852 deletions(-)
 create mode 100644 target/linux/bcm47xx/image/generic.mk
 create mode 100644 target/linux/bcm47xx/image/legacy.mk
 create mode 100644 target/linux/bcm47xx/image/mips74k.mk

diff --git a/target/linux/bcm47xx/image/Makefile 
b/target/linux/bcm47xx/image/Makefile
index 432e787cba..e08a3125bd 100644
--- a/target/linux/bcm47xx/image/Makefile
+++ b/target/linux/bcm47xx/image/Makefile
@@ -188,860 +188,10 @@ define Device/netgear
 endef
 
 #
-# Subtarget generic
+# Subtarget devices
 #
 
-ifeq ($(SUBTARGET),generic)
-  # BCM4705 with tg3
-define Device/linksys-wrt300n-v1.1
-  DEVICE_MODEL := WRT300N
-  DEVICE_VARIANT := v1.1
-  DEVICE_PACKAGES := kmod-tg3 kmod-b43
-  $(Device/linksys)
-  DEVICE_ID := EWC2
-  VERSION := 1.51.2
-endef
-TARGET_DEVICES += linksys-wrt300n-v1.1
-
-define Device/linksys-wrt310n-v1
-  DEVICE_MODEL := WRT310N
-  DEVICE_VARIANT := v1
-  DEVICE_PACKAGES := kmod-tg3 kmod-b43
-  $(Device/linksys)
-  DEVICE_ID := 310N
-  VERSION := 1.0.10
-endef
-TARGET_DEVICES += linksys-wrt310n-v1
-
-define Device/linksys-wrt350n-v1
-  DEVICE_MODEL := WRT350N
-  DEVICE_VARIANT := v1
-  DEVICE_PACKAGES := kmod-tg3 kmod-b43 $(USB2_PACKAGES)
-  $(Device/linksys)
-  DEVICE_ID := EWCG
-  VERSION := 1.04.1
-endef
-TARGET_DEVICES += linksys-wrt350n-v1
-
-define Device/linksys-wrt610n-v1
-  DEVICE_MODEL := WRT610N
-  DEVICE_VARIANT := v1
-  DEVICE_PACKAGES := kmod-tg3 kmod-b43 $(USB2_PACKAGES)
-  $(Device/linksys)
-  DEVICE_ID := 610N
-  VERSION := 1.0.1
-endef
-TARGET_DEVICES += linksys-wrt610n-v1
-
-  # BCMA SoC with SSB WiFi
-define Device/linksys-wrt610n-v2
-  DEVICE_MODEL := WRT610N
-  DEVICE_VARIANT := v2
-  DEVICE_PACKAGES := kmod-bgmac kmod-b43 $(USB2_PACKAGES)
-  $(Device/linksys)
-  DEVICE_ID := 610N
-  VERSION := 2.0.0
-endef
-TARGET_DEVICES += linksys-wrt610n-v2
-
-define Device/linksys-e3000-v1
-  DEVICE_MODEL := E3000
-  DEVICE_VARIANT := v1
-  DEVICE_PACKAGES := kmod-bgmac kmod-b43 $(USB2_PACKAGES)
-  $(Device/linksys)
-  DEVICE_ID := 61XN
-  VERSION := 1.0.3
-endef
-TARGET_DEVICES += linksys-e3000-v1
-
-# generic has Ethernet drivers as modules so overwrite standard image
-define Device/standard
-  DEVICE_TITLE := Image with LZMA loader and LZMA compressed kernel
-  DEVICE_PACKAGES := kmod-b44 kmod-bgmac kmod-tg3
-endef
-TARGET_DEVICES += standard
-endif
-
-#
-# Subtarget legacy
-#
-
-ifeq ($(SUBTARGET),legacy)
-
-define Device/asus-wl-300g
-  DEVICE_MODEL := WL-300g
-  DEVICE_PACKAGES := kmod-b43 kmod-b43legacy
-  $(Device/asus)
-  PRODUCTID := "WL300g  "
-endef
-TARGET_DEVICES += asus-wl-300g
-
-define Device/asus-wl-320gp
-  DEVICE_MODEL := WL-320gP
-  DEVICE_PACKAGES := kmod-b43
-  $(Device/asus)
-  PRODUCTID := "WL320gP "
-endef
-TARGET_DEVICES += asus-wl-320gp
-
-define Device/asus-wl-330ge
-  DEVICE_MODEL := WL-330gE
-  DEVICE_PACKAGES := kmod-b43
-  $(Device/asus)
-  PRODUCTID := "WL-330gE"
-endef
-TARGET_DEVICES += asus-wl-330ge
-
-define Device/asus-wl-500gd
-  DEVICE_MODEL := WL-500g Deluxe
-  DEVICE_PACKAGES := kmod-b43 $(USB2_PACKAGES)
-  $(Device/asus)
-  PRODUCTID := "WL500gx "
-endef
-TARGET_DEVICES += asus-wl-500gd
-
-define Device/asus-wl-500gp-v1
-  DEVICE_MODEL := WL-500gP
-  DEVICE_VARIANT := v1
-  DEVICE_PACKAGES := kmod-b43 $(USB2_PACKAGES)
-  $(Device/asus)
-  PRODUCTID := "WL500gp "
-endef
-TARGET_DEVICES += asus-wl-500gp-v1
-
-define Device/asus-wl-500gp-v2
-  DEVICE_MODEL := WL-500gP
-  DEVICE_VARIANT := v2
-  DEVICE_PACKAGES := kmod-b43 $(USB2_PACKAGES)
-  $(Device/asus)
-  PRODUCTID := "WL500gpv2   "
-endef
-TARGET_DEVICES += asus-wl-500gp-v2
-
-define Device/asus-wl-500w
-  DEVICE_MODEL := WL-500W
-  DEVICE_PACKAGES := kmod-b43 kmod-usb-uhci kmod-usb2-pci
-  $(Device/asus)
-  PRODUCTID := "WL500W  "
-endef
-TARGET_DEVICES += asus-wl-500w
-
-define Device/asus-wl-520gu
-  DEVICE_MODEL := WL-520gU
-  DEVICE_PACKAGES := kmod-b43 $(USB2_PACKAGES)
-  $(Device/asus)
-  PRODUCTID := "WL520gu "
-endef
-TARGET_DEVICES += asus-wl-520gu
-
-define Device/asus-wl-550ge
-  DEVICE_MODEL := WL-550gE
-  DEVICE_PACKAGES := kmod-b43
-  $(Device/asus)
-  PRODUCTID := "WL550gE "
-endef
-TARGET_DEVICES += asus-wl-550ge
-
-define Device/asus-wl-hdd25
-  DEVICE_MODEL := WL-HDD25
-  DEVICE_PACKAGES := kmod-b43 kmod-b43legacy 

[OpenWrt-Devel] [PATCH] treewide: simplify inclusion of subtarget image files

2020-06-07 Thread Adrian Schmutzler
Many target use a repetitive if-include scheme for their subtarget
image files, though their names are consistent with the subtarget
names.

This patch removes these redundant conditions and just uses the
variable for the include where the target setup allows it.

For sunxi, this includes a trivial rename of the subtarget image
Makefiles.

Signed-off-by: Adrian Schmutzler 
---
 target/linux/at91/image/Makefile  |  7 +--
 target/linux/ath79/image/Makefile | 20 ---
 target/linux/layerscape/image/Makefile|  8 +---
 target/linux/mvebu/image/Makefile | 12 +--
 target/linux/oxnas/image/Makefile |  8 +---
 target/linux/rockchip/image/Makefile  |  4 +---
 target/linux/sunxi/image/Makefile | 12 +--
 .../image/{cortex-a53.mk => cortexa53.mk} |  0
 .../sunxi/image/{cortex-a7.mk => cortexa7.mk} |  0
 .../sunxi/image/{cortex-a8.mk => cortexa8.mk} |  0
 target/linux/x86/image/Makefile   | 16 +--
 11 files changed, 15 insertions(+), 72 deletions(-)
 rename target/linux/sunxi/image/{cortex-a53.mk => cortexa53.mk} (100%)
 rename target/linux/sunxi/image/{cortex-a7.mk => cortexa7.mk} (100%)
 rename target/linux/sunxi/image/{cortex-a8.mk => cortexa8.mk} (100%)

diff --git a/target/linux/at91/image/Makefile b/target/linux/at91/image/Makefile
index adb7c6d0ba..ff801dae86 100644
--- a/target/linux/at91/image/Makefile
+++ b/target/linux/at91/image/Makefile
@@ -13,12 +13,7 @@ define Build/at91-install-zImage
 $(CP) $(KDIR)/zImage $@
 endef
 
-ifeq ($(SUBTARGET),sam9x)
-include ./sam9x.mk
-endif
-ifeq ($(SUBTARGET),sama5)
-include ./sama5.mk
-endif
+include $(SUBTARGET).mk
 
 AT91_SD_BOOT_PARTSIZE:=64
 FAT32_BLOCK_SIZE:=1024
diff --git a/target/linux/ath79/image/Makefile 
b/target/linux/ath79/image/Makefile
index 529baf8f57..a555cfc6d5 100644
--- a/target/linux/ath79/image/Makefile
+++ b/target/linux/ath79/image/Makefile
@@ -68,20 +68,16 @@ define Device/Default
append-rootfs | pad-rootfs | append-metadata | check-size
 endef
 
+include $(SUBTARGET).mk
+
 ifeq ($(SUBTARGET),generic)
-include ./generic.mk
-include ./generic-tp-link.mk
-include ./generic-ubnt.mk
-endif
-ifeq ($(SUBTARGET),mikrotik)
-include ./mikrotik.mk
-endif
-ifeq ($(SUBTARGET),nand)
-include ./nand.mk
+include generic-tp-link.mk
+include generic-ubnt.mk
 endif
+
 ifeq ($(SUBTARGET),tiny)
-include ./tiny.mk
-include ./tiny-netgear.mk
-include ./tiny-tp-link.mk
+include tiny-netgear.mk
+include tiny-tp-link.mk
 endif
+
 $(eval $(call BuildImage))
diff --git a/target/linux/layerscape/image/Makefile 
b/target/linux/layerscape/image/Makefile
index bc65748853..f5a5ad9980 100644
--- a/target/linux/layerscape/image/Makefile
+++ b/target/linux/layerscape/image/Makefile
@@ -43,12 +43,6 @@ define Build/traverse-fit
@mv -f $@.new $@
 endef
 
-ifeq ($(SUBTARGET),armv8_64b)
-include armv8_64b.mk
-endif
-
-ifeq ($(SUBTARGET),armv7)
-include armv7.mk
-endif
+include $(SUBTARGET).mk
 
 $(eval $(call BuildImage))
diff --git a/target/linux/mvebu/image/Makefile 
b/target/linux/mvebu/image/Makefile
index 3a47878069..cbf34c1bc8 100644
--- a/target/linux/mvebu/image/Makefile
+++ b/target/linux/mvebu/image/Makefile
@@ -138,16 +138,6 @@ define Device/NAND-512K
   PAGESIZE := 4096
 endef
 
-ifeq ($(SUBTARGET),cortexa9)
-include cortexa9.mk
-endif
-
-ifeq ($(SUBTARGET),cortexa53)
-include cortexa53.mk
-endif
-
-ifeq ($(SUBTARGET),cortexa72)
-include cortexa72.mk
-endif
+include $(SUBTARGET).mk
 
 $(eval $(call BuildImage))
diff --git a/target/linux/oxnas/image/Makefile 
b/target/linux/oxnas/image/Makefile
index 644c2b8795..abf83caa1a 100644
--- a/target/linux/oxnas/image/Makefile
+++ b/target/linux/oxnas/image/Makefile
@@ -4,12 +4,6 @@ include $(INCLUDE_DIR)/image.mk
 VMLINUX:=$(BIN_DIR)/$(IMG_PREFIX)-vmlinux
 UIMAGE:=$(BIN_DIR)/$(IMG_PREFIX)-uImage
 
-ifeq ($(SUBTARGET),ox810se)
-include ox810se.mk
-endif
-
-ifeq ($(SUBTARGET),ox820)
-include ox820.mk
-endif
+include $(SUBTARGET).mk
 
 $(eval $(call BuildImage))
diff --git a/target/linux/rockchip/image/Makefile 
b/target/linux/rockchip/image/Makefile
index 5f605ebfe5..22854d9d02 100644
--- a/target/linux/rockchip/image/Makefile
+++ b/target/linux/rockchip/image/Makefile
@@ -56,8 +56,6 @@ define Device/Default
   DEVICE_DTS = rockchip/$$(SOC)-$(lastword $(subst _, ,$(1)))
 endef
 
-ifeq ($(SUBTARGET),armv8)
-  include armv8.mk
-endif
+include $(SUBTARGET).mk
 
 $(eval $(call BuildImage))
diff --git a/target/linux/sunxi/image/Makefile 
b/target/linux/sunxi/image/Makefile
index 1b98849a50..01e9742b46 100644
--- a/target/linux/sunxi/image/Makefile
+++ b/target/linux/sunxi/image/Makefile
@@ -42,16 +42,6 @@ define Device/Default
   SUNXI_DTS = $$(SUNXI_DTS_DIR)$$(SOC)-$(lastword $(subst _, ,$(1)))
 endef
 
-ifeq ($(SUBTARGET),cortexa7)
-include cortex-a7.mk
-endif
-
-ifeq ($(SUBTARGET),cortexa8)
-include cortex-a8.mk
-endif
-
-ifeq ($(SUBTARGET),cortexa53)
-include 

[OpenWrt-Devel] Internal switch problem on Asus RT-AC85P.

2020-06-07 Thread David Woodhouse
I've just set up a new RT-AC85P as one of three access points on my
network, and it seems to be having problems with wireless clients which
have roamed to it (or just newly associated to it) after being on one
of the other APs.

Incoming packets to the new wireless client aren't being received on
the 'wan' port of the RT-AC85P. It's as if the internal switch has
learned that that MAC address is out on the wired network, so the
packets aren't being delivered to the CPU port.

If I plug in a USB Ethernet instead and connect to the house network
using that, everything works.

Has anyone else used this in a multi-AP setup where a given MAC address
might previously have been seen on the wired side? 

https://bugs.openwrt.org/index.php?do=details_id=3155


smime.p7s
Description: S/MIME cryptographic signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH 1/4 v5] bcm63xx: kernel: add BCM63167 cpuid variant

2020-06-07 Thread Daniel González Cabanelas
The BCM63167 is a BCM63268 SoC with a different physical packaging.

Add the CPU ID to allow supporting routers with this SoC (i.e Sercomm
H500-s)

Signed-off-by: Daniel González Cabanelas 
---
Changes in v2: none
Changes in v3: none
Changes in v4: none
Changes in v5: none

 ...IPS-BCM63XX-add-support-for-BCM63268.patch | 18 --
 ...MIPS-BCM63XX-add-support-for-BCM6318.patch | 10 
 .../431-MIPS-BCM63XX-add-nand-rset.patch  | 24 +--
 3 files changed, 28 insertions(+), 24 deletions(-)

diff --git 
a/target/linux/bcm63xx/patches-5.4/339-MIPS-BCM63XX-add-support-for-BCM63268.patch
 
b/target/linux/bcm63xx/patches-5.4/339-MIPS-BCM63XX-add-support-for-BCM63268.patch
index efd5f10534..aba4b9415a 100644
--- 
a/target/linux/bcm63xx/patches-5.4/339-MIPS-BCM63XX-add-support-for-BCM63268.patch
+++ 
b/target/linux/bcm63xx/patches-5.4/339-MIPS-BCM63XX-add-support-for-BCM63268.patch
@@ -242,10 +242,11 @@ Signed-off-by: Jonas Gorski 
  
switch (bcm63xx_cpu_id) {
case BCM3368_CPU_ID:
-@@ -400,6 +442,15 @@ void __init bcm63xx_cpu_init(void)
+@@ -400,6 +442,16 @@ void __init bcm63xx_cpu_init(void)
/* BCM6369 is a BCM6368 without xDSL, so treat it the same */
bcm63xx_cpu_id = BCM6368_CPU_ID;
break;
++  case BCM63167_CPU_ID:
 +  case BCM63168_CPU_ID:
 +  case BCM63169_CPU_ID:
 +  case BCM63268_CPU_ID:
@@ -353,10 +354,11 @@ Signed-off-by: Jonas Gorski 
return 0;
 --- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h
 +++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h
-@@ -22,6 +22,10 @@
+@@ -22,6 +22,11 @@
  #define BCM6362_CPU_ID0x6362
  #define BCM6368_CPU_ID0x6368
  #define BCM6369_CPU_ID0x6369
++#define BCM63167_CPU_ID   0x63167
 +#define BCM63168_CPU_ID   0x63168
 +#define BCM63169_CPU_ID   0x63169
 +#define BCM63268_CPU_ID   0x63268
@@ -364,7 +366,7 @@ Signed-off-by: Jonas Gorski 
  
  void __init bcm63xx_cpu_init(void);
  u32 bcm63xx_get_cpu_variant(void);
-@@ -62,6 +66,10 @@ static inline u32 __pure __bcm63xx_get_c
+@@ -62,6 +67,10 @@ static inline u32 __pure __bcm63xx_get_c
  #ifdef CONFIG_BCM63XX_CPU_6368
case BCM6368_CPU_ID:
  #endif
@@ -375,7 +377,7 @@ Signed-off-by: Jonas Gorski 
break;
default:
unreachable();
-@@ -87,6 +95,7 @@ static inline u32 __pure bcm63xx_get_cpu
+@@ -87,6 +96,7 @@ static inline u32 __pure bcm63xx_get_cpu
  #define BCMCPU_IS_6358()  (bcm63xx_get_cpu_id() == BCM6358_CPU_ID)
  #define BCMCPU_IS_6362()  (bcm63xx_get_cpu_id() == BCM6362_CPU_ID)
  #define BCMCPU_IS_6368()  (bcm63xx_get_cpu_id() == BCM6368_CPU_ID)
@@ -383,10 +385,12 @@ Signed-off-by: Jonas Gorski 
  
  #define BCMCPU_VARIANT_IS_3368() \
(bcm63xx_get_cpu_variant() == BCM3368_CPU_ID)
-@@ -110,6 +119,14 @@ static inline u32 __pure bcm63xx_get_cpu
+@@ -110,6 +120,16 @@ static inline u32 __pure bcm63xx_get_cpu
(bcm63xx_get_cpu_variant() == BCM6368_CPU_ID)
  #define BCMCPU_VARIANT_IS_6369() \
(bcm63xx_get_cpu_variant() == BCM6369_CPU_ID)
++#define BCMCPU_VARIANT_IS_63167() \
++  (bcm63xx_get_cpu_variant() == BCM63167_CPU_ID)
 +#define BCMCPU_VARIANT_IS_63168() \
 +  (bcm63xx_get_cpu_variant() == BCM63168_CPU_ID)
 +#define BCMCPU_VARIANT_IS_63169() \
@@ -398,7 +402,7 @@ Signed-off-by: Jonas Gorski 
  
  /*
   * While registers sets are (mostly) the same across 63xx CPU, base
-@@ -574,6 +591,52 @@ enum bcm63xx_regs_set {
+@@ -574,6 +594,52 @@ enum bcm63xx_regs_set {
  #define BCM_6368_RNG_BASE (0xb0004180)
  #define BCM_6368_MISC_BASE(0xdeadbeef)
  
@@ -451,7 +455,7 @@ Signed-off-by: Jonas Gorski 
  
  extern const unsigned long *bcm63xx_regs_base;
  
-@@ -1042,6 +1105,73 @@ enum bcm63xx_irq {
+@@ -1042,6 +1108,73 @@ enum bcm63xx_irq {
  #define BCM_6368_EXT_IRQ4 (IRQ_INTERNAL_BASE + 24)
  #define BCM_6368_EXT_IRQ5 (IRQ_INTERNAL_BASE + 25)
  
diff --git 
a/target/linux/bcm63xx/patches-5.4/341-MIPS-BCM63XX-add-support-for-BCM6318.patch
 
b/target/linux/bcm63xx/patches-5.4/341-MIPS-BCM63XX-add-support-for-BCM6318.patch
index 5b05fa6bd5..a022f8c5f0 100644
--- 
a/target/linux/bcm63xx/patches-5.4/341-MIPS-BCM63XX-add-support-for-BCM6318.patch
+++ 
b/target/linux/bcm63xx/patches-5.4/341-MIPS-BCM63XX-add-support-for-BCM6318.patch
@@ -327,7 +327,7 @@ Subject: [PATCH 51/53] MIPS: BCM63XX: add support for 
BCM6318
  #define BCM6328_CPU_ID0x6328
  #define BCM63281_CPU_ID   0x63281
  #define BCM63283_CPU_ID   0x63283
-@@ -39,6 +40,10 @@ static inline u32 __pure __bcm63xx_get_c
+@@ -40,6 +41,10 @@ static inline u32 __pure __bcm63xx_get_c
case BCM3368_CPU_ID:
  #endif
  
@@ -338,7 +338,7 @@ Subject: [PATCH 51/53] MIPS: BCM63XX: add support for 
BCM6318
  #ifdef CONFIG_BCM63XX_CPU_6328
case BCM6328_CPU_ID:
  

[OpenWrt-Devel] [PATCH 2/4 v5] bcm63xx: image: don't add the CFE to the sercomm factory

2020-06-07 Thread Daniel González Cabanelas
There is no need to include the CFE bootloader in the Sercomm factory
images.

There might be a case when this could be useful:
  - We are running the stock firmware on the first Sercomm image
  - The second partition storing the botloader was erased (unlikely)
Even in this case flashing an image without a bootlader is harmless.

Don't include the bootloader in the factory image creation and rid of the
risk of flashing factory images with an untested bootloader partition.

Signed-off-by: Daniel González Cabanelas 
---
Changes in v2: refresh
Changes in v3: none
Changes in v4: none
Changes in v5: none

 target/linux/bcm63xx/image/Makefile | 12 
 1 file changed, 12 deletions(-)

diff --git a/target/linux/bcm63xx/image/Makefile 
b/target/linux/bcm63xx/image/Makefile
index 0593dacb44..5ec31f6207 100644
--- a/target/linux/bcm63xx/image/Makefile
+++ b/target/linux/bcm63xx/image/Makefile
@@ -218,20 +218,8 @@ define Build/cfe-sercomm-part
--part-name rootfs_lib \
--part-version $(SERCOMM_VERSION)
 
-   rm -rf $@-bootloader
-   mkdir -p $@-bootloader
-   cp $(KDIR)/bcm63xx-cfe/$(CFE_RAM_FILE) 
$@-bootloader/$(CFE_RAM_JFFS2_NAME)
-   $(call Build/cfe-jffs2,$@-bootloader)
-   $(call Build/pad-to,$(BLOCKSIZE))
-   $(TOPDIR)/scripts/sercomm-partition-tag.py \
-   --input-file $@ \
-   --output-file $@.bootloader \
-   --part-name bootloader \
-   --part-version $(SERCOMM_VERSION)
-
mv $@.kernel_rootfs $@
dd if=$@.rootfs_lib >> $@
-   dd if=$@.bootloader >> $@
 endef
 
 define Build/cfe-sercomm-load
-- 
2.27.0



___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH 4/4 v5] bcm63xx: add support for the Sercomm H500-s

2020-06-07 Thread Daniel González Cabanelas
Sercomm H500-s is an xDSL dual band wireless router based on Broadcom
BCM63167 SoC.

Hardware:
   SoC:  Broadcom BCM63167
   CPU:  BMIPS4350 V8.0, 400 MHz, 2 cores
   Flash:NAND 128 MiB
   RAM:  DDR3 128 MiB
   Ethernet: 4x 10/100/1000 Mbps
   Switch:   BCM53134S
   Wireless: 802.11b/g/n: BCM435f (integrated)
 802.11ac:Quantenna QT3740BC (onboard SoC)
   USB:  1x 2.0
   LEDs/Buttons: 11x / 2x

Flash instruction, web UI:
  1. Reset to defaults using the reset button if the admin password is 
 unknown
  2. Login into the web UI as admin.
 Address:  http://192.168.0.1
 User: admin
 Password: VF-ESVodafone-H-500-s or l033i-h500s
  3. Go to Settings -> Firmware Update, and select the Openwrt factory
 firmware
  4. Update the firmware.
  5. Wait until it finish, the device will reboot with Openwrt installed
 on the alternative image partitions keeping the stock firmware in 
 the former.

Notes:
  - The patch also adds support for the lowi version. Only the factory
firmware is different.
  - The integrated Wifi in the Broadcom Soc isn't still supported. 
  - The Quantenna 802.11ac wifi works ok, but needs to be configured with
the Quantenna client application. It can't be configured with Luci
nor any iw command since it's a separated subsystem linked via
ethernet.
  - The BCM53134S external switch is managed via MDIO which isn't
supported in this target. Therefore it will behave as a dumb switch.

Signed-off-by: Daniel González Cabanelas 
---
Changes in v2:
  - Fixed passwords in commit log
  - Added unsupported switch in dts
  - Added custom LOADER_ENTRY to fix the ramdisk for this specific device
  - Removed unneded b43 package
  - Cosmetic changes
Changes in v3:
  - Device splitted: lowi, vfes
  - Removed unsupported switch in dts
  - Cosmetic changes
Changes in v4:
  - Fixed commit log
  - Cosmetic changes
Changes in v5:
  - Added missing "bcm63167" dt compatible
  - Cosmetic changes

 .../bcm63xx/base-files/etc/board.d/01_leds|   4 +
 .../bcm63xx/base-files/etc/board.d/02_network |   4 +
 .../base-files/lib/upgrade/platform.sh|   8 +-
 .../dts/bcm63167-sercomm-h500-s-lowi.dts  |  15 ++
 .../dts/bcm63167-sercomm-h500-s-vfes.dts  |  15 ++
 .../bcm63xx/dts/bcm63167-sercomm-h500-s.dtsi  | 194 ++
 target/linux/bcm63xx/image/bcm63xx_nand.mk|  54 +
 .../bcm63xx/patches-5.4/568-board-H500s.patch |  69 +++
 8 files changed, 361 insertions(+), 2 deletions(-)
 create mode 100644 target/linux/bcm63xx/dts/bcm63167-sercomm-h500-s-lowi.dts
 create mode 100644 target/linux/bcm63xx/dts/bcm63167-sercomm-h500-s-vfes.dts
 create mode 100644 target/linux/bcm63xx/dts/bcm63167-sercomm-h500-s.dtsi
 create mode 100644 target/linux/bcm63xx/patches-5.4/568-board-H500s.patch

diff --git a/target/linux/bcm63xx/base-files/etc/board.d/01_leds 
b/target/linux/bcm63xx/base-files/etc/board.d/01_leds
index 91d67f0c0b..cdaf0e77c9 100755
--- a/target/linux/bcm63xx/base-files/etc/board.d/01_leds
+++ b/target/linux/bcm63xx/base-files/etc/board.d/01_leds
@@ -100,6 +100,10 @@ sercomm,ad1018)
 sercomm,ad1018-nor)
ucidef_set_led_netdev "wlan0" "WLAN" "AD1018:green:wifi" "wlan0"
;;
+sercomm,h500-s-lowi|\
+sercomm,h500-s-vfes)
+   ucidef_set_led_netdev "wan" "WAN" "h500-s:green:internet" "eth0.2"
+   ;;
 telsey,cpva502plus)
ucidef_set_led_netdev "lan" "LAN" "CPVA502+:amber:link" "eth0"
;;
diff --git a/target/linux/bcm63xx/base-files/etc/board.d/02_network 
b/target/linux/bcm63xx/base-files/etc/board.d/02_network
index 784af29cb4..f02eabe68f 100755
--- a/target/linux/bcm63xx/base-files/etc/board.d/02_network
+++ b/target/linux/bcm63xx/base-files/etc/board.d/02_network
@@ -142,6 +142,10 @@ sercomm,ad1018-nor)
ucidef_add_switch "switch0" \
"1:lan:3" "2:lan:2" "3:lan:1" "0:wan" "8t@eth0"
;;
+sercomm,h500-s-lowi|\
+sercomm,h500-s-vfes)
+   ucidef_add_switch "switch0" "4:lan" "3:wan" "8t@eth0"
+   ;;
 sfr,neufbox-6-sercomm-r0)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9t@eth0"
diff --git a/target/linux/bcm63xx/base-files/lib/upgrade/platform.sh 
b/target/linux/bcm63xx/base-files/lib/upgrade/platform.sh
index 7d416297dd..525d3b90b5 100644
--- a/target/linux/bcm63xx/base-files/lib/upgrade/platform.sh
+++ b/target/linux/bcm63xx/base-files/lib/upgrade/platform.sh
@@ -9,7 +9,9 @@ platform_check_image() {
comtrend,vr-3032u|\
huawei,hg253s-v2|\
netgear,dgnd3700-v2|\
-   sercomm,ad1018)
+   sercomm,ad1018|\
+   sercomm,h500-s-lowi|\
+   sercomm,h500-s-vfes)
# NAND sysupgrade
return 0
;;
@@ -69,7 +71,9 @@ platform_do_upgrade() {
comtrend,vr-3032u|\
huawei,hg253s-v2|\

[OpenWrt-Devel] [PATCH 3/4 v5] bcm63xx: image: allow to pass the addr to the NAND kernel header

2020-06-07 Thread Daniel González Cabanelas
Not all CFEs will need to relocate the kernel (i.e H500-s), therefore
we'll need to pass a different address and not the LOADER_ENTRY.

Let to pass the addr to the image creation when neccessary.

Signed-off-by: Daniel González Cabanelas 
---
Changes in v2: refresh
Changes in v3: none
Changes in v4: none
Changes in v5: none

 target/linux/bcm63xx/image/Makefile | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/target/linux/bcm63xx/image/Makefile 
b/target/linux/bcm63xx/image/Makefile
index c962e531a9..0593dacb44 100644
--- a/target/linux/bcm63xx/image/Makefile
+++ b/target/linux/bcm63xx/image/Makefile
@@ -172,8 +172,8 @@ define Build/cfe-jffs2-kernel
$(TOPDIR)/scripts/cfe-bin-header.py \
--input-file $@ \
--output-file $@-kernel/vmlinux.lz \
-   --load-addr $(LOADER_ENTRY) \
-   --entry-addr $(LOADER_ENTRY)
+   --load-addr $(if $(1),$(1),$(LOADER_ENTRY)) \
+   --entry-addr $(if $(1),$(1),$(LOADER_ENTRY))
 
# The JFFS2 partition creation should result in the following
# layout:
-- 
2.27.0



___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel