From 1c6d45644a54e50b6445bbc63eff1ae34b2f1e2e Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Mon, 21 Sep 2020 17:56:04 +0200 Subject: [PATCH 01/19] mac80211: fix regression in station connection monitor optimization When the nulldata frame was acked, the probe send count needs to be reset, otherwise it will keep increasing until the connection is considered dead, even though it fine. Reported-by: Georgi Valkov Signed-off-by: Felix Fietkau --- ...regression-in-sta-connection-monitor.patch | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 package/kernel/mac80211/patches/subsys/332-mac80211-fix-regression-in-sta-connection-monitor.patch diff --git a/package/kernel/mac80211/patches/subsys/332-mac80211-fix-regression-in-sta-connection-monitor.patch b/package/kernel/mac80211/patches/subsys/332-mac80211-fix-regression-in-sta-connection-monitor.patch new file mode 100644 index 0000000000..787883e217 --- /dev/null +++ b/package/kernel/mac80211/patches/subsys/332-mac80211-fix-regression-in-sta-connection-monitor.patch @@ -0,0 +1,26 @@ +From: Felix Fietkau +Date: Mon, 21 Sep 2020 17:43:06 +0200 +Subject: [PATCH] mac80211: fix regression in sta connection monitor + +When the nulldata frame was acked, the probe send count needs to be reset, +otherwise it will keep increasing until the connection is considered dead, +even though it fine. + +Fixes: 9abf4e49830d ("mac80211: optimize station connection monitor") +Reported-by: Georgi Valkov +Signed-off-by: Felix Fietkau +--- + +--- a/net/mac80211/mlme.c ++++ b/net/mac80211/mlme.c +@@ -2508,7 +2508,9 @@ void ieee80211_sta_tx_notify(struct ieee + !sdata->u.mgd.probe_send_count) + return; + +- if (!ack) ++ if (ack) ++ sdata->u.mgd.probe_send_count = 0; ++ else + sdata->u.mgd.nullfunc_failed = true; + ieee80211_queue_work(&sdata->local->hw, &sdata->work); + } From 81d895d1f13c0eeff4378579adcca890e5bf6da8 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Mon, 21 Sep 2020 13:47:57 +0100 Subject: [PATCH 02/19] libselinux: split utility packages and add PKG_LICENSE Split utility packages similar to coreutils in packages feed, adding ALTERNATIVES for those which are also provided by busybox-selinux. Also add missing license information. Signed-off-by: Daniel Golle --- package/libs/libselinux/Makefile | 89 ++++++++++++++++++++++++++------ 1 file changed, 74 insertions(+), 15 deletions(-) diff --git a/package/libs/libselinux/Makefile b/package/libs/libselinux/Makefile index 450bdfbf3b..20d9225d39 100644 --- a/package/libs/libselinux/Makefile +++ b/package/libs/libselinux/Makefile @@ -7,26 +7,71 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libselinux PKG_VERSION:=3.1 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://github.com/SELinuxProject/selinux/releases/download/20200710 PKG_HASH:=ea5dcbb4d859e3f999c26a13c630da2f16dff9462e3cc8cb7b458ac157d112e7 HOST_BUILD_DEPENDS:=libsepol/host pcre/host +PKG_LICENSE:=libselinux-1.0 +PKG_LICENSE_FILES:=LICENSE PKG_MAINTAINER:=Thomas Petazzoni include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/host-build.mk -define Package/libselinux - SECTION:=libs - DEPENDS:=+libsepol +libpcre +musl-fts - CATEGORY:=Libraries +LIBSELINUX_UTILS := \ + avcstat \ + compute_av \ + compute_create \ + compute_member \ + compute_relabel \ + getconlist \ + getdefaultcon \ + getenforce \ + getfilecon \ + getpidcon \ + getsebool \ + getseuser \ + matchpathcon \ + policyvers \ + sefcontext_compile \ + selabel_digest \ + selabel_get_digests_all_partial_matches \ + selabel_lookup \ + selabel_lookup_best_match \ + selabel_partial_match \ + selinux_check_access \ + selinux_check_securetty_context \ + selinuxenabled \ + selinuxexeccon \ + setenforce \ + setfilecon \ + togglesebool \ + validatetrans + +LIBSELINUX_ALTS := \ + getenforce \ + getsebool \ + matchpathcon \ + selinuxenabled \ + setenforce + +$(eval $(foreach a,$(LIBSELINUX_ALTS),ALTS_$(a):=300:/usr/sbin/$(a):/usr/sbin/libselinux-$(a)$(newline))) + +define Package/libselinux/Default TITLE:=Runtime SELinux library URL:=http://selinuxproject.org/page/Main_Page endef +define Package/libselinux + $(call Package/libselinux/Default) + SECTION:=libs + CATEGORY:=Libraries + DEPENDS:=+libsepol +libpcre +musl-fts +endef + define Package/libselinux/description libselinux is the runtime SELinux library that provides interfaces (e.g. library functions for the SELinux kernel @@ -37,14 +82,24 @@ define Package/libselinux/description older version supported by the kernel) when loading policy. endef -define Package/libselinux-utils - SECTION:=utils - DEPENDS:=+libselinux - CATEGORY:=Utilities - TITLE:=Runtime SELinux utilities - URL:=http://selinuxproject.org/page/Main_Page +define GenUtilPkg + define Package/$(1) + $(call Package/libselinux/Default) + TITLE+= $(2) utility + SECTION:=utils + DEPENDS:=+libselinux + CATEGORY:=Utilities + SUBMENU:=libselinux tools + ALTERNATIVES:=$(ALTS_$(2)) + endef + + define Package/$(1)/description + libselinux version of the $(2) utility. + endef endef +$(foreach a,$(LIBSELINUX_UTILS),$(eval $(call GenUtilPkg,libselinux-$(a),$(a)))) + # Needed to link libselinux utilities, which link against # libselinux.so, which indirectly depends on libpcre.so, installed in # $(STAGING_DIR_HOSTPKG). @@ -83,11 +138,15 @@ define Package/libselinux/install $(CP) $(PKG_INSTALL_DIR)/usr/lib/libselinux.so.* $(1)/usr/lib/ endef -define Package/libselinux-utils/install - $(INSTALL_DIR) $(1)/usr/sbin - $(CP) $(PKG_INSTALL_DIR)/usr/sbin/* $(1)/usr/sbin +define BuildUtil + define Package/$(1)/install + $(INSTALL_DIR) $$(1)/usr/sbin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/$(2) $$(1)/usr/sbin/$(if $(ALTS_$(2)),libselinux-$(2),$(2)) + endef + + $$(eval $$(call BuildPackage,$(1))) endef $(eval $(call HostBuild)) $(eval $(call BuildPackage,libselinux)) -$(eval $(call BuildPackage,libselinux-utils)) +$(foreach a,$(LIBSELINUX_UTILS),$(eval $(call BuildUtil,libselinux-$(a),$(a)))) From 7817c831ef8aba187b7a824166378f6d9d6c1ab1 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Mon, 21 Sep 2020 18:12:24 +0100 Subject: [PATCH 03/19] policycoreutils: break into smaller packages Instead of vaguely describing dependencies in the package description actually split-up into individual packages, each with their dependencies expressed accurately. Signed-off-by: Daniel Golle --- package/utils/policycoreutils/Makefile | 161 +++++++++++++++++-------- 1 file changed, 113 insertions(+), 48 deletions(-) diff --git a/package/utils/policycoreutils/Makefile b/package/utils/policycoreutils/Makefile index 34c186e62e..3fd0e39081 100644 --- a/package/utils/policycoreutils/Makefile +++ b/package/utils/policycoreutils/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=policycoreutils PKG_VERSION:=3.1 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://github.com/SELinuxProject/selinux/releases/download/20200710 @@ -23,62 +23,127 @@ PKG_LICENSE_FILES:=COPYING include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/nls.mk - -define Package/policycoreutils - SECTION:=utils - CATEGORY:=Utilities - DEPENDS:= +libsemanage +libcap-ng +BUSYBOX_CONFIG_PAM:libpam $(INTL_DEPENDS) - TITLE:=SELinux policy utilities - URL:=http://selinuxproject.org/page/Main_Page - ALTERNATIVES:=\ - 300:/sbin/restorecon:policycoreutils-restorecon \ - 300:/sbin/setfiles:policycoreutils-setfiles \ - 300:/usr/sbin/load_policy:policycoreutils-load_policy \ - 300:/usr/sbin/sestatus:policycoreutils-sestatus \ - 300:/usr/sbin/setsebool:policycoreutils-setsebool -endef - -define Package/policycoreutils/description - Policycoreutils is a collection of policy utilities - (originally the "core" set of utilities needed to use - SELinux, although it has grown a bit over time), which have - different dependencies. sestatus, secon, run_init, and - newrole only use libselinux. load_policy and setfiles only - use libselinux and libsepol. semodule and semanage use - libsemanage (and thus bring in dependencies on libsepol and - libselinux as well). setsebool uses libselinux to make - non-persistent boolean changes (via the kernel interface) - and uses libsemanage to make persistent boolean changes. -endef - include $(INCLUDE_DIR)/host-build.mk +DIR_SBIN:= \ + restorecon \ + setfiles + +DIR_USR_BIN:= \ + newrole \ + secon + +DIR_USR_SBIN:= \ + load_policy \ + sestatus \ + setsebool + +LIBEXEC_UTILS := \ + pp + +SBIN_UTILS:= \ + restorecon_xattr \ + restorecon \ + setfiles + +USR_BIN_UTILS:= \ + newrole \ + secon + +USR_SBIN_UTILS:= \ + fixfiles \ + genhomedircon \ + open_init_pty \ + run_init \ + semodule \ + load_policy \ + sestatus \ + setsebool + +TARGET_LDFLAGS += $(INTL_LDFLAGS) $(if $(INTL_FULL),-lintl) + +MAKE_FLAGS += \ + PAMH=$(CONFIG_BUSYBOX_CONFIG_PAM) + HOST_MAKE_FLAGS += \ PAMH=$(CONFIG_BUSYBOX_CONFIG_PAM) \ PREFIX=$(STAGING_DIR_HOSTPKG) \ SBINDIR=$(STAGING_DIR_HOSTPKG)/sbin \ ETCDIR=$(STAGING_DIR_HOSTPKG)/etc -MAKE_FLAGS += \ - PAMH=$(CONFIG_BUSYBOX_CONFIG_PAM) +$(eval $(foreach a,$(DIR_SBIN),ALTS_$(a):=300:/sbin/$(a):/sbin/policycoreutils-$(a)$(newline))) +$(eval $(foreach a,$(DIR_USR_BIN),ALTS_$(a):=300:/usr/bin/$(a):/usr/bin/policycoreutils-$(a)$(newline))) +$(eval $(foreach a,$(DIR_USR_SBIN),ALTS_$(a):=300:/usr/sbin/$(a):/usr/sbin/policycoreutils-$(a)$(newline))) -define Package/policycoreutils/install - $(INSTALL_DIR) $(1)/sbin - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/sbin/restorecon_xattr $(1)/sbin/restorecon_xattr - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/sbin/restorecon $(1)/sbin/policycoreutils-restorecon - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/sbin/setfiles $(1)/sbin/policycoreutils-setfiles - $(INSTALL_DIR) $(1)/usr/sbin - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/fixfiles $(1)/usr/sbin/ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/genhomedircon $(1)/usr/sbin/ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/open_init_pty $(1)/usr/sbin/ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/run_init $(1)/usr/sbin/ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/semodule $(1)/usr/sbin/ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/load_policy $(1)/usr/sbin/policycoreutils-load_policy - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/sestatus $(1)/usr/sbin/policycoreutils-sestatus - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/setsebool $(1)/usr/sbin/policycoreutils-setsebool - $(INSTALL_DIR) $(1)/usr/bin - $(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ +DEPENDS_genhomedircon:=+libsemanage $(INTL_DEPENDS) +DEPENDS_load_policy:=+libselinux $(INTL_DEPENDS) +DEPENDS_newrole:=+libselinux +libaudit +BUSYBOX_CONFIG_PAM:libpam $(INTL_DEPENDS) +DEPENDS_open_init_pty:=$(INTL_DEPENDS) +DEPENDS_pp:=+libsepol $(INTL_DEPENDS) +DEPENDS_restorecon_xattr:=+libselinux +libsepol +libaudit $(INTL_DEPENDS) +DEPENDS_restorecon:=+libselinux +libsepol +libaudit $(INTL_DEPENDS) +DEPENDS_run_init:=+libselinux +libaudit +BUSYBOX_CONFIG_PAM:libpam $(INTL_DEPENDS) +DEPENDS_secon:=+libselinux $(INTL_DEPENDS) +DEPENDS_semanage:=+libsemanage +DEPENDS_semodule:=+libsemanage $(INTL_DEPENDS) +DEPENDS_sestatus:=+libselinux $(INTL_DEPENDS) +DEPENDS_setfiles:=+libselinux +libsepol +libaudit $(INTL_DEPENDS) +DEPENDS_setsebool:=+libsemanage $(INTL_DEPENDS) + +define Package/policycoreutils/Default + SECTION:=utils + CATEGORY:=Utilities + TITLE:=SELinux policy utility + URL:=http://selinuxproject.org/page/Main_Page +endef + +define Package/policycoreutils + $(call Package/policycoreutils/Default) + MENU:=1 + TITLE+= common files +endef + +define GenUtilPkg + define Package/$(1) + $(call Package/policycoreutils/Default) + DEPENDS+= policycoreutils $(DEPENDS_$(2)) + TITLE+= $(2) + ALTERNATIVES:=$(ALTS_$(2)) + endef + + define Package/$(1)/description +Policycoreutils is a collection of policy utilities +(originally the "core" set of utilities needed to use +SELinux, although it has grown a bit over time). + +This package provides the $(2) utility. + endef +endef + +$(foreach a,$(LIBEXEC_UTILS) $(SBIN_UTILS) $(USR_BIN_UTILS) $(USR_SBIN_UTILS),$(eval $(call GenUtilPkg,policycoreutils-$(a),$(a)))) + +define Package/policycoreutils/install + $(INSTALL_DIR) $(1)/etc + $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/sestatus.conf $(1)/etc +ifdef CONFIG_BUSYBOX_CONFIG_PAM + $(INSTALL_DIR) $(1)/etc/pam.d + $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/pam.d/run_init $(1)/etc/pam.d + $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/pam.d/newrole $(1)/etc/pam.d +endif +endef + +define BuildUtil + define Package/$(1)/install + $(INSTALL_DIR) $$(1)$(2) + $(INSTALL_BIN) $$(PKG_INSTALL_DIR)$(2)/$(3) $$(1)$(2) + endef + + $$(eval $$(call BuildPackage,$(1))) endef -$(eval $(call HostBuild)) $(eval $(call BuildPackage,policycoreutils)) +$(foreach a,$(SBIN_UTILS),$(eval $(call BuildUtil,policycoreutils-$(a),/sbin,$(a)))) +$(foreach a,$(USR_BIN_UTILS),$(eval $(call BuildUtil,policycoreutils-$(a),/usr/bin,$(a)))) +$(foreach a,$(USR_SBIN_UTILS),$(eval $(call BuildUtil,policycoreutils-$(a),/usr/sbin,$(a)))) +$(foreach a,$(LIBEXEC_UTILS),$(eval $(call BuildUtil,policycoreutils-$(a),/usr/libexec/selinux/hll,$(a)))) +$(eval $(call HostBuild)) From 236e79abb72e22c6e87110a7b0e5288cf3b48efa Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Mon, 21 Sep 2020 18:51:37 +0100 Subject: [PATCH 04/19] policycoreutils: fix ALTERNATIVES install location Fixes: 7817c831ef ("policycoreutils: break into smaller packages") Signed-off-by: Daniel Golle --- package/utils/policycoreutils/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package/utils/policycoreutils/Makefile b/package/utils/policycoreutils/Makefile index 3fd0e39081..03b3fd4879 100644 --- a/package/utils/policycoreutils/Makefile +++ b/package/utils/policycoreutils/Makefile @@ -135,7 +135,7 @@ endef define BuildUtil define Package/$(1)/install $(INSTALL_DIR) $$(1)$(2) - $(INSTALL_BIN) $$(PKG_INSTALL_DIR)$(2)/$(3) $$(1)$(2) + $(INSTALL_BIN) $$(PKG_INSTALL_DIR)$(2)/$(3) $$(1)$(2)/$(if $(ALTS_$(3)),policycoreutils-$(3),$(3)) endef $$(eval $$(call BuildPackage,$(1))) From ec80139629f1087d67f5956caf92b2320c5b54e9 Mon Sep 17 00:00:00 2001 From: Stijn Segers Date: Sun, 20 Sep 2020 23:03:32 +0200 Subject: [PATCH 05/19] odhcpd: number UCI defaults script UCI defaults scripts are supposed to be numbered, but odhcpd's lacked numbering, which turned out to mess up my custom scripts numbered 9[0-9]_*. The idea is to have high number (custom) scripts executed last. Jow confirmed numbering is the default case, not the exception (thanks). Signed-off-by: Stijn Segers --- package/network/services/odhcpd/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package/network/services/odhcpd/Makefile b/package/network/services/odhcpd/Makefile index d3e131caec..62dd53774d 100644 --- a/package/network/services/odhcpd/Makefile +++ b/package/network/services/odhcpd/Makefile @@ -100,7 +100,7 @@ define Package/odhcpd/install $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./files/odhcpd.init $(1)/etc/init.d/odhcpd $(INSTALL_DIR) $(1)/etc/uci-defaults - $(INSTALL_BIN) ./files/odhcpd.defaults $(1)/etc/uci-defaults + $(INSTALL_BIN) ./files/odhcpd.defaults $(1)/etc/uci-defaults/15_odhcpd endef Package/odhcpd-ipv6only/install = $(Package/odhcpd/install) From 6254af0c379901c1b975373bb090fca169e49fa2 Mon Sep 17 00:00:00 2001 From: David Bauer Date: Fri, 18 Sep 2020 01:11:13 +0200 Subject: [PATCH 06/19] hostapd: send ubus event on BSS update hostapd will emit a ubus event with the eventname hostapd.. when adding, removing or reloading a BSS. This way, services which install state (for example the RMM neighbor list) can on-demand reinstall this information for the BSS without polling this state. Signed-off-by: David Bauer --- package/network/services/hostapd/Makefile | 2 +- .../services/hostapd/src/src/ap/ubus.c | 24 ++++++++++++++++++- 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/package/network/services/hostapd/Makefile b/package/network/services/hostapd/Makefile index 8c264854d7..e273e9e7d3 100644 --- a/package/network/services/hostapd/Makefile +++ b/package/network/services/hostapd/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=hostapd -PKG_RELEASE:=6 +PKG_RELEASE:=7 PKG_SOURCE_URL:=http://w1.fi/hostap.git PKG_SOURCE_PROTO:=git diff --git a/package/network/services/hostapd/src/src/ap/ubus.c b/package/network/services/hostapd/src/src/ap/ubus.c index aeea310594..4753ff4388 100644 --- a/package/network/services/hostapd/src/src/ap/ubus.c +++ b/package/network/services/hostapd/src/src/ap/ubus.c @@ -108,6 +108,21 @@ void hostapd_ubus_free_iface(struct hostapd_iface *iface) return; } +static void hostapd_send_ubus_event(char *bssname, char *event) +{ + char *name; + + if (!ctx) + return; + + if (asprintf(&name, "hostapd.%s.%s", bssname, event) < 0) + return; + + blob_buf_init(&b, 0); + ubus_send_event(ctx, name, b.head); + free(name); +} + static void hostapd_bss_del_ban(void *eloop_data, void *user_ctx) { @@ -152,7 +167,10 @@ hostapd_bss_reload(struct ubus_context *ctx, struct ubus_object *obj, struct blob_attr *msg) { struct hostapd_data *hapd = container_of(obj, struct hostapd_data, ubus.obj); - return hostapd_reload_config(hapd->iface, 1); + int ret = hostapd_reload_config(hapd->iface, 1); + + hostapd_send_ubus_event(hapd->conf->iface, "reload"); + return ret; } static int @@ -1086,6 +1104,8 @@ void hostapd_ubus_add_bss(struct hostapd_data *hapd) obj->n_methods = bss_object_type.n_methods; ret = ubus_add_object(ctx, obj); hostapd_ubus_ref_inc(); + + hostapd_send_ubus_event(hapd->conf->iface, "add"); } void hostapd_ubus_free_bss(struct hostapd_data *hapd) @@ -1096,6 +1116,8 @@ void hostapd_ubus_free_bss(struct hostapd_data *hapd) if (!ctx) return; + hostapd_send_ubus_event(hapd->conf->iface, "remove"); + if (obj->id) { ubus_remove_object(ctx, obj); hostapd_ubus_ref_dec(); From 8e7aa739fb96c3d77238ec71c7b485fc8b17c8ac Mon Sep 17 00:00:00 2001 From: David Bauer Date: Fri, 18 Sep 2020 15:53:16 +0200 Subject: [PATCH 07/19] hostapd: send procd event on BSS update Dispatch ubus events also to procd in order to trigger service reloads on hostapd updates. Signed-off-by: David Bauer --- package/network/services/hostapd/Makefile | 2 +- .../services/hostapd/src/src/ap/ubus.c | 38 +++++++++++++++++-- 2 files changed, 36 insertions(+), 4 deletions(-) diff --git a/package/network/services/hostapd/Makefile b/package/network/services/hostapd/Makefile index e273e9e7d3..887c15fd40 100644 --- a/package/network/services/hostapd/Makefile +++ b/package/network/services/hostapd/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=hostapd -PKG_RELEASE:=7 +PKG_RELEASE:=8 PKG_SOURCE_URL:=http://w1.fi/hostap.git PKG_SOURCE_PROTO:=git diff --git a/package/network/services/hostapd/src/src/ap/ubus.c b/package/network/services/hostapd/src/src/ap/ubus.c index 4753ff4388..293296d92c 100644 --- a/package/network/services/hostapd/src/src/ap/ubus.c +++ b/package/network/services/hostapd/src/src/ap/ubus.c @@ -123,6 +123,38 @@ static void hostapd_send_ubus_event(char *bssname, char *event) free(name); } +static void hostapd_send_procd_event(char *bssname, char *event) +{ + char *name, *s; + uint32_t id; + void *v; + + if (!ctx || ubus_lookup_id(ctx, "service", &id)) + return; + + if (asprintf(&name, "hostapd.%s.%s", bssname, event) < 0) + return; + + blob_buf_init(&b, 0); + + s = blobmsg_alloc_string_buffer(&b, "type", strlen(name) + 1); + sprintf(s, "%s", name); + blobmsg_add_string_buffer(&b); + + v = blobmsg_open_table(&b, "data"); + blobmsg_close_table(&b, v); + + ubus_invoke(ctx, id, "event", b.head, NULL, NULL, 1000); + + free(name); +} + +static void hostapd_send_shared_event(char *bssname, char *event) +{ + hostapd_send_procd_event(bssname, event); + hostapd_send_ubus_event(bssname, event); +} + static void hostapd_bss_del_ban(void *eloop_data, void *user_ctx) { @@ -169,7 +201,7 @@ hostapd_bss_reload(struct ubus_context *ctx, struct ubus_object *obj, struct hostapd_data *hapd = container_of(obj, struct hostapd_data, ubus.obj); int ret = hostapd_reload_config(hapd->iface, 1); - hostapd_send_ubus_event(hapd->conf->iface, "reload"); + hostapd_send_shared_event(hapd->conf->iface, "reload"); return ret; } @@ -1105,7 +1137,7 @@ void hostapd_ubus_add_bss(struct hostapd_data *hapd) ret = ubus_add_object(ctx, obj); hostapd_ubus_ref_inc(); - hostapd_send_ubus_event(hapd->conf->iface, "add"); + hostapd_send_shared_event(hapd->conf->iface, "add"); } void hostapd_ubus_free_bss(struct hostapd_data *hapd) @@ -1116,7 +1148,7 @@ void hostapd_ubus_free_bss(struct hostapd_data *hapd) if (!ctx) return; - hostapd_send_ubus_event(hapd->conf->iface, "remove"); + hostapd_send_shared_event(hapd->conf->iface, "remove"); if (obj->id) { ubus_remove_object(ctx, obj); From d643b10a76965a94684012d2ddf36e2bcc146274 Mon Sep 17 00:00:00 2001 From: David Bauer Date: Mon, 21 Sep 2020 09:18:27 +0200 Subject: [PATCH 08/19] hostapd: ubus: fix infinite loop when configuring RRM NR The return-code was set, however it was never returned, nor was the loop interrupted. Signed-off-by: David Bauer --- package/network/services/hostapd/Makefile | 2 +- package/network/services/hostapd/src/src/ap/ubus.c | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/package/network/services/hostapd/Makefile b/package/network/services/hostapd/Makefile index 887c15fd40..ceb6014c4b 100644 --- a/package/network/services/hostapd/Makefile +++ b/package/network/services/hostapd/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=hostapd -PKG_RELEASE:=8 +PKG_RELEASE:=9 PKG_SOURCE_URL:=http://w1.fi/hostap.git PKG_SOURCE_PROTO:=git diff --git a/package/network/services/hostapd/src/src/ap/ubus.c b/package/network/services/hostapd/src/src/ap/ubus.c index 293296d92c..9dd263837f 100644 --- a/package/network/services/hostapd/src/src/ap/ubus.c +++ b/package/network/services/hostapd/src/src/ap/ubus.c @@ -849,7 +849,6 @@ hostapd_rrm_nr_set(struct ubus_context *ctx, struct ubus_object *obj, struct blob_attr *tb_l[__NR_SET_LIST_MAX]; struct blob_attr *tb[ARRAY_SIZE(nr_e_policy)]; struct blob_attr *cur; - int ret = 0; int rem; hostapd_rrm_nr_enable(hapd); @@ -888,7 +887,7 @@ hostapd_rrm_nr_set(struct ubus_context *ctx, struct ubus_object *obj, continue; invalid: - ret = UBUS_STATUS_INVALID_ARGUMENT; + return UBUS_STATUS_INVALID_ARGUMENT; } return 0; From 20f2bd044a56f32e9e0782745558858f21bb550f Mon Sep 17 00:00:00 2001 From: Chuanhong Guo Date: Tue, 22 Sep 2020 21:04:02 +0800 Subject: [PATCH 09/19] mediatek: build btmtkuart as a kernel module bluetooth on mt7622 needs a firmware to start. It can't be built-in or it tries to load firmware before rootfs is mounted, and then fails. build it as a kernel module to fix that. Signed-off-by: Chuanhong Guo --- target/linux/mediatek/modules.mk | 12 ++++++++++++ target/linux/mediatek/mt7622/config-5.4 | 15 --------------- 2 files changed, 12 insertions(+), 15 deletions(-) diff --git a/target/linux/mediatek/modules.mk b/target/linux/mediatek/modules.mk index eb81afe235..9c6fb515f4 100644 --- a/target/linux/mediatek/modules.mk +++ b/target/linux/mediatek/modules.mk @@ -15,6 +15,18 @@ endef $(eval $(call KernelPackage,ata-ahci-mtk)) +define KernelPackage/btmtkuart + SUBMENU:=Other modules + TITLE:=MediaTek HCI UART driver + DEPENDS:=@TARGET_mediatek_mt7622 +kmod-bluetooth +mt7622bt-firmware + KCONFIG:=CONFIG_BT_MTKUART + FILES:= \ + $(LINUX_DIR)/drivers/bluetooth/btmtkuart.ko + AUTOLOAD:=$(call AutoProbe,btmtkuart) +endef + +$(eval $(call KernelPackage,btmtkuart)) + define KernelPackage/sdhci-mtk SUBMENU:=Other modules TITLE:=Mediatek SDHCI driver diff --git a/target/linux/mediatek/mt7622/config-5.4 b/target/linux/mediatek/mt7622/config-5.4 index cf12a1f52c..3861704eaa 100755 --- a/target/linux/mediatek/mt7622/config-5.4 +++ b/target/linux/mediatek/mt7622/config-5.4 @@ -121,21 +121,6 @@ CONFIG_BLK_SCSI_REQUEST=y CONFIG_BLOCK_COMPAT=y CONFIG_BSD_PROCESS_ACCT=y CONFIG_BSD_PROCESS_ACCT_V3=y -CONFIG_BT=y -CONFIG_BT_BCM=y -CONFIG_BT_BREDR=y -CONFIG_BT_DEBUGFS=y -CONFIG_BT_HCIUART=y -CONFIG_BT_HCIUART_BCM=y -# CONFIG_BT_HCIUART_INTEL is not set -# CONFIG_BT_HCIUART_NOKIA is not set -CONFIG_BT_HCIUART_QCA=y -CONFIG_BT_HCIUART_SERDEV=y -CONFIG_BT_HCIVHCI=y -CONFIG_BT_HS=y -CONFIG_BT_LE=y -CONFIG_BT_MTKUART=y -CONFIG_BT_QCA=y # CONFIG_CAVIUM_TX2_ERRATUM_219 is not set CONFIG_CC_HAS_KASAN_GENERIC=y CONFIG_CLKDEV_LOOKUP=y From 006cd489f047d059af62334661e77f2f5a68289b Mon Sep 17 00:00:00 2001 From: Chuanhong Guo Date: Tue, 22 Sep 2020 21:13:54 +0800 Subject: [PATCH 10/19] mediatek: mt7622: select bluetooth module instead of firmware Signed-off-by: Chuanhong Guo --- target/linux/mediatek/image/mt7622.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/linux/mediatek/image/mt7622.mk b/target/linux/mediatek/image/mt7622.mk index dee340accf..0851184dcb 100644 --- a/target/linux/mediatek/image/mt7622.mk +++ b/target/linux/mediatek/image/mt7622.mk @@ -28,7 +28,7 @@ define Device/elecom_wrc-2533gent DEVICE_DTS := mt7622-elecom-wrc-2533gent DEVICE_DTS_DIR := $(DTS_DIR)/mediatek DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 kmod-usb3 kmod-mt7615e \ - kmod-mt7615-firmware mt7622bt-firmware swconfig + kmod-mt7615-firmware kmod-btmtkuart swconfig endef TARGET_DEVICES += elecom_wrc-2533gent From 560e54c69e98a08dd161755da3feb7aa85bbae34 Mon Sep 17 00:00:00 2001 From: David Bauer Date: Tue, 22 Sep 2020 15:25:57 +0200 Subject: [PATCH 11/19] hostapd: ubus: send notification instead of event Rafal Milecki pointed out that ubus events are meant for low-level ubus events only (e.g. addition or removal of an object). Higher level events should happen as notifications on the ubus object itself. Dispatch BSS events on the main hostapd ubus object instead of publishing them as ubus events. Signed-off-by: David Bauer --- package/network/services/hostapd/Makefile | 2 +- .../services/hostapd/src/src/ap/ubus.c | 23 ++++++++++--------- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/package/network/services/hostapd/Makefile b/package/network/services/hostapd/Makefile index ceb6014c4b..372539bd06 100644 --- a/package/network/services/hostapd/Makefile +++ b/package/network/services/hostapd/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=hostapd -PKG_RELEASE:=9 +PKG_RELEASE:=10 PKG_SOURCE_URL:=http://w1.fi/hostap.git PKG_SOURCE_PROTO:=git diff --git a/package/network/services/hostapd/src/src/ap/ubus.c b/package/network/services/hostapd/src/src/ap/ubus.c index 9dd263837f..9e407538f7 100644 --- a/package/network/services/hostapd/src/src/ap/ubus.c +++ b/package/network/services/hostapd/src/src/ap/ubus.c @@ -108,19 +108,20 @@ void hostapd_ubus_free_iface(struct hostapd_iface *iface) return; } -static void hostapd_send_ubus_event(char *bssname, char *event) +static void hostapd_notify_ubus(struct ubus_object *obj, char *bssname, char *event) { - char *name; + char *event_type; - if (!ctx) + if (!ctx || !obj) return; - if (asprintf(&name, "hostapd.%s.%s", bssname, event) < 0) + if (asprintf(&event_type, "bss.%s", event) < 0) return; blob_buf_init(&b, 0); - ubus_send_event(ctx, name, b.head); - free(name); + blobmsg_add_string(&b, "name", bssname); + ubus_notify(ctx, obj, event_type, b.head, -1); + free(event_type); } static void hostapd_send_procd_event(char *bssname, char *event) @@ -149,10 +150,10 @@ static void hostapd_send_procd_event(char *bssname, char *event) free(name); } -static void hostapd_send_shared_event(char *bssname, char *event) +static void hostapd_send_shared_event(struct ubus_object *obj, char *bssname, char *event) { hostapd_send_procd_event(bssname, event); - hostapd_send_ubus_event(bssname, event); + hostapd_notify_ubus(obj, bssname, event); } static void @@ -201,7 +202,7 @@ hostapd_bss_reload(struct ubus_context *ctx, struct ubus_object *obj, struct hostapd_data *hapd = container_of(obj, struct hostapd_data, ubus.obj); int ret = hostapd_reload_config(hapd->iface, 1); - hostapd_send_shared_event(hapd->conf->iface, "reload"); + hostapd_send_shared_event(&hapd->iface->interfaces->ubus, hapd->conf->iface, "reload"); return ret; } @@ -1136,7 +1137,7 @@ void hostapd_ubus_add_bss(struct hostapd_data *hapd) ret = ubus_add_object(ctx, obj); hostapd_ubus_ref_inc(); - hostapd_send_shared_event(hapd->conf->iface, "add"); + hostapd_send_shared_event(&hapd->iface->interfaces->ubus, hapd->conf->iface, "add"); } void hostapd_ubus_free_bss(struct hostapd_data *hapd) @@ -1147,7 +1148,7 @@ void hostapd_ubus_free_bss(struct hostapd_data *hapd) if (!ctx) return; - hostapd_send_shared_event(hapd->conf->iface, "remove"); + hostapd_send_shared_event(&hapd->iface->interfaces->ubus, hapd->conf->iface, "remove"); if (obj->id) { ubus_remove_object(ctx, obj); From c5eea362f30370444ff7aea3e8ce7b60b2e4ce50 Mon Sep 17 00:00:00 2001 From: David Bauer Date: Sun, 20 Sep 2020 23:49:35 +0200 Subject: [PATCH 12/19] hostapd: ubus: make (B)SSID optional for neighbor report Make the BSSID and SSID fields optional when configuring a neighbor report into hostapd. Both options can now be an empty string. For the BSSID, the first 6 byte are copied from the neighbor report. For the SSID, the SSID for the affected hostapd BSS is used. Signed-off-by: David Bauer --- package/network/services/hostapd/Makefile | 2 +- .../services/hostapd/src/src/ap/ubus.c | 39 +++++++++++++------ 2 files changed, 28 insertions(+), 13 deletions(-) diff --git a/package/network/services/hostapd/Makefile b/package/network/services/hostapd/Makefile index 372539bd06..6966ebdb89 100644 --- a/package/network/services/hostapd/Makefile +++ b/package/network/services/hostapd/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=hostapd -PKG_RELEASE:=10 +PKG_RELEASE:=11 PKG_SOURCE_URL:=http://w1.fi/hostap.git PKG_SOURCE_PROTO:=git diff --git a/package/network/services/hostapd/src/src/ap/ubus.c b/package/network/services/hostapd/src/src/ap/ubus.c index 9e407538f7..d816f2c030 100644 --- a/package/network/services/hostapd/src/src/ap/ubus.c +++ b/package/network/services/hostapd/src/src/ap/ubus.c @@ -863,26 +863,41 @@ hostapd_rrm_nr_set(struct ubus_context *ctx, struct ubus_object *obj, struct wpa_ssid_value ssid; struct wpabuf *data; u8 bssid[ETH_ALEN]; - char *s; + char *s, *nr_s; blobmsg_parse_array(nr_e_policy, ARRAY_SIZE(nr_e_policy), tb, blobmsg_data(cur), blobmsg_data_len(cur)); if (!tb[0] || !tb[1] || !tb[2]) goto invalid; - s = blobmsg_get_string(tb[0]); - if (hwaddr_aton(s, bssid)) - goto invalid; - - s = blobmsg_get_string(tb[1]); - ssid.ssid_len = strlen(s); - if (ssid.ssid_len > sizeof(ssid.ssid)) - goto invalid; - - memcpy(&ssid, s, ssid.ssid_len); - data = wpabuf_parse_bin(blobmsg_get_string(tb[2])); + /* Neighbor Report binary */ + nr_s = blobmsg_get_string(tb[2]); + data = wpabuf_parse_bin(nr_s); if (!data) goto invalid; + /* BSSID */ + s = blobmsg_get_string(tb[0]); + if (strlen(s) == 0) { + /* Copy BSSID from neighbor report */ + if (hwaddr_compact_aton(nr_s, bssid)) + goto invalid; + } else if (hwaddr_aton(s, bssid)) { + goto invalid; + } + + /* SSID */ + s = blobmsg_get_string(tb[1]); + if (strlen(s) == 0) { + /* Copy SSID from hostapd BSS conf */ + memcpy(&ssid, &hapd->conf->ssid, sizeof(ssid)); + } else { + ssid.ssid_len = strlen(s); + if (ssid.ssid_len > sizeof(ssid.ssid)) + goto invalid; + + memcpy(&ssid, s, ssid.ssid_len); + } + hostapd_neighbor_set(hapd, bssid, &ssid, data, NULL, NULL, 0); wpabuf_free(data); continue; From e8f61bf50d4704dd871e66f08d7f6564af0f5cb0 Mon Sep 17 00:00:00 2001 From: Paul Spooren Date: Mon, 21 Sep 2020 11:16:09 -1000 Subject: [PATCH 13/19] ath79: remove DTS from ATH79 target name The legacy ar71xx target is removed and multiple targets use DTS now, so there is no need to point that out for ATH79 specifically. Signed-off-by: Paul Spooren --- target/linux/ath79/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/linux/ath79/Makefile b/target/linux/ath79/Makefile index a955602ba9..529d609457 100644 --- a/target/linux/ath79/Makefile +++ b/target/linux/ath79/Makefile @@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk ARCH:=mips BOARD:=ath79 -BOARDNAME:=Atheros ATH79 (DTS) +BOARDNAME:=Atheros ATH79 CPU_TYPE:=24kc SUBTARGETS:=generic mikrotik nand tiny From 8be2eb3b9b1e5e808a53bba223badae95c7627ef Mon Sep 17 00:00:00 2001 From: Paul Spooren Date: Mon, 21 Sep 2020 22:46:30 -1000 Subject: [PATCH 14/19] scripts: update SPDX license names SPDX moved from GPL-2.0 to GPL-2.0-only and from GPL-2.0+ to GPL-2.0-or-later. Reflect that in the SPDX license headers. Signed-off-by: Paul Spooren [adjust commit title, update remaining files] Signed-off-by: Adrian Schmutzler --- scripts/config/Makefile | 2 +- scripts/config/conf.c | 2 +- scripts/config/confdata.c | 2 +- scripts/config/expr.c | 2 +- scripts/config/expr.h | 2 +- scripts/config/images.c | 2 +- scripts/config/images.h | 2 +- scripts/config/lexer.l | 2 +- scripts/config/lexer.lex.c | 2 +- scripts/config/list.h | 2 +- scripts/config/lkc.h | 2 +- scripts/config/lkc_proto.h | 2 +- scripts/config/lxdialog/checklist.c | 2 +- scripts/config/lxdialog/dialog.h | 2 +- scripts/config/lxdialog/inputbox.c | 2 +- scripts/config/lxdialog/menubox.c | 2 +- scripts/config/lxdialog/textbox.c | 2 +- scripts/config/lxdialog/util.c | 2 +- scripts/config/lxdialog/yesno.c | 2 +- scripts/config/mconf-cfg.sh | 2 +- scripts/config/mconf.c | 2 +- scripts/config/menu.c | 2 +- scripts/config/nconf-cfg.sh | 2 +- scripts/config/nconf.c | 2 +- scripts/config/nconf.gui.c | 2 +- scripts/config/nconf.h | 2 +- scripts/config/parser.y | 2 +- scripts/config/preprocess.c | 2 +- scripts/config/qconf-cfg.sh | 2 +- scripts/config/qconf.cc | 2 +- scripts/config/qconf.h | 2 +- scripts/config/symbol.c | 2 +- scripts/config/util.c | 2 +- 33 files changed, 33 insertions(+), 33 deletions(-) diff --git a/scripts/config/Makefile b/scripts/config/Makefile index 3082a65ceb..89e761a45e 100644 --- a/scripts/config/Makefile +++ b/scripts/config/Makefile @@ -1,4 +1,4 @@ -# SPDX-License-Identifier: GPL-2.0 +# SPDX-License-Identifier: GPL-2.0-only # =========================================================================== # OpenWrt configuration targets diff --git a/scripts/config/conf.c b/scripts/config/conf.c index d96eab50f1..85902663a4 100644 --- a/scripts/config/conf.c +++ b/scripts/config/conf.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2002 Roman Zippel */ diff --git a/scripts/config/confdata.c b/scripts/config/confdata.c index b696dda5e0..cff8d45231 100644 --- a/scripts/config/confdata.c +++ b/scripts/config/confdata.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2002 Roman Zippel */ diff --git a/scripts/config/expr.c b/scripts/config/expr.c index 81ebf8108c..552c214655 100644 --- a/scripts/config/expr.c +++ b/scripts/config/expr.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2002 Roman Zippel */ diff --git a/scripts/config/expr.h b/scripts/config/expr.h index bbd516bdf5..ae67a99d9e 100644 --- a/scripts/config/expr.h +++ b/scripts/config/expr.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2002 Roman Zippel */ diff --git a/scripts/config/images.c b/scripts/config/images.c index b4fa0e4a63..3765d3356b 100644 --- a/scripts/config/images.c +++ b/scripts/config/images.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2002 Roman Zippel */ diff --git a/scripts/config/images.h b/scripts/config/images.h index d8ff614bd0..565466511d 100644 --- a/scripts/config/images.h +++ b/scripts/config/images.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2002 Roman Zippel */ diff --git a/scripts/config/lexer.l b/scripts/config/lexer.l index 83995662d1..575b679d30 100644 --- a/scripts/config/lexer.l +++ b/scripts/config/lexer.l @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2002 Roman Zippel */ diff --git a/scripts/config/lexer.lex.c b/scripts/config/lexer.lex.c index 98b3aa16e3..190928b2ab 100644 --- a/scripts/config/lexer.lex.c +++ b/scripts/config/lexer.lex.c @@ -2540,7 +2540,7 @@ int yy_flex_debug = 0; #define YY_MORE_ADJ 0 #define YY_RESTORE_YY_MORE_OFFSET char *yytext; -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2002 Roman Zippel */ diff --git a/scripts/config/list.h b/scripts/config/list.h index 45cb237ab7..979cd516d6 100644 --- a/scripts/config/list.h +++ b/scripts/config/list.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ #ifndef LIST_H #define LIST_H diff --git a/scripts/config/lkc.h b/scripts/config/lkc.h index cf0f086d57..64213b6920 100644 --- a/scripts/config/lkc.h +++ b/scripts/config/lkc.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2002 Roman Zippel */ diff --git a/scripts/config/lkc_proto.h b/scripts/config/lkc_proto.h index ac777dd56a..386b10f98f 100644 --- a/scripts/config/lkc_proto.h +++ b/scripts/config/lkc_proto.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ #include /* confdata.c */ diff --git a/scripts/config/lxdialog/checklist.c b/scripts/config/lxdialog/checklist.c index fd161cfff1..29960ed000 100644 --- a/scripts/config/lxdialog/checklist.c +++ b/scripts/config/lxdialog/checklist.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0+ +// SPDX-License-Identifier: GPL-2.0-or-later /* * checklist.c -- implements the checklist box * diff --git a/scripts/config/lxdialog/dialog.h b/scripts/config/lxdialog/dialog.h index 68b565e3c4..3930d93a4a 100644 --- a/scripts/config/lxdialog/dialog.h +++ b/scripts/config/lxdialog/dialog.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0+ */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ /* * dialog.h -- common declarations for all dialog modules * diff --git a/scripts/config/lxdialog/inputbox.c b/scripts/config/lxdialog/inputbox.c index 1dcfb288ee..b8b6f15779 100644 --- a/scripts/config/lxdialog/inputbox.c +++ b/scripts/config/lxdialog/inputbox.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0+ +// SPDX-License-Identifier: GPL-2.0-or-later /* * inputbox.c -- implements the input box * diff --git a/scripts/config/lxdialog/menubox.c b/scripts/config/lxdialog/menubox.c index 58c2f8afe5..4287745566 100644 --- a/scripts/config/lxdialog/menubox.c +++ b/scripts/config/lxdialog/menubox.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0+ +// SPDX-License-Identifier: GPL-2.0-or-later /* * menubox.c -- implements the menu box * diff --git a/scripts/config/lxdialog/textbox.c b/scripts/config/lxdialog/textbox.c index 4e339b1266..b5987735b0 100644 --- a/scripts/config/lxdialog/textbox.c +++ b/scripts/config/lxdialog/textbox.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0+ +// SPDX-License-Identifier: GPL-2.0-or-later /* * textbox.c -- implements the text box * diff --git a/scripts/config/lxdialog/util.c b/scripts/config/lxdialog/util.c index 1b490d4af0..0de2b05352 100644 --- a/scripts/config/lxdialog/util.c +++ b/scripts/config/lxdialog/util.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0+ +// SPDX-License-Identifier: GPL-2.0-or-later /* * util.c * diff --git a/scripts/config/lxdialog/yesno.c b/scripts/config/lxdialog/yesno.c index bcaac9b7ba..ff1db42b3d 100644 --- a/scripts/config/lxdialog/yesno.c +++ b/scripts/config/lxdialog/yesno.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0+ +// SPDX-License-Identifier: GPL-2.0-or-later /* * yesno.c -- implements the yes/no box * diff --git a/scripts/config/mconf-cfg.sh b/scripts/config/mconf-cfg.sh index aa68ec9562..0244b90b33 100755 --- a/scripts/config/mconf-cfg.sh +++ b/scripts/config/mconf-cfg.sh @@ -1,5 +1,5 @@ #!/bin/sh -# SPDX-License-Identifier: GPL-2.0 +# SPDX-License-Identifier: GPL-2.0-only PKG="ncursesw" PKG2="ncurses" diff --git a/scripts/config/mconf.c b/scripts/config/mconf.c index 9ea7945675..69eb3083c7 100644 --- a/scripts/config/mconf.c +++ b/scripts/config/mconf.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2002 Roman Zippel * diff --git a/scripts/config/menu.c b/scripts/config/menu.c index 1df87dd3a5..9bb5fe1582 100644 --- a/scripts/config/menu.c +++ b/scripts/config/menu.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2002 Roman Zippel */ diff --git a/scripts/config/nconf-cfg.sh b/scripts/config/nconf-cfg.sh index c212255070..a227309283 100755 --- a/scripts/config/nconf-cfg.sh +++ b/scripts/config/nconf-cfg.sh @@ -1,5 +1,5 @@ #!/bin/sh -# SPDX-License-Identifier: GPL-2.0 +# SPDX-License-Identifier: GPL-2.0-only PKG="ncursesw menuw panelw" PKG2="ncurses menu panel" diff --git a/scripts/config/nconf.c b/scripts/config/nconf.c index 82ab7e3004..66c8234498 100644 --- a/scripts/config/nconf.c +++ b/scripts/config/nconf.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2008 Nir Tzachar * diff --git a/scripts/config/nconf.gui.c b/scripts/config/nconf.gui.c index 77f525a861..cd7249b310 100644 --- a/scripts/config/nconf.gui.c +++ b/scripts/config/nconf.gui.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2008 Nir Tzachar * diff --git a/scripts/config/nconf.h b/scripts/config/nconf.h index fa5245eb93..eab138b30d 100644 --- a/scripts/config/nconf.h +++ b/scripts/config/nconf.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2008 Nir Tzachar * diff --git a/scripts/config/parser.y b/scripts/config/parser.y index e26dbc3095..6b9de46c00 100644 --- a/scripts/config/parser.y +++ b/scripts/config/parser.y @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2002 Roman Zippel */ diff --git a/scripts/config/preprocess.c b/scripts/config/preprocess.c index dcc07c45eb..92bed17254 100644 --- a/scripts/config/preprocess.c +++ b/scripts/config/preprocess.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only // // Copyright (C) 2018 Masahiro Yamada diff --git a/scripts/config/qconf-cfg.sh b/scripts/config/qconf-cfg.sh index 02ccc0ae10..ebbc7ab475 100755 --- a/scripts/config/qconf-cfg.sh +++ b/scripts/config/qconf-cfg.sh @@ -1,5 +1,5 @@ #!/bin/sh -# SPDX-License-Identifier: GPL-2.0 +# SPDX-License-Identifier: GPL-2.0-only PKG="Qt5Core Qt5Gui Qt5Widgets" PKG2="QtCore QtGui" diff --git a/scripts/config/qconf.cc b/scripts/config/qconf.cc index 82773cc35d..a1e4d263e3 100644 --- a/scripts/config/qconf.cc +++ b/scripts/config/qconf.cc @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2002 Roman Zippel * Copyright (C) 2015 Boris Barbulovski diff --git a/scripts/config/qconf.h b/scripts/config/qconf.h index 45bfe9b2b9..61ecd5bdab 100644 --- a/scripts/config/qconf.h +++ b/scripts/config/qconf.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2002 Roman Zippel */ diff --git a/scripts/config/symbol.c b/scripts/config/symbol.c index 2406a74ec3..b85e5cab76 100644 --- a/scripts/config/symbol.c +++ b/scripts/config/symbol.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2002 Roman Zippel */ diff --git a/scripts/config/util.c b/scripts/config/util.c index 29585394df..0bc415cd73 100644 --- a/scripts/config/util.c +++ b/scripts/config/util.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2002-2005 Roman Zippel * Copyright (C) 2002-2005 Sam Ravnborg From 0cfdc7d44602aa07312aac8fd507719c6d9cd119 Mon Sep 17 00:00:00 2001 From: Adrian Schmutzler Date: Tue, 22 Sep 2020 20:49:55 +0200 Subject: [PATCH 15/19] target: update SPDX license names SPDX moved from GPL-2.0 to GPL-2.0-only and from GPL-2.0+ to GPL-2.0-or-later. Reflect that in the SPDX license headers. Signed-off-by: Adrian Schmutzler --- target/linux/ath79/dts/ar9132.dtsi | 2 +- target/linux/ath79/dts/ar9132_tplink_tl-wa901nd-v2.dts | 2 +- target/linux/ath79/dts/ar9132_tplink_tl-wr1043nd-v1.dts | 2 +- target/linux/ath79/dts/ar9132_tplink_tl-wr941-v2.dts | 2 +- target/linux/ath79/dts/ar9331_tplink_tl-mr3020-v1.dts | 2 +- target/linux/ath79/dts/ar9331_tplink_tl-mr3040-v2.dts | 2 +- target/linux/ath79/dts/ar9342_ubnt_lap-120.dts | 2 +- target/linux/ath79/dts/ar9342_ubnt_litebeam-ac-gen2.dts | 2 +- target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac.dts | 2 +- target/linux/ath79/dts/ar9342_ubnt_nanostation-ac-loco.dts | 2 +- target/linux/ath79/dts/ar9342_ubnt_nanostation-ac.dts | 2 +- target/linux/ath79/dts/ar9342_ubnt_powerbeam-5ac-gen2.dts | 2 +- target/linux/ath79/dts/ar9342_ubnt_wa.dtsi | 2 +- target/linux/ath79/dts/ar9344_aerohive_hiveap-121.dts | 2 +- target/linux/ath79/dts/qca9558_ubnt_powerbeam-5ac-500.dts | 2 +- target/linux/ath79/dts/qca955x_ubnt_xc.dtsi | 2 +- target/linux/ath79/dts/qca9561_xiaomi_mi-router-4q.dts | 2 +- target/linux/ath79/nand/base-files/etc/init.d/bootcount | 2 +- target/linux/ath79/nand/base-files/lib/upgrade/glinet.sh | 2 +- target/linux/bcm63xx/dts/bcm63167-sercomm-h500-s-lowi.dts | 2 +- target/linux/bcm63xx/dts/bcm63167-sercomm-h500-s-vfes.dts | 2 +- target/linux/bcm63xx/dts/bcm63167-sercomm-h500-s.dtsi | 2 +- .../files/arch/arm/boot/dts/qcom-ipq4018-cs-w3-wd1200g-eup.dts | 2 +- .../ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-map-ac2200.dts | 2 +- .../ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-ap-303.dts | 2 +- .../ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-ap-303h.dts | 2 +- .../ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-ap-365.dts | 2 +- .../arch/arm/boot/dts/qcom-ipq4029-aruba-glenmorangie.dtsi | 2 +- .../ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-gl-s1300.dts | 2 +- .../linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-mr33.dts | 2 +- .../kirkwood/files-5.4/arch/arm/boot/dts/kirkwood-ea3500.dts | 2 +- .../kirkwood/files-5.4/arch/arm/boot/dts/kirkwood-nsa310s.dts | 2 +- .../mediatek/files-4.19/arch/arm/boot/dts/mt7629-lynx-rfb.dts | 2 +- .../linux/mediatek/files-4.19/arch/arm/boot/dts/mt7629-rfb.dts | 2 +- target/linux/mediatek/files-4.19/arch/arm/boot/dts/mt7629.dtsi | 2 +- .../arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts | 2 +- .../arch/arm64/boot/dts/mediatek/mt7622-elecom-wrc-2533gent.dts | 2 +- .../arch/arm64/boot/dts/mediatek/mt7622-lynx-rfb1.dts | 2 +- .../files-4.19/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts | 2 +- .../files-4.19/arch/arm64/boot/dts/mediatek/mt7622.dtsi | 2 +- .../mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7530.c | 2 +- .../mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7530.h | 2 +- .../mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7531.c | 2 +- .../mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7531.h | 2 +- .../mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x.h | 2 +- .../files-4.19/drivers/net/phy/mtk/mt753x/mt753x_common.c | 2 +- .../files-4.19/drivers/net/phy/mtk/mt753x/mt753x_mdio.c | 2 +- .../mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_nl.c | 2 +- .../mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_nl.h | 2 +- .../files-4.19/drivers/net/phy/mtk/mt753x/mt753x_regs.h | 2 +- .../files-4.19/drivers/net/phy/mtk/mt753x/mt753x_swconfig.c | 2 +- .../files-4.19/drivers/net/phy/mtk/mt753x/mt753x_swconfig.h | 2 +- .../files-4.19/drivers/net/phy/mtk/mt753x/mt753x_vlan.c | 2 +- .../files-4.19/drivers/net/phy/mtk/mt753x/mt753x_vlan.h | 2 +- .../boot/dts/mediatek/mt7622-bananapi-bpi-r64-rootdisk.dts | 2 +- .../arch/arm64/boot/dts/mediatek/mt7622-elecom-wrc-2533gent.dts | 2 +- .../files-5.4/arch/arm64/boot/dts/mediatek/mt7622-rfb1-ubi.dts | 2 +- .../mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7530.c | 2 +- .../mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7530.h | 2 +- .../mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7531.c | 2 +- .../mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7531.h | 2 +- .../mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x.h | 2 +- .../files-5.4/drivers/net/phy/mtk/mt753x/mt753x_common.c | 2 +- .../mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_mdio.c | 2 +- .../mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_nl.c | 2 +- .../mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_nl.h | 2 +- .../mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_regs.h | 2 +- .../files-5.4/drivers/net/phy/mtk/mt753x/mt753x_swconfig.c | 2 +- .../files-5.4/drivers/net/phy/mtk/mt753x/mt753x_swconfig.h | 2 +- .../mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_vlan.c | 2 +- .../mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_vlan.h | 2 +- target/linux/mpc85xx/files/arch/powerpc/platforms/85xx/panda.c | 2 +- .../mpc85xx/files/arch/powerpc/platforms/85xx/red15w_rev1.c | 2 +- .../mpc85xx/files/arch/powerpc/platforms/85xx/ws-ap3710i.c | 2 +- .../files-4.19/arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts | 2 +- .../files/arch/arm/boot/dts/armada-370-buffalo-ls421de.dts | 2 +- .../arm64/boot/dts/marvell/armada-3720-espressobin-emmc.dts | 2 +- .../arm64/boot/dts/marvell/armada-3720-espressobin-v7-emmc.dts | 2 +- .../arch/arm64/boot/dts/marvell/armada-3720-espressobin-v7.dts | 2 +- .../files/arch/arm64/boot/dts/marvell/armada-3720-gl-mv1000.dts | 2 +- target/linux/oxnas/files/drivers/phy/phy-oxnas-pcie.c | 2 +- target/linux/ramips/dts/mt7620a_fon_fon2601.dts | 2 +- target/linux/ramips/dts/mt7620a_lb-link_bl-w1200.dts | 2 +- target/linux/ramips/dts/mt7621_elecom_wrc-1900gst.dts | 2 +- target/linux/ramips/dts/mt7621_elecom_wrc-gs.dtsi | 2 +- target/linux/ramips/dts/mt7621_netgear_r6220.dts | 2 +- target/linux/ramips/dts/mt7621_netgear_r6260.dts | 2 +- target/linux/ramips/dts/mt7621_netgear_r6350.dts | 2 +- target/linux/ramips/dts/mt7621_netgear_r6700-v2.dts | 2 +- target/linux/ramips/dts/mt7621_netgear_r6800.dts | 2 +- target/linux/ramips/dts/mt7621_netgear_r6850.dts | 2 +- target/linux/ramips/dts/mt7621_netgear_sercomm_ayx.dtsi | 2 +- target/linux/ramips/dts/mt7621_netgear_sercomm_bzv.dtsi | 2 +- target/linux/ramips/dts/mt7621_netgear_sercomm_chj.dtsi | 2 +- target/linux/ramips/dts/mt7621_netgear_wac104.dts | 2 +- target/linux/ramips/dts/mt7621_netgear_wndr3700-v5.dts | 2 +- target/linux/ramips/dts/mt7628an_asus_rt-n10p-v3.dts | 2 +- target/linux/ramips/dts/mt7628an_asus_rt-n11p-b1.dts | 2 +- target/linux/ramips/dts/mt7628an_asus_rt-n12-vp-b1.dts | 2 +- target/linux/ramips/dts/mt7628an_asus_rt-n1x.dtsi | 2 +- target/linux/rtl838x/files-5.4/drivers/net/dsa/rtl838x_phy.c | 2 +- 101 files changed, 101 insertions(+), 101 deletions(-) diff --git a/target/linux/ath79/dts/ar9132.dtsi b/target/linux/ath79/dts/ar9132.dtsi index 2264994279..4fb9ca0111 100644 --- a/target/linux/ath79/dts/ar9132.dtsi +++ b/target/linux/ath79/dts/ar9132.dtsi @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only #include #include "ath79.dtsi" diff --git a/target/linux/ath79/dts/ar9132_tplink_tl-wa901nd-v2.dts b/target/linux/ath79/dts/ar9132_tplink_tl-wa901nd-v2.dts index 6542ce9e4d..3a71ced482 100644 --- a/target/linux/ath79/dts/ar9132_tplink_tl-wa901nd-v2.dts +++ b/target/linux/ath79/dts/ar9132_tplink_tl-wa901nd-v2.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include diff --git a/target/linux/ath79/dts/ar9132_tplink_tl-wr1043nd-v1.dts b/target/linux/ath79/dts/ar9132_tplink_tl-wr1043nd-v1.dts index c16bcb05f7..82c013b55c 100644 --- a/target/linux/ath79/dts/ar9132_tplink_tl-wr1043nd-v1.dts +++ b/target/linux/ath79/dts/ar9132_tplink_tl-wr1043nd-v1.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include diff --git a/target/linux/ath79/dts/ar9132_tplink_tl-wr941-v2.dts b/target/linux/ath79/dts/ar9132_tplink_tl-wr941-v2.dts index 11de522ae2..e028f92f27 100644 --- a/target/linux/ath79/dts/ar9132_tplink_tl-wr941-v2.dts +++ b/target/linux/ath79/dts/ar9132_tplink_tl-wr941-v2.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include diff --git a/target/linux/ath79/dts/ar9331_tplink_tl-mr3020-v1.dts b/target/linux/ath79/dts/ar9331_tplink_tl-mr3020-v1.dts index 704f7c41a8..a5da699045 100644 --- a/target/linux/ath79/dts/ar9331_tplink_tl-mr3020-v1.dts +++ b/target/linux/ath79/dts/ar9331_tplink_tl-mr3020-v1.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include diff --git a/target/linux/ath79/dts/ar9331_tplink_tl-mr3040-v2.dts b/target/linux/ath79/dts/ar9331_tplink_tl-mr3040-v2.dts index d0a479712d..9dced2fc90 100644 --- a/target/linux/ath79/dts/ar9331_tplink_tl-mr3040-v2.dts +++ b/target/linux/ath79/dts/ar9331_tplink_tl-mr3040-v2.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include diff --git a/target/linux/ath79/dts/ar9342_ubnt_lap-120.dts b/target/linux/ath79/dts/ar9342_ubnt_lap-120.dts index 78567622b6..3674356724 100644 --- a/target/linux/ath79/dts/ar9342_ubnt_lap-120.dts +++ b/target/linux/ath79/dts/ar9342_ubnt_lap-120.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "ar9342_ubnt_wa.dtsi" diff --git a/target/linux/ath79/dts/ar9342_ubnt_litebeam-ac-gen2.dts b/target/linux/ath79/dts/ar9342_ubnt_litebeam-ac-gen2.dts index 3c7050753e..5dcd9400ff 100644 --- a/target/linux/ath79/dts/ar9342_ubnt_litebeam-ac-gen2.dts +++ b/target/linux/ath79/dts/ar9342_ubnt_litebeam-ac-gen2.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "ar9342_ubnt_wa.dtsi" diff --git a/target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac.dts b/target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac.dts index 3d0b4d8c51..5b40a3f9fe 100644 --- a/target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac.dts +++ b/target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "ar9342_ubnt_wa.dtsi" diff --git a/target/linux/ath79/dts/ar9342_ubnt_nanostation-ac-loco.dts b/target/linux/ath79/dts/ar9342_ubnt_nanostation-ac-loco.dts index 1a3875570e..0246c2ee90 100644 --- a/target/linux/ath79/dts/ar9342_ubnt_nanostation-ac-loco.dts +++ b/target/linux/ath79/dts/ar9342_ubnt_nanostation-ac-loco.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "ar9342_ubnt_wa.dtsi" diff --git a/target/linux/ath79/dts/ar9342_ubnt_nanostation-ac.dts b/target/linux/ath79/dts/ar9342_ubnt_nanostation-ac.dts index d8aebaeb07..25a2487b24 100644 --- a/target/linux/ath79/dts/ar9342_ubnt_nanostation-ac.dts +++ b/target/linux/ath79/dts/ar9342_ubnt_nanostation-ac.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "ar9342_ubnt_wa.dtsi" diff --git a/target/linux/ath79/dts/ar9342_ubnt_powerbeam-5ac-gen2.dts b/target/linux/ath79/dts/ar9342_ubnt_powerbeam-5ac-gen2.dts index 6b60ed256e..79ad386d3b 100644 --- a/target/linux/ath79/dts/ar9342_ubnt_powerbeam-5ac-gen2.dts +++ b/target/linux/ath79/dts/ar9342_ubnt_powerbeam-5ac-gen2.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "ar9342_ubnt_wa.dtsi" diff --git a/target/linux/ath79/dts/ar9342_ubnt_wa.dtsi b/target/linux/ath79/dts/ar9342_ubnt_wa.dtsi index 1f2f8e37f3..9d7e90ce9d 100644 --- a/target/linux/ath79/dts/ar9342_ubnt_wa.dtsi +++ b/target/linux/ath79/dts/ar9342_ubnt_wa.dtsi @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only #include #include diff --git a/target/linux/ath79/dts/ar9344_aerohive_hiveap-121.dts b/target/linux/ath79/dts/ar9344_aerohive_hiveap-121.dts index 347f12fce7..2d6818b937 100644 --- a/target/linux/ath79/dts/ar9344_aerohive_hiveap-121.dts +++ b/target/linux/ath79/dts/ar9344_aerohive_hiveap-121.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include diff --git a/target/linux/ath79/dts/qca9558_ubnt_powerbeam-5ac-500.dts b/target/linux/ath79/dts/qca9558_ubnt_powerbeam-5ac-500.dts index c41b9e5423..4dfefb5194 100644 --- a/target/linux/ath79/dts/qca9558_ubnt_powerbeam-5ac-500.dts +++ b/target/linux/ath79/dts/qca9558_ubnt_powerbeam-5ac-500.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "qca955x_ubnt_xc.dtsi" diff --git a/target/linux/ath79/dts/qca955x_ubnt_xc.dtsi b/target/linux/ath79/dts/qca955x_ubnt_xc.dtsi index b27a9c2fe8..f0989ef7c8 100644 --- a/target/linux/ath79/dts/qca955x_ubnt_xc.dtsi +++ b/target/linux/ath79/dts/qca955x_ubnt_xc.dtsi @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only #include #include diff --git a/target/linux/ath79/dts/qca9561_xiaomi_mi-router-4q.dts b/target/linux/ath79/dts/qca9561_xiaomi_mi-router-4q.dts index 360e9cd415..736ad3f27f 100644 --- a/target/linux/ath79/dts/qca9561_xiaomi_mi-router-4q.dts +++ b/target/linux/ath79/dts/qca9561_xiaomi_mi-router-4q.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0+ OR MIT +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT /dts-v1/; #include diff --git a/target/linux/ath79/nand/base-files/etc/init.d/bootcount b/target/linux/ath79/nand/base-files/etc/init.d/bootcount index c82386b55f..b5f920421e 100755 --- a/target/linux/ath79/nand/base-files/etc/init.d/bootcount +++ b/target/linux/ath79/nand/base-files/etc/init.d/bootcount @@ -1,6 +1,6 @@ #!/bin/sh /etc/rc.common -# SPDX-License-Identifier: GPL-2.0 +# SPDX-License-Identifier: GPL-2.0-only START=99 diff --git a/target/linux/ath79/nand/base-files/lib/upgrade/glinet.sh b/target/linux/ath79/nand/base-files/lib/upgrade/glinet.sh index 86729f8f2a..e2c41d91c9 100644 --- a/target/linux/ath79/nand/base-files/lib/upgrade/glinet.sh +++ b/target/linux/ath79/nand/base-files/lib/upgrade/glinet.sh @@ -1,4 +1,4 @@ -# SPDX-License-Identifier: GPL-2.0 +# SPDX-License-Identifier: GPL-2.0-only # # Copyright (C) 2019 Jeff Kletsky # diff --git a/target/linux/bcm63xx/dts/bcm63167-sercomm-h500-s-lowi.dts b/target/linux/bcm63xx/dts/bcm63167-sercomm-h500-s-lowi.dts index b7203a4fc0..44662a26db 100644 --- a/target/linux/bcm63xx/dts/bcm63167-sercomm-h500-s-lowi.dts +++ b/target/linux/bcm63xx/dts/bcm63167-sercomm-h500-s-lowi.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) /* * Device Tree file for Sercomm H500-s lowi * diff --git a/target/linux/bcm63xx/dts/bcm63167-sercomm-h500-s-vfes.dts b/target/linux/bcm63xx/dts/bcm63167-sercomm-h500-s-vfes.dts index 7a04dcfde0..32d8fdbe7e 100644 --- a/target/linux/bcm63xx/dts/bcm63167-sercomm-h500-s-vfes.dts +++ b/target/linux/bcm63xx/dts/bcm63167-sercomm-h500-s-vfes.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) /* * Device Tree file for Sercomm H500-s vfes * diff --git a/target/linux/bcm63xx/dts/bcm63167-sercomm-h500-s.dtsi b/target/linux/bcm63xx/dts/bcm63167-sercomm-h500-s.dtsi index eb8a9f7ecd..39b2e63eba 100644 --- a/target/linux/bcm63xx/dts/bcm63167-sercomm-h500-s.dtsi +++ b/target/linux/bcm63xx/dts/bcm63167-sercomm-h500-s.dtsi @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) /* * Device Tree file for Sercomm H500-s * diff --git a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4018-cs-w3-wd1200g-eup.dts b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4018-cs-w3-wd1200g-eup.dts index d8b9e7ef13..2ca2acee19 100644 --- a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4018-cs-w3-wd1200g-eup.dts +++ b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4018-cs-w3-wd1200g-eup.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 OR MIT +// SPDX-License-Identifier: GPL-2.0-only OR MIT #include "qcom-ipq4019.dtsi" #include diff --git a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-map-ac2200.dts b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-map-ac2200.dts index a063f8e952..06d0277b01 100644 --- a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-map-ac2200.dts +++ b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-map-ac2200.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0+ OR MIT +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT /dts-v1/; #include "qcom-ipq4019.dtsi" diff --git a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-ap-303.dts b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-ap-303.dts index 126d944ebb..00faa9840d 100644 --- a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-ap-303.dts +++ b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-ap-303.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 OR MIT +// SPDX-License-Identifier: GPL-2.0-only OR MIT #include "qcom-ipq4029-aruba-glenmorangie.dtsi" #include diff --git a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-ap-303h.dts b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-ap-303h.dts index 1f7a728492..c48bfb636a 100644 --- a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-ap-303h.dts +++ b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-ap-303h.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 OR MIT +// SPDX-License-Identifier: GPL-2.0-only OR MIT #include "qcom-ipq4019.dtsi" #include diff --git a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-ap-365.dts b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-ap-365.dts index 07bb674520..c743ac4b4d 100644 --- a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-ap-365.dts +++ b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-ap-365.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 OR MIT +// SPDX-License-Identifier: GPL-2.0-only OR MIT #include "qcom-ipq4029-aruba-glenmorangie.dtsi" #include diff --git a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-aruba-glenmorangie.dtsi b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-aruba-glenmorangie.dtsi index 4d1d82a272..54ebb0b4b0 100644 --- a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-aruba-glenmorangie.dtsi +++ b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-aruba-glenmorangie.dtsi @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 OR MIT +// SPDX-License-Identifier: GPL-2.0-only OR MIT #include "qcom-ipq4019.dtsi" #include diff --git a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-gl-s1300.dts b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-gl-s1300.dts index 3457ebebfe..262d6dd309 100644 --- a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-gl-s1300.dts +++ b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-gl-s1300.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 OR MIT +// SPDX-License-Identifier: GPL-2.0-only OR MIT #include "qcom-ipq4019.dtsi" #include diff --git a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-mr33.dts b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-mr33.dts index 5003572420..71057c7577 100644 --- a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-mr33.dts +++ b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4029-mr33.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for Meraki MR33 (Stinkbug) * diff --git a/target/linux/kirkwood/files-5.4/arch/arm/boot/dts/kirkwood-ea3500.dts b/target/linux/kirkwood/files-5.4/arch/arm/boot/dts/kirkwood-ea3500.dts index 851f316711..b41243d8dd 100644 --- a/target/linux/kirkwood/files-5.4/arch/arm/boot/dts/kirkwood-ea3500.dts +++ b/target/linux/kirkwood/files-5.4/arch/arm/boot/dts/kirkwood-ea3500.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * kirkwood-linksys-audi.dts - Device Tree file for Linksys EA3500 * diff --git a/target/linux/kirkwood/files-5.4/arch/arm/boot/dts/kirkwood-nsa310s.dts b/target/linux/kirkwood/files-5.4/arch/arm/boot/dts/kirkwood-nsa310s.dts index fe892ffdc2..a2a718077e 100644 --- a/target/linux/kirkwood/files-5.4/arch/arm/boot/dts/kirkwood-nsa310s.dts +++ b/target/linux/kirkwood/files-5.4/arch/arm/boot/dts/kirkwood-nsa310s.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "kirkwood.dtsi" diff --git a/target/linux/mediatek/files-4.19/arch/arm/boot/dts/mt7629-lynx-rfb.dts b/target/linux/mediatek/files-4.19/arch/arm/boot/dts/mt7629-lynx-rfb.dts index 8ea7b163d8..15b667d837 100644 --- a/target/linux/mediatek/files-4.19/arch/arm/boot/dts/mt7629-lynx-rfb.dts +++ b/target/linux/mediatek/files-4.19/arch/arm/boot/dts/mt7629-lynx-rfb.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2019 MediaTek Inc. * Author: Ryder Lee diff --git a/target/linux/mediatek/files-4.19/arch/arm/boot/dts/mt7629-rfb.dts b/target/linux/mediatek/files-4.19/arch/arm/boot/dts/mt7629-rfb.dts index 8ea7b163d8..15b667d837 100644 --- a/target/linux/mediatek/files-4.19/arch/arm/boot/dts/mt7629-rfb.dts +++ b/target/linux/mediatek/files-4.19/arch/arm/boot/dts/mt7629-rfb.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2019 MediaTek Inc. * Author: Ryder Lee diff --git a/target/linux/mediatek/files-4.19/arch/arm/boot/dts/mt7629.dtsi b/target/linux/mediatek/files-4.19/arch/arm/boot/dts/mt7629.dtsi index 53f47796b8..68af4897b6 100644 --- a/target/linux/mediatek/files-4.19/arch/arm/boot/dts/mt7629.dtsi +++ b/target/linux/mediatek/files-4.19/arch/arm/boot/dts/mt7629.dtsi @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2019 MediaTek Inc. * diff --git a/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts b/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts index 557745ed90..f1cbd94b40 100644 --- a/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts +++ b/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: (GPL-2.0 OR MIT) +// SPDX-License-Identifier: (GPL-2.0-only OR MIT) /* * Copyright (c) 2018 MediaTek Inc. * Author: Ryder Lee diff --git a/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-elecom-wrc-2533gent.dts b/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-elecom-wrc-2533gent.dts index 3945f26e16..6e94e49bc1 100644 --- a/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-elecom-wrc-2533gent.dts +++ b/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-elecom-wrc-2533gent.dts @@ -3,7 +3,7 @@ * Author: Ming Huang * Sean Wang * - * SPDX-License-Identifier: (GPL-2.0 OR MIT) + * SPDX-License-Identifier: (GPL-2.0-only OR MIT) */ /dts-v1/; diff --git a/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-lynx-rfb1.dts b/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-lynx-rfb1.dts index 895491098e..52db118231 100644 --- a/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-lynx-rfb1.dts +++ b/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-lynx-rfb1.dts @@ -3,7 +3,7 @@ * Author: Ming Huang * Sean Wang * - * SPDX-License-Identifier: (GPL-2.0 OR MIT) + * SPDX-License-Identifier: (GPL-2.0-only OR MIT) */ /dts-v1/; diff --git a/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts b/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts index 04829f6397..1002ad2b77 100644 --- a/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts +++ b/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts @@ -3,7 +3,7 @@ * Author: Ming Huang * Sean Wang * - * SPDX-License-Identifier: (GPL-2.0 OR MIT) + * SPDX-License-Identifier: (GPL-2.0-only OR MIT) */ /dts-v1/; diff --git a/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622.dtsi b/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622.dtsi index a5c0a5d54b..934b4d9383 100644 --- a/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622.dtsi +++ b/target/linux/mediatek/files-4.19/arch/arm64/boot/dts/mediatek/mt7622.dtsi @@ -3,7 +3,7 @@ * Author: Ming Huang * Sean Wang * - * SPDX-License-Identifier: (GPL-2.0 OR MIT) + * SPDX-License-Identifier: (GPL-2.0-only OR MIT) */ #include diff --git a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7530.c b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7530.c index 014b83be9e..6a94d0d2f4 100644 --- a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7530.c +++ b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7530.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2018 MediaTek Inc. * Author: Weijie Gao diff --git a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7530.h b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7530.h index ef2d68417a..40243d4e5a 100644 --- a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7530.h +++ b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7530.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2018 MediaTek Inc. */ diff --git a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7531.c b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7531.c index 5b9f359168..7ebf09c102 100644 --- a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7531.c +++ b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7531.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2018 MediaTek Inc. * Author: Zhanguo Ju diff --git a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7531.h b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7531.h index e4ef81e94a..52c8a49fd3 100644 --- a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7531.h +++ b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt7531.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2018 MediaTek Inc. */ diff --git a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x.h b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x.h index 317b31ddcc..837a415648 100644 --- a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x.h +++ b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2018 MediaTek Inc. * Author: Weijie Gao diff --git a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_common.c b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_common.c index 18f925956d..4015ddf125 100644 --- a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_common.c +++ b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_common.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2018 MediaTek Inc. * Author: Weijie Gao diff --git a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_mdio.c b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_mdio.c index 8a9a45c0be..a3f0c5d3f0 100644 --- a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_mdio.c +++ b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_mdio.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2018 MediaTek Inc. * Author: Weijie Gao diff --git a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_nl.c b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_nl.c index 78aecd34ed..54916243e7 100644 --- a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_nl.c +++ b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_nl.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2018 MediaTek Inc. * Author: Sirui Zhao diff --git a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_nl.h b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_nl.h index 3c06273802..85dc9e791a 100644 --- a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_nl.h +++ b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_nl.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2018 MediaTek Inc. * Author: Sirui Zhao diff --git a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_regs.h b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_regs.h index 0c91b8e0ec..3f23ae200e 100644 --- a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_regs.h +++ b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_regs.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2018 MediaTek Inc. * Author: Weijie Gao diff --git a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_swconfig.c b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_swconfig.c index b601b90fb1..342ad576b2 100644 --- a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_swconfig.c +++ b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_swconfig.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2018 MediaTek Inc. * Author: Weijie Gao diff --git a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_swconfig.h b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_swconfig.h index b877d8957e..f000364ee8 100644 --- a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_swconfig.h +++ b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_swconfig.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2018 MediaTek Inc. * Author: Weijie Gao diff --git a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_vlan.c b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_vlan.c index f3c8c38f3e..4d88eee8de 100644 --- a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_vlan.c +++ b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_vlan.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2018 MediaTek Inc. */ diff --git a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_vlan.h b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_vlan.h index 66c9cf984e..c726b8eacd 100644 --- a/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_vlan.h +++ b/target/linux/mediatek/files-4.19/drivers/net/phy/mtk/mt753x/mt753x_vlan.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2018 MediaTek Inc. */ diff --git a/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64-rootdisk.dts b/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64-rootdisk.dts index 1638867604..2235306b2b 100644 --- a/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64-rootdisk.dts +++ b/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64-rootdisk.dts @@ -2,7 +2,7 @@ * Copyright (c) 2018 MediaTek Inc. * Author: Ryder Lee * - * SPDX-License-Identifier: (GPL-2.0 OR MIT) + * SPDX-License-Identifier: (GPL-2.0-only OR MIT) */ /dts-v1/; diff --git a/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7622-elecom-wrc-2533gent.dts b/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7622-elecom-wrc-2533gent.dts index 4199ee9aa1..a7b32a9f8b 100644 --- a/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7622-elecom-wrc-2533gent.dts +++ b/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7622-elecom-wrc-2533gent.dts @@ -3,7 +3,7 @@ * Author: Ming Huang * Sean Wang * - * SPDX-License-Identifier: (GPL-2.0 OR MIT) + * SPDX-License-Identifier: (GPL-2.0-only OR MIT) */ /dts-v1/; diff --git a/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7622-rfb1-ubi.dts b/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7622-rfb1-ubi.dts index f64a882370..2589a349ad 100644 --- a/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7622-rfb1-ubi.dts +++ b/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7622-rfb1-ubi.dts @@ -2,7 +2,7 @@ * Copyright (c) 2018 MediaTek Inc. * Author: Ryder Lee * - * SPDX-License-Identifier: (GPL-2.0 OR MIT) + * SPDX-License-Identifier: (GPL-2.0-only OR MIT) */ /dts-v1/; diff --git a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7530.c b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7530.c index 014b83be9e..6a94d0d2f4 100644 --- a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7530.c +++ b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7530.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2018 MediaTek Inc. * Author: Weijie Gao diff --git a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7530.h b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7530.h index ef2d68417a..40243d4e5a 100644 --- a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7530.h +++ b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7530.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2018 MediaTek Inc. */ diff --git a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7531.c b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7531.c index 5b9f359168..7ebf09c102 100644 --- a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7531.c +++ b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7531.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2018 MediaTek Inc. * Author: Zhanguo Ju diff --git a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7531.h b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7531.h index e4ef81e94a..52c8a49fd3 100644 --- a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7531.h +++ b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt7531.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2018 MediaTek Inc. */ diff --git a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x.h b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x.h index 317b31ddcc..837a415648 100644 --- a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x.h +++ b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2018 MediaTek Inc. * Author: Weijie Gao diff --git a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_common.c b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_common.c index 18f925956d..4015ddf125 100644 --- a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_common.c +++ b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_common.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2018 MediaTek Inc. * Author: Weijie Gao diff --git a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_mdio.c b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_mdio.c index 8a9a45c0be..a3f0c5d3f0 100644 --- a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_mdio.c +++ b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_mdio.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2018 MediaTek Inc. * Author: Weijie Gao diff --git a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_nl.c b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_nl.c index 40faa0190d..ccde2c9209 100644 --- a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_nl.c +++ b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_nl.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2018 MediaTek Inc. * Author: Sirui Zhao diff --git a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_nl.h b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_nl.h index 3c06273802..85dc9e791a 100644 --- a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_nl.h +++ b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_nl.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2018 MediaTek Inc. * Author: Sirui Zhao diff --git a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_regs.h b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_regs.h index 0c91b8e0ec..3f23ae200e 100644 --- a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_regs.h +++ b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_regs.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2018 MediaTek Inc. * Author: Weijie Gao diff --git a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_swconfig.c b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_swconfig.c index b601b90fb1..342ad576b2 100644 --- a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_swconfig.c +++ b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_swconfig.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2018 MediaTek Inc. * Author: Weijie Gao diff --git a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_swconfig.h b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_swconfig.h index b877d8957e..f000364ee8 100644 --- a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_swconfig.h +++ b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_swconfig.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2018 MediaTek Inc. * Author: Weijie Gao diff --git a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_vlan.c b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_vlan.c index f3c8c38f3e..4d88eee8de 100644 --- a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_vlan.c +++ b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_vlan.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2018 MediaTek Inc. */ diff --git a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_vlan.h b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_vlan.h index 66c9cf984e..c726b8eacd 100644 --- a/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_vlan.h +++ b/target/linux/mediatek/files-5.4/drivers/net/phy/mtk/mt753x/mt753x_vlan.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2018 MediaTek Inc. */ diff --git a/target/linux/mpc85xx/files/arch/powerpc/platforms/85xx/panda.c b/target/linux/mpc85xx/files/arch/powerpc/platforms/85xx/panda.c index 9f17f20ffc..7eec2cf15c 100644 --- a/target/linux/mpc85xx/files/arch/powerpc/platforms/85xx/panda.c +++ b/target/linux/mpc85xx/files/arch/powerpc/platforms/85xx/panda.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0+ +// SPDX-License-Identifier: GPL-2.0-or-later /* * OCEDO Panda Board Setup diff --git a/target/linux/mpc85xx/files/arch/powerpc/platforms/85xx/red15w_rev1.c b/target/linux/mpc85xx/files/arch/powerpc/platforms/85xx/red15w_rev1.c index 6669d5a57e..1b2be853a5 100644 --- a/target/linux/mpc85xx/files/arch/powerpc/platforms/85xx/red15w_rev1.c +++ b/target/linux/mpc85xx/files/arch/powerpc/platforms/85xx/red15w_rev1.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0+ +// SPDX-License-Identifier: GPL-2.0-or-later /* * Sophos RED 15w Rev.1 Board Setup diff --git a/target/linux/mpc85xx/files/arch/powerpc/platforms/85xx/ws-ap3710i.c b/target/linux/mpc85xx/files/arch/powerpc/platforms/85xx/ws-ap3710i.c index a2900868b9..f23902de39 100644 --- a/target/linux/mpc85xx/files/arch/powerpc/platforms/85xx/ws-ap3710i.c +++ b/target/linux/mpc85xx/files/arch/powerpc/platforms/85xx/ws-ap3710i.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0+ +// SPDX-License-Identifier: GPL-2.0-or-later /* * Enterasys WS-AP3710i Board Setup diff --git a/target/linux/mvebu/files-4.19/arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts b/target/linux/mvebu/files-4.19/arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts index 5b722b4f83..5649c4cba4 100644 --- a/target/linux/mvebu/files-4.19/arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts +++ b/target/linux/mvebu/files-4.19/arch/arm64/boot/dts/marvell/armada-3720-uDPU.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) /* * Device tree for the uDPU board. * Based on Marvell Armada 3720 development board (DB-88F3720-DDR3) diff --git a/target/linux/mvebu/files/arch/arm/boot/dts/armada-370-buffalo-ls421de.dts b/target/linux/mvebu/files/arch/arm/boot/dts/armada-370-buffalo-ls421de.dts index e0c0cb55a0..4589886190 100644 --- a/target/linux/mvebu/files/arch/arm/boot/dts/armada-370-buffalo-ls421de.dts +++ b/target/linux/mvebu/files/arch/arm/boot/dts/armada-370-buffalo-ls421de.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) /* * Device Tree file for Buffalo LinkStation LS421DE * diff --git a/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-espressobin-emmc.dts b/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-espressobin-emmc.dts index ef90a1bd38..e3bed4d445 100644 --- a/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-espressobin-emmc.dts +++ b/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-espressobin-emmc.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) /* * Device Tree file for Globalscale Marvell ESPRESSOBin Board with eMMC * Copyright (C) 2018 Marvell diff --git a/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-espressobin-v7-emmc.dts b/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-espressobin-v7-emmc.dts index 2b565ca8d8..e1e0071434 100644 --- a/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-espressobin-v7-emmc.dts +++ b/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-espressobin-v7-emmc.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) /* * Device Tree file for Globalscale Marvell ESPRESSOBin Board V7 with eMMC * Copyright (C) 2018 Marvell diff --git a/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-espressobin-v7.dts b/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-espressobin-v7.dts index 8a408c3c48..40f18409bf 100644 --- a/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-espressobin-v7.dts +++ b/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-espressobin-v7.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) /* * Device Tree file for Globalscale Marvell ESPRESSOBin Board V7 * Copyright (C) 2018 Marvell diff --git a/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-gl-mv1000.dts b/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-gl-mv1000.dts index d1a966f4f8..86c33fa100 100644 --- a/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-gl-mv1000.dts +++ b/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-gl-mv1000.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) /dts-v1/; #include diff --git a/target/linux/oxnas/files/drivers/phy/phy-oxnas-pcie.c b/target/linux/oxnas/files/drivers/phy/phy-oxnas-pcie.c index 6ded8b2cf6..39203239a0 100644 --- a/target/linux/oxnas/files/drivers/phy/phy-oxnas-pcie.c +++ b/target/linux/oxnas/files/drivers/phy/phy-oxnas-pcie.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2019 Daniel Golle * diff --git a/target/linux/ramips/dts/mt7620a_fon_fon2601.dts b/target/linux/ramips/dts/mt7620a_fon_fon2601.dts index 0e845f3c4c..de8ae4d2b0 100644 --- a/target/linux/ramips/dts/mt7620a_fon_fon2601.dts +++ b/target/linux/ramips/dts/mt7620a_fon_fon2601.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "mt7620a.dtsi" diff --git a/target/linux/ramips/dts/mt7620a_lb-link_bl-w1200.dts b/target/linux/ramips/dts/mt7620a_lb-link_bl-w1200.dts index 092792fe40..b0112559de 100644 --- a/target/linux/ramips/dts/mt7620a_lb-link_bl-w1200.dts +++ b/target/linux/ramips/dts/mt7620a_lb-link_bl-w1200.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; diff --git a/target/linux/ramips/dts/mt7621_elecom_wrc-1900gst.dts b/target/linux/ramips/dts/mt7621_elecom_wrc-1900gst.dts index c8e6d9c3c9..0d41d99f89 100644 --- a/target/linux/ramips/dts/mt7621_elecom_wrc-1900gst.dts +++ b/target/linux/ramips/dts/mt7621_elecom_wrc-1900gst.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "mt7621_elecom_wrc-gs.dtsi" diff --git a/target/linux/ramips/dts/mt7621_elecom_wrc-gs.dtsi b/target/linux/ramips/dts/mt7621_elecom_wrc-gs.dtsi index d4d2fa99e1..a9ed9f6a41 100644 --- a/target/linux/ramips/dts/mt7621_elecom_wrc-gs.dtsi +++ b/target/linux/ramips/dts/mt7621_elecom_wrc-gs.dtsi @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only #include "mt7621.dtsi" diff --git a/target/linux/ramips/dts/mt7621_netgear_r6220.dts b/target/linux/ramips/dts/mt7621_netgear_r6220.dts index 4779b71c1d..b4cd44afe8 100644 --- a/target/linux/ramips/dts/mt7621_netgear_r6220.dts +++ b/target/linux/ramips/dts/mt7621_netgear_r6220.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "mt7621_netgear_sercomm_ayx.dtsi" diff --git a/target/linux/ramips/dts/mt7621_netgear_r6260.dts b/target/linux/ramips/dts/mt7621_netgear_r6260.dts index 8251fe595c..e1a7858f11 100644 --- a/target/linux/ramips/dts/mt7621_netgear_r6260.dts +++ b/target/linux/ramips/dts/mt7621_netgear_r6260.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "mt7621_netgear_sercomm_chj.dtsi" diff --git a/target/linux/ramips/dts/mt7621_netgear_r6350.dts b/target/linux/ramips/dts/mt7621_netgear_r6350.dts index c1e3a08897..f25b93f010 100644 --- a/target/linux/ramips/dts/mt7621_netgear_r6350.dts +++ b/target/linux/ramips/dts/mt7621_netgear_r6350.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "mt7621_netgear_sercomm_chj.dtsi" diff --git a/target/linux/ramips/dts/mt7621_netgear_r6700-v2.dts b/target/linux/ramips/dts/mt7621_netgear_r6700-v2.dts index b206cf7d95..d1a54343bf 100644 --- a/target/linux/ramips/dts/mt7621_netgear_r6700-v2.dts +++ b/target/linux/ramips/dts/mt7621_netgear_r6700-v2.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "mt7621_netgear_sercomm_bzv.dtsi" diff --git a/target/linux/ramips/dts/mt7621_netgear_r6800.dts b/target/linux/ramips/dts/mt7621_netgear_r6800.dts index cce701ea32..7c038cf5ae 100644 --- a/target/linux/ramips/dts/mt7621_netgear_r6800.dts +++ b/target/linux/ramips/dts/mt7621_netgear_r6800.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "mt7621_netgear_sercomm_bzv.dtsi" diff --git a/target/linux/ramips/dts/mt7621_netgear_r6850.dts b/target/linux/ramips/dts/mt7621_netgear_r6850.dts index 5accbbdbd8..85a00fe479 100644 --- a/target/linux/ramips/dts/mt7621_netgear_r6850.dts +++ b/target/linux/ramips/dts/mt7621_netgear_r6850.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "mt7621_netgear_sercomm_chj.dtsi" diff --git a/target/linux/ramips/dts/mt7621_netgear_sercomm_ayx.dtsi b/target/linux/ramips/dts/mt7621_netgear_sercomm_ayx.dtsi index 9313b4c38e..0ec1a4fb3c 100644 --- a/target/linux/ramips/dts/mt7621_netgear_sercomm_ayx.dtsi +++ b/target/linux/ramips/dts/mt7621_netgear_sercomm_ayx.dtsi @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only #include "mt7621.dtsi" diff --git a/target/linux/ramips/dts/mt7621_netgear_sercomm_bzv.dtsi b/target/linux/ramips/dts/mt7621_netgear_sercomm_bzv.dtsi index eee6c535e1..eefda07860 100644 --- a/target/linux/ramips/dts/mt7621_netgear_sercomm_bzv.dtsi +++ b/target/linux/ramips/dts/mt7621_netgear_sercomm_bzv.dtsi @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only #include "mt7621.dtsi" diff --git a/target/linux/ramips/dts/mt7621_netgear_sercomm_chj.dtsi b/target/linux/ramips/dts/mt7621_netgear_sercomm_chj.dtsi index 0de2167e0a..dc15d5f91f 100644 --- a/target/linux/ramips/dts/mt7621_netgear_sercomm_chj.dtsi +++ b/target/linux/ramips/dts/mt7621_netgear_sercomm_chj.dtsi @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only #include "mt7621.dtsi" diff --git a/target/linux/ramips/dts/mt7621_netgear_wac104.dts b/target/linux/ramips/dts/mt7621_netgear_wac104.dts index ec6fe34953..05d334031f 100644 --- a/target/linux/ramips/dts/mt7621_netgear_wac104.dts +++ b/target/linux/ramips/dts/mt7621_netgear_wac104.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 or MIT +// SPDX-License-Identifier: GPL-2.0-only or MIT /dts-v1/; #include "mt7621.dtsi" diff --git a/target/linux/ramips/dts/mt7621_netgear_wndr3700-v5.dts b/target/linux/ramips/dts/mt7621_netgear_wndr3700-v5.dts index a5c8b21d53..41688989dc 100644 --- a/target/linux/ramips/dts/mt7621_netgear_wndr3700-v5.dts +++ b/target/linux/ramips/dts/mt7621_netgear_wndr3700-v5.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "mt7621_netgear_sercomm_ayx.dtsi" diff --git a/target/linux/ramips/dts/mt7628an_asus_rt-n10p-v3.dts b/target/linux/ramips/dts/mt7628an_asus_rt-n10p-v3.dts index eaf5796d28..ef5d1d997f 100644 --- a/target/linux/ramips/dts/mt7628an_asus_rt-n10p-v3.dts +++ b/target/linux/ramips/dts/mt7628an_asus_rt-n10p-v3.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0+ +// SPDX-License-Identifier: GPL-2.0-or-later /dts-v1/; #include "mt7628an_asus_rt-n1x.dtsi" diff --git a/target/linux/ramips/dts/mt7628an_asus_rt-n11p-b1.dts b/target/linux/ramips/dts/mt7628an_asus_rt-n11p-b1.dts index 46f199f390..faa7aea025 100644 --- a/target/linux/ramips/dts/mt7628an_asus_rt-n11p-b1.dts +++ b/target/linux/ramips/dts/mt7628an_asus_rt-n11p-b1.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0+ +// SPDX-License-Identifier: GPL-2.0-or-later /dts-v1/; #include "mt7628an_asus_rt-n1x.dtsi" diff --git a/target/linux/ramips/dts/mt7628an_asus_rt-n12-vp-b1.dts b/target/linux/ramips/dts/mt7628an_asus_rt-n12-vp-b1.dts index b6070d784f..cd8efe9ae4 100644 --- a/target/linux/ramips/dts/mt7628an_asus_rt-n12-vp-b1.dts +++ b/target/linux/ramips/dts/mt7628an_asus_rt-n12-vp-b1.dts @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0+ +// SPDX-License-Identifier: GPL-2.0-or-later /dts-v1/; #include "mt7628an_asus_rt-n1x.dtsi" diff --git a/target/linux/ramips/dts/mt7628an_asus_rt-n1x.dtsi b/target/linux/ramips/dts/mt7628an_asus_rt-n1x.dtsi index 7e16f097ef..c3f7d80688 100644 --- a/target/linux/ramips/dts/mt7628an_asus_rt-n1x.dtsi +++ b/target/linux/ramips/dts/mt7628an_asus_rt-n1x.dtsi @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0+ +// SPDX-License-Identifier: GPL-2.0-or-later #include "mt7628an.dtsi" diff --git a/target/linux/rtl838x/files-5.4/drivers/net/dsa/rtl838x_phy.c b/target/linux/rtl838x/files-5.4/drivers/net/dsa/rtl838x_phy.c index 4440dc99cd..209ea50f04 100644 --- a/target/linux/rtl838x/files-5.4/drivers/net/dsa/rtl838x_phy.c +++ b/target/linux/rtl838x/files-5.4/drivers/net/dsa/rtl838x_phy.c @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: GPL-2.0 +// SPDX-License-Identifier: GPL-2.0-only /* Realtek RTL838X Ethernet MDIO interface driver * * Copyright (C) 2020 B. Koblitz From 4bd7689d85d15759c7fce92c1cf9af9b98658d5c Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Tue, 22 Sep 2020 13:16:18 +0200 Subject: [PATCH 16/19] mac80211: update sta connection monitor regression fix Reset the connection monitor on all acked frames Signed-off-by: Felix Fietkau --- ...regression-in-sta-connection-monitor.patch | 42 ++++++++++++------- 1 file changed, 27 insertions(+), 15 deletions(-) diff --git a/package/kernel/mac80211/patches/subsys/332-mac80211-fix-regression-in-sta-connection-monitor.patch b/package/kernel/mac80211/patches/subsys/332-mac80211-fix-regression-in-sta-connection-monitor.patch index 787883e217..72b6ed56c4 100644 --- a/package/kernel/mac80211/patches/subsys/332-mac80211-fix-regression-in-sta-connection-monitor.patch +++ b/package/kernel/mac80211/patches/subsys/332-mac80211-fix-regression-in-sta-connection-monitor.patch @@ -2,25 +2,37 @@ From: Felix Fietkau Date: Mon, 21 Sep 2020 17:43:06 +0200 Subject: [PATCH] mac80211: fix regression in sta connection monitor -When the nulldata frame was acked, the probe send count needs to be reset, -otherwise it will keep increasing until the connection is considered dead, -even though it fine. +When a frame was acked and probe frames were sent, the connection monitoring +needs to be reset, otherwise it will keep probing until the connection is +considered dead, even though frames have been acked in the mean time. Fixes: 9abf4e49830d ("mac80211: optimize station connection monitor") Reported-by: Georgi Valkov Signed-off-by: Felix Fietkau --- ---- a/net/mac80211/mlme.c -+++ b/net/mac80211/mlme.c -@@ -2508,7 +2508,9 @@ void ieee80211_sta_tx_notify(struct ieee - !sdata->u.mgd.probe_send_count) - return; +--- a/net/mac80211/status.c ++++ b/net/mac80211/status.c +@@ -1129,6 +1129,8 @@ void ieee80211_tx_status_ext(struct ieee + noack_success = !!(info->flags & IEEE80211_TX_STAT_NOACK_TRANSMITTED); -- if (!ack) -+ if (ack) -+ sdata->u.mgd.probe_send_count = 0; -+ else - sdata->u.mgd.nullfunc_failed = true; - ieee80211_queue_work(&sdata->local->hw, &sdata->work); - } + if (pubsta) { ++ struct ieee80211_sub_if_data *sdata = sta->sdata; ++ + if (!acked && !noack_success) + sta->status_stats.retry_failed++; + sta->status_stats.retry_count += retry_count; +@@ -1143,6 +1145,13 @@ void ieee80211_tx_status_ext(struct ieee + /* Track when last packet was ACKed */ + sta->status_stats.last_pkt_time = jiffies; + ++ /* Reset connection monitor */ ++ if (sdata->vif.type == NL80211_IFTYPE_STATION && ++ unlikely(sdata->u.mgd.probe_send_count > 0)) { ++ sdata->u.mgd.probe_send_count = 0; ++ ieee80211_queue_work(&local->hw, &sdata->work); ++ } ++ + if (info->status.is_valid_ack_signal) { + sta->status_stats.last_ack_signal = + (s8)info->status.ack_signal; From 127ca3c631ea3478d5c9909066b42c117aa72ce0 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Wed, 23 Sep 2020 08:36:47 +0200 Subject: [PATCH 17/19] mt76: update to the latest version 73301065ac32 mt76: mt7615: reduce maximum VHT MPDU length to 7991 8c47ed12c2be mt76: mt7915: add offchannel condition in switch channel command 1449e602fa10 mt76: Convert to DEFINE_SHOW_ATTRIBUTE b22977c2727d mt76: mt7663s: remove max_tx_fragments limitation Signed-off-by: Felix Fietkau --- package/kernel/mt76/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package/kernel/mt76/Makefile b/package/kernel/mt76/Makefile index 93214aa84c..0cfb5d3fbf 100644 --- a/package/kernel/mt76/Makefile +++ b/package/kernel/mt76/Makefile @@ -8,9 +8,9 @@ PKG_LICENSE_FILES:= PKG_SOURCE_URL:=https://github.com/openwrt/mt76 PKG_SOURCE_PROTO:=git -PKG_SOURCE_DATE:=2020-09-18 -PKG_SOURCE_VERSION:=ec84891a4d23efcab2ea91980c4933601cb017bd -PKG_MIRROR_HASH:=55c4103d1d1a62c7401ad0e163773b209c63335a133fd9dd3bcd06e5ada93c1b +PKG_SOURCE_DATE:=2020-09-23 +PKG_SOURCE_VERSION:=b22977c2727db7fea8d487573edb3aa668d8309d +PKG_MIRROR_HASH:=4182823ec5a97d842e7404b3c8139de8af4f35948008890d50e4dad95add996b PKG_MAINTAINER:=Felix Fietkau PKG_BUILD_PARALLEL:=1 From 620f9c773413a0deaeda2bdc22d5e9cb89b9317f Mon Sep 17 00:00:00 2001 From: "J. Scott Heppler" Date: Tue, 22 Sep 2020 19:30:45 -0700 Subject: [PATCH 18/19] ramips: add support for Linksys EA7300 v2 This submission relied heavily on the work of Santiago Rodriguez-Papa Specifications: * SoC: MediaTek MT7621A (880 MHz 2c/4t) * RAM: Winbond W632GG6MB-12 (256M DDR3-1600) * Flash: Winbond W29N01HVSINA (128M NAND) * Eth: MediaTek MT7621A (10/100/1000 Mbps x5) * Radio: MT7603E/MT7615N (2.4 GHz & 5 GHz) 4 antennae: 1 internal and 3 non-deatachable * USB: 3.0 (x1) * LEDs: White (x1 logo) Green (x6 eth + wps) Orange (x5, hardware-bound) * Buttons: Reset (x1) WPS (x1) Installation: Flash factory image through GUI. This might fail due to the A/B nature of this device. When flashing, OEM firmware writes over the non-booted partition. If booted from 'A', flashing over 'B' won't work. To get around this, you should flash the OEM image over itself. This will then boot the router from 'B' and allow you to flash OpenWRT without problems. Reverting to factory firmware: Hard-reset the router three times to force it to boot from 'B.' This is where the stock firmware resides. To remove any traces of OpenWRT from your router simply flash the OEM image at this point. Signed-off-by: J. Scott Heppler --- package/boot/uboot-envtools/files/ramips | 1 + .../ramips/dts/mt7621_linksys_ea7300-v2.dts | 55 +++++++++++++++++++ target/linux/ramips/image/mt7621.mk | 9 +++ .../mt7621/base-files/etc/board.d/01_leds | 1 + .../mt7621/base-files/etc/board.d/02_network | 1 + .../etc/hotplug.d/ieee80211/10_fix_wifi_mac | 1 + .../mt7621/base-files/etc/init.d/bootcount | 1 + .../mt7621/base-files/lib/upgrade/platform.sh | 1 + 8 files changed, 70 insertions(+) create mode 100644 target/linux/ramips/dts/mt7621_linksys_ea7300-v2.dts diff --git a/package/boot/uboot-envtools/files/ramips b/package/boot/uboot-envtools/files/ramips index 6ff04b26e8..14c12bbf09 100644 --- a/package/boot/uboot-envtools/files/ramips +++ b/package/boot/uboot-envtools/files/ramips @@ -40,6 +40,7 @@ ravpower,rp-wd03) ubootenv_add_uci_config "/dev/mtd$idx" "0x4000" "0x1000" "0x1000" ;; linksys,ea7300-v1|\ +linksys,ea7300-v2|\ linksys,ea7500-v2|\ xiaomi,mi-router-ac2100|\ xiaomi,mir3p|\ diff --git a/target/linux/ramips/dts/mt7621_linksys_ea7300-v2.dts b/target/linux/ramips/dts/mt7621_linksys_ea7300-v2.dts new file mode 100644 index 0000000000..f7330d1c86 --- /dev/null +++ b/target/linux/ramips/dts/mt7621_linksys_ea7300-v2.dts @@ -0,0 +1,55 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include "mt7621_linksys_ea7xxx.dtsi" + +/ { + compatible = "linksys,ea7300-v2", "mediatek,mt7621-soc"; + model = "Linksys EA7300 v2"; + + aliases { + led-boot = &led_power; + led-failsafe = &led_power; + led-running = &led_power; + led-upgrade = &led_power; + }; + + leds { + compatible = "gpio-leds"; + + wan_green { + label = "ea7300-v2:green:wan"; + gpios = <&gpio 7 GPIO_ACTIVE_LOW>; + }; + + lan1_green { + label = "ea7300-v2:green:lan1"; + gpios = <&gpio 3 GPIO_ACTIVE_LOW>; + }; + + lan2_green { + label = "ea7300-v2:green:lan2"; + gpios = <&gpio 18 GPIO_ACTIVE_LOW>; + }; + + lan3_green { + label = "ea7300-v2:green:lan3"; + gpios = <&gpio 13 GPIO_ACTIVE_LOW>; + }; + + lan4_green { + label = "ea7300-v2:green:lan4"; + gpios = <&gpio 15 GPIO_ACTIVE_LOW>; + }; + + led_power: power { + label = "ea7300-v2:white:power"; + gpios = <&gpio 10 GPIO_ACTIVE_HIGH>; + }; + + wps { + label = "ea7300-v2:green:wps"; + gpios = <&gpio 5 GPIO_ACTIVE_HIGH>; + }; + }; +}; diff --git a/target/linux/ramips/image/mt7621.mk b/target/linux/ramips/image/mt7621.mk index 78629563ee..274d9f7158 100644 --- a/target/linux/ramips/image/mt7621.mk +++ b/target/linux/ramips/image/mt7621.mk @@ -655,6 +655,15 @@ define Device/linksys_ea7300-v1 endef TARGET_DEVICES += linksys_ea7300-v1 +define Device/linksys_ea7300-v2 + $(Device/linksys_ea7xxx) + DEVICE_MODEL := EA7300 + DEVICE_VARIANT := v2 + LINKSYS_HWNAME := EA7300v2 + DEVICE_PACKAGES += kmod-mt7603 +endef +TARGET_DEVICES += linksys_ea7300-v2 + define Device/linksys_ea7500-v2 $(Device/linksys_ea7xxx) DEVICE_MODEL := EA7500 diff --git a/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds b/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds index c5cd446809..8c3be541b0 100755 --- a/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds +++ b/target/linux/ramips/mt7621/base-files/etc/board.d/01_leds @@ -42,6 +42,7 @@ gnubee,gb-pc2) ucidef_set_led_netdev "lan2" "lan2" "$boardname:green:lan2" "lan2" ;; linksys,ea7300-v1|\ +linksys,ea7300-v2|\ linksys,ea7500-v2) ucidef_set_led_netdev "lan1" "lan1 link" "$boardname:green:lan1" "lan1" "link" ucidef_set_led_netdev "lan2" "lan2 link" "$boardname:green:lan2" "lan2" "link" diff --git a/target/linux/ramips/mt7621/base-files/etc/board.d/02_network b/target/linux/ramips/mt7621/base-files/etc/board.d/02_network index 1c1d0e4ab7..26063470e8 100755 --- a/target/linux/ramips/mt7621/base-files/etc/board.d/02_network +++ b/target/linux/ramips/mt7621/base-files/etc/board.d/02_network @@ -105,6 +105,7 @@ ramips_setup_macs() label_mac=$wan_mac ;; linksys,ea7300-v1|\ + linksys,ea7300-v2|\ linksys,ea7500-v2) lan_mac=$(mtd_get_mac_ascii devinfo hw_mac_addr) wan_mac=$lan_mac diff --git a/target/linux/ramips/mt7621/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac b/target/linux/ramips/mt7621/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac index 3f7fdc1a79..b7a41f038c 100644 --- a/target/linux/ramips/mt7621/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac +++ b/target/linux/ramips/mt7621/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac @@ -11,6 +11,7 @@ board=$(board_name) case "$board" in linksys,ea7300-v1|\ + linksys,ea7300-v2|\ linksys,ea7500-v2) hw_mac_addr=$(mtd_get_mac_ascii devinfo hw_mac_addr) [ "$PHYNBR" = "0" ] && macaddr_add $hw_mac_addr 1 > /sys${DEVPATH}/macaddress diff --git a/target/linux/ramips/mt7621/base-files/etc/init.d/bootcount b/target/linux/ramips/mt7621/base-files/etc/init.d/bootcount index b17161a50a..7ef0053e67 100755 --- a/target/linux/ramips/mt7621/base-files/etc/init.d/bootcount +++ b/target/linux/ramips/mt7621/base-files/etc/init.d/bootcount @@ -9,6 +9,7 @@ boot() { echo -e "bootcount\nbootchanged\n" | /usr/sbin/fw_setenv -s - ;; linksys,ea7300-v1|\ + linksys,ea7300-v2|\ linksys,ea7500-v2) mtd resetbc s_env || true ;; diff --git a/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh b/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh index b1feea7ae6..442e78df3c 100755 --- a/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh +++ b/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh @@ -49,6 +49,7 @@ platform_do_upgrade() { dlink,dir-2660-a1|\ hiwifi,hc5962|\ linksys,ea7300-v1|\ + linksys,ea7300-v2|\ linksys,ea7500-v2|\ netgear,r6220|\ netgear,r6260|\ From 036221ce5a899eb99ef1c1623fc9460af00a69e7 Mon Sep 17 00:00:00 2001 From: Hans Dedecker Date: Mon, 14 Sep 2020 21:55:01 +0200 Subject: [PATCH 19/19] vxlan: add extra config options Add config options: srcportmin/srcportmax : range of port numbers to use as UDP source ports to communicate to the remote VXLAN tunnel endpoint ageing : lifetime in seconds of FDB entries learnt by the kernel maxaddress : maximum number of FDB entries learning : enable/disable entering unknown source link layer addresses and IP addresses into the VXLAN device FDB. rsc : enable/disable route short circuit proxy : enable/disable ARP proxy l2miss : enable/disable netlink LLADDR miss notifications l3miss : enable/disable netlink IP ADDR miss notifications gbp : enable/disable the Group Policy extension Signed-off-by: Hans Dedecker --- package/network/config/vxlan/Makefile | 2 +- package/network/config/vxlan/files/vxlan.sh | 26 +++++++++++++++++++-- 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/package/network/config/vxlan/Makefile b/package/network/config/vxlan/Makefile index 7232f71b45..eb053bf111 100644 --- a/package/network/config/vxlan/Makefile +++ b/package/network/config/vxlan/Makefile @@ -1,7 +1,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=vxlan -PKG_RELEASE:=4 +PKG_RELEASE:=5 PKG_LICENSE:=GPL-2.0 include $(INCLUDE_DIR)/package.mk diff --git a/package/network/config/vxlan/files/vxlan.sh b/package/network/config/vxlan/files/vxlan.sh index d063c47d47..8b3a0a53d4 100755 --- a/package/network/config/vxlan/files/vxlan.sh +++ b/package/network/config/vxlan/files/vxlan.sh @@ -59,8 +59,8 @@ vxlan_generic_setup() { local link="$cfg" - local port vid ttl tos mtu macaddr zone rxcsum txcsum - json_get_vars port vid ttl tos mtu macaddr zone rxcsum txcsum + local port vid ttl tos mtu macaddr zone rxcsum txcsum srcportmin srcportmax ageing maxaddress learning proxy l2miss l3miss gbp + json_get_vars port vid ttl tos mtu macaddr zone rxcsum txcsum srcportmin srcportmax ageing maxaddress learning proxy l2miss l3miss gbp proto_init_update "$link" 1 @@ -78,9 +78,20 @@ vxlan_generic_setup() { json_add_object 'data' [ -n "$port" ] && json_add_int port "$port" [ -n "$vid" ] && json_add_int id "$vid" + [ -n "$srcportmin" ] && json_add_int srcportmin "$srcportmin" + [ -n "$srcportmax" ] && json_add_int srcportmax "$srcportmax" + [ -n "$ageing" ] && json_add_int ageing "$ageing" + [ -n "$maxaddress" ] && json_add_int maxaddress "$maxaddress" [ -n "$macaddr" ] && json_add_string macaddr "$macaddr" [ -n "$rxcsum" ] && json_add_boolean rxcsum "$rxcsum" [ -n "$txcsum" ] && json_add_boolean txcsum "$txcsum" + [ -n "$learning" ] && json_add_boolean learning "$learning" + [ -n "$rsc" ] && json_add_boolean rsc "$rsc" + [ -n "$proxy" ] && json_add_boolean proxy "$proxy" + [ -n "$l2miss" ] && json_add_boolean l2miss "$l2miss" + [ -n "$l3miss" ] && json_add_boolean l3miss "$l3miss" + [ -n "$gbp" ] && json_add_boolean gbp "$gbp" + json_close_object proto_close_tunnel @@ -163,9 +174,20 @@ vxlan_generic_init_config() { proto_config_add_int "ttl" proto_config_add_int "tos" proto_config_add_int "mtu" + proto_config_add_int "srcportmin" + proto_config_add_int "srcportmax" + proto_config_add_int "ageing" + proto_config_add_int "maxaddress" proto_config_add_boolean "rxcsum" proto_config_add_boolean "txcsum" + proto_config_add_boolean "learning" + proto_config_add_boolean "rsc" + proto_config_add_boolean "proxy" + proto_config_add_boolean "l2miss" + proto_config_add_boolean "l3miss" + proto_config_add_boolean "gbp" proto_config_add_string "macaddr" + } proto_vxlan_init_config() {