Merge branch 'openwrt-21.02' of https://github.com/immortalwrt/immortalwrt into openwrt-21.02

This commit is contained in:
hanwckf 2023-01-11 20:52:41 +08:00
commit 4857b041cd
30 changed files with 440 additions and 266 deletions

View File

@ -32,7 +32,9 @@ body:
id: device
attributes:
label: Device
description: The device exhibiting this bug.
description: |
The device exhibiting this bug (if unsure, use command below).
```cat /tmp/sysinfo/model```
validations:
required: true
- type: dropdown

View File

@ -36,48 +36,37 @@ your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to prevent others from denying you
these rights or asking you to surrender the rights. Therefore, you have
certain responsibilities if you distribute copies of the software, or if
you modify it: responsibilities to respect the freedom of others.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must pass on to the recipients the same
freedoms that you received. You must make sure that they, too, receive
or can get the source code. And you must show them these terms so they
know their rights.
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
Developers that use the GNU GPL protect your rights with two steps:
(1) assert copyright on the software, and (2) offer you this License
giving you legal permission to copy, distribute and/or modify it.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
For the developers' and authors' protection, the GPL clearly explains
that there is no warranty for this free software. For both users' and
authors' sake, the GPL requires that modified versions be marked as
changed, so that their problems will not be attributed erroneously to
authors of previous versions.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Some devices are designed to deny users access to install or run
modified versions of the software inside them, although the manufacturer
can do so. This is fundamentally incompatible with the aim of
protecting users' freedom to change the software. The systematic
pattern of such abuse occurs in the area of products for individuals to
use, which is precisely where it is most unacceptable. Therefore, we
have designed this version of the GPL to prohibit the practice for those
products. If such problems arise substantially in other domains, we
stand ready to extend this provision to those domains in future versions
of the GPL, as needed to protect the freedom of users.
Finally, every program is threatened constantly by software patents.
States should not allow patents to restrict development and use of
software on general-purpose computers, but in those that do, we wish to
avoid the special danger that patents applied to a free program could
make it effectively proprietary. To prevent this, the GPL assures that
patents cannot be used to render the program non-free.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
@ -220,62 +209,9 @@ restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
Each contributor grants you a non-exclusive, worldwide, royalty-free
patent license under the contributor's essential patent claims, to
make, use, sell, offer for sale, import and otherwise run, modify and
propagate the contents of its contributor version.
In the following three paragraphs, a "patent license" is any express
agreement or commitment, however denominated, not to enforce a patent
(such as an express permission to practice a patent or covenant not to
sue for patent infringement). To "grant" such a patent license to a
party means to make such an agreement or commitment not to enforce a
patent against the party.
If you convey a covered work, knowingly relying on a patent license,
and the Corresponding Source of the work is not available for anyone
to copy, free of charge and under the terms of this License, through a
publicly available network server or other readily accessible means,
then you must either (1) cause the Corresponding Source to be so
available, or (2) arrange to deprive yourself of the benefit of the
patent license for this particular work, or (3) arrange, in a manner
consistent with the requirements of this License, to extend the patent
license to downstream recipients. "Knowingly relying" means you have
actual knowledge that, but for the patent license, your conveying the
covered work in a country, or your recipient's use of the covered work
in a country, would infringe one or more identifiable patents in that
country that you have reason to believe are valid.
If, pursuant to or in connection with a single transaction or
arrangement, you convey, or propagate by procuring conveyance of, a
covered work, and grant a patent license to some of the parties
receiving the covered work authorizing them to use, propagate, modify
or convey a specific copy of the covered work, then the patent license
you grant is automatically extended to all recipients of the covered
work and works based on it.
A patent license is "discriminatory" if it does not include within
the scope of its coverage, prohibits the exercise of, or is
conditioned on the non-exercise of one or more of the rights that are
specifically granted under this License. You may not convey a covered
work if you are a party to an arrangement with a third party that is
in the business of distributing software, under which you make payment
to the third party based on the extent of your activity of conveying
the work, and under which the third party grants, to any of the
parties who would receive the covered work from you, a discriminatory
patent license (a) in connection with copies of the covered work
conveyed by you (or copies made from those copies), or (b) primarily
for and in connection with specific products or compilations that
contain the covered work, unless you entered into that arrangement,
or that patent license was granted, prior to 28 March 2007.
Nothing in this License shall be construed as excluding or limiting
any implied license or other defenses to infringement that may
otherwise be available to you under applicable patent law.
12. No Surrender of Others' Freedom.
If conditions are imposed on you (whether by court order, agreement or
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
@ -366,15 +302,15 @@ free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software: you can redistribute it and/or modify
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
@ -389,11 +325,11 @@ the "copyright" line and a pointer to where the full notice is found.
Also add information on how to contact you by electronic and paper mail.
If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
<program> Copyright (C) <year> <name of author>
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.

View File

@ -64,9 +64,7 @@ $(eval $(if $(NF_KMOD),,$(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_MARK, $(P_XT)
# kernel only
$(eval $(if $(NF_KMOD),$(call nf_add,NF_CONNTRACK,CONFIG_NF_CONNTRACK, $(P_XT)nf_conntrack),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_CONNTRACK,CONFIG_NF_CONNTRACK_RTCACHE, $(P_XT)nf_conntrack_rtcache),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_CONNTRACK,CONFIG_NF_DEFRAG_IPV4, $(P_V4)nf_defrag_ipv4),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_CONNTRACK,CONFIG_NF_CONNTRACK_IPV4, $(P_V4)nf_conntrack_ipv4),))
$(eval $(call nf_add,IPT_CONNTRACK,CONFIG_NETFILTER_XT_MATCH_STATE, $(P_XT)xt_state))
$(eval $(call nf_add,IPT_CONNTRACK,CONFIG_NETFILTER_XT_TARGET_CT, $(P_XT)xt_CT))
@ -124,7 +122,6 @@ $(eval $(call nf_add,IPT_IPOPT,CONFIG_NETFILTER_XT_MATCH_STATISTIC, $(P_XT)xt_st
$(eval $(call nf_add,IPT_IPOPT,CONFIG_NETFILTER_XT_MATCH_TCPMSS, $(P_XT)xt_tcpmss))
$(eval $(call nf_add,IPT_IPOPT,CONFIG_NETFILTER_XT_TARGET_CLASSIFY, $(P_XT)xt_CLASSIFY))
$(eval $(call nf_add,IPT_IPOPT,CONFIG_IP_NF_MATCH_DSCP, $(P_V4)ipt_dscp))
$(eval $(call nf_add,IPT_IPOPT,CONFIG_IP_NF_TARGET_ECN, $(P_V4)ipt_ECN))
$(eval $(call nf_add,IPT_IPOPT,CONFIG_NETFILTER_XT_MATCH_ECN, $(P_XT)xt_ecn))
@ -160,17 +157,14 @@ $(eval $(if $(NF_KMOD),$(call nf_add,NF_REJECT6,CONFIG_NF_REJECT_IPV6, $(P_V6)nf
$(eval $(if $(NF_KMOD),$(call nf_add,NF_IPT6,CONFIG_IP6_NF_IPTABLES, $(P_V6)ip6_tables),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_CONNTRACK,CONFIG_NF_DEFRAG_IPV6, $(P_V6)nf_defrag_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_CONNTRACK6,CONFIG_NF_CONNTRACK_IPV6, $(P_V6)nf_conntrack_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,IPT_IPV6,CONFIG_IP6_NF_FILTER, $(P_V6)ip6table_filter),))
$(eval $(if $(NF_KMOD),$(call nf_add,IPT_IPV6,CONFIG_IP6_NF_MANGLE, $(P_V6)ip6table_mangle),))
$(eval $(if $(NF_KMOD),$(call nf_add,IPT_IPV6,CONFIG_IP6_NF_QUEUE, $(P_V6)ip6_queue),))
$(eval $(if $(NF_KMOD),$(call nf_add,IPT_IPV6,CONFIG_NF_LOG_IPV6, $(P_V6)nf_log_ipv6),))
$(eval $(if $(NF_KMOD),,$(call nf_add,IPT_IPV6,CONFIG_IP6_NF_IPTABLES, ip6t_icmp6)))
$(eval $(call nf_add,IPT_IPV6,CONFIG_IP6_NF_TARGET_LOG, $(P_V6)ip6t_LOG))
$(eval $(call nf_add,IPT_IPV6,CONFIG_IP6_NF_TARGET_REJECT, $(P_V6)ip6t_REJECT))
# ipv6 extra
@ -230,11 +224,6 @@ $(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_CONNTRACK_IRC, $(P_XT)nf_connt
$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_NAT_IRC, $(P_XT)nf_nat_irc))
# ulog
$(eval $(call nf_add,IPT_ULOG,CONFIG_IP_NF_TARGET_ULOG, $(P_V4)ipt_ULOG))
# nflog
$(eval $(call nf_add,IPT_NFLOG,CONFIG_NETFILTER_XT_TARGET_NFLOG, $(P_XT)xt_NFLOG))
@ -320,7 +309,6 @@ $(eval $(call nf_add,EBTABLES_IP4,CONFIG_BRIDGE_EBT_SNAT, $(P_EBT)ebt_snat))
# watchers
$(eval $(call nf_add,EBTABLES_WATCHERS,CONFIG_BRIDGE_EBT_LOG, $(P_EBT)ebt_log))
$(eval $(call nf_add,EBTABLES_WATCHERS,CONFIG_BRIDGE_EBT_ULOG, $(P_EBT)ebt_ulog))
$(eval $(call nf_add,EBTABLES_WATCHERS,CONFIG_BRIDGE_EBT_NFLOG, $(P_EBT)ebt_nflog))
$(eval $(call nf_add,EBTABLES_WATCHERS,CONFIG_BRIDGE_EBT_NFQUEUE, $(P_EBT)ebt_nfqueue))
@ -383,7 +371,6 @@ IPT_BUILTIN += $(IPT_NAT6-y)
IPT_BUILTIN += $(IPT_NAT_EXTRA-y)
IPT_BUILTIN += $(NF_NATHELPER-y)
IPT_BUILTIN += $(NF_NATHELPER_EXTRA-y)
IPT_BUILTIN += $(IPT_ULOG-y)
IPT_BUILTIN += $(IPT_TPROXY-y)
IPT_BUILTIN += $(NFNETLINK-y)
IPT_BUILTIN += $(NFNETLINK_LOG-y)

View File

@ -46,6 +46,7 @@ DEFAULT_PACKAGES.router:=\
dnsmasq-full \
firewall \
iptables \
ipv6helper \
ppp \
ppp-mod-pppoe
# For easy usage

View File

@ -44,15 +44,18 @@ zbtlink,zbt-wg2626|\
zte,mf283plus)
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x1000" "0x10000"
;;
h3c,tx1800-plus|\
h3c,tx1801-plus|\
h3c,tx1806|\
jcg,q20)
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x20000" "0x20000"
;;
hootoo,ht-tm05|\
ravpower,rp-wd03)
idx="$(find_mtd_index u-boot-env)"
[ -n "$idx" ] && \
ubootenv_add_uci_config "/dev/mtd$idx" "0x4000" "0x1000" "0x1000"
;;
jcg,q20)
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x20000" "0x20000"
;;
linksys,ea7300-v1|\
linksys,ea7300-v2|\
linksys,ea7500-v2|\

View File

@ -508,6 +508,29 @@ endef
$(eval $(call KernelPackage,nbd))
define KernelPackage/nvme
SUBMENU:=$(BLOCK_MENU)
TITLE:=NVM Express block device
DEPENDS:=@PCI_SUPPORT
KCONFIG:= \
CONFIG_NVME_CORE \
CONFIG_BLK_DEV_NVME \
CONFIG_NVME_MULTIPATH=n \
CONFIG_NVME_HWMON=n
FILES:= \
$(LINUX_DIR)/drivers/nvme/host/nvme-core.ko \
$(LINUX_DIR)/drivers/nvme/host/nvme.ko
AUTOLOAD:=$(call AutoLoad,30,nvme-core nvme)
endef
define KernelPackage/nvme/description
Kernel module for NVM Express solid state drives directly
connected to the PCI or PCI Express bus.
endef
$(eval $(call KernelPackage,nvme))
define KernelPackage/scsi-core
SUBMENU:=$(BLOCK_MENU)
TITLE:=SCSI device support

View File

@ -601,7 +601,8 @@ define KernelPackage/crypto-md5
DEPENDS:=+kmod-crypto-hash
KCONFIG:= \
CONFIG_CRYPTO_MD5 \
CONFIG_CRYPTO_MD5_OCTEON
CONFIG_CRYPTO_MD5_OCTEON \
CONFIG_CRYPTO_MD5_PPC
FILES:=$(LINUX_DIR)/crypto/md5.ko
AUTOLOAD:=$(call AutoLoad,09,md5)
$(call AddDepends/crypto)
@ -612,6 +613,11 @@ define KernelPackage/crypto-md5/octeon
AUTOLOAD+=$(call AutoLoad,09,octeon-md5)
endef
define KernelPackage/crypto-md5/mpc85xx
FILES+=$(LINUX_DIR)/arch/powerpc/crypto/md5-ppc.ko
AUTOLOAD+=$(call AutoLoad,09,md5-ppc)
endef
$(eval $(call KernelPackage,crypto-md5))
@ -823,6 +829,7 @@ define KernelPackage/crypto-sha1
CONFIG_CRYPTO_SHA1_ARM \
CONFIG_CRYPTO_SHA1_ARM_NEON \
CONFIG_CRYPTO_SHA1_OCTEON \
CONFIG_CRYPTO_SHA1_PPC_SPE \
CONFIG_CRYPTO_SHA1_SSSE3
FILES:=$(LINUX_DIR)/crypto/sha1_generic.ko
AUTOLOAD:=$(call AutoLoad,09,sha1_generic)
@ -849,7 +856,12 @@ define KernelPackage/crypto-sha1/octeon
AUTOLOAD+=$(call AutoLoad,09,octeon-sha1)
endef
KernelPackage/crypto-sha1/tegra=$(KernelPakcage/crypto-sha1/arm)
KernelPackage/crypto-sha1/tegra=$(KernelPackage/crypto-sha1/arm)
define KernelPackage/crypto-sha1/mpc85xx
FILES+=$(LINUX_DIR)/arch/powerpc/crypto/sha1-ppc-spe.ko
AUTOLOAD+=$(call AutoLoad,09,sha1-ppc-spe)
endef
define KernelPackage/crypto-sha1/x86/64
FILES+=$(LINUX_DIR)/arch/x86/crypto/sha1-ssse3.ko
@ -865,6 +877,7 @@ define KernelPackage/crypto-sha256
KCONFIG:= \
CONFIG_CRYPTO_SHA256 \
CONFIG_CRYPTO_SHA256_OCTEON \
CONFIG_CRYPTO_SHA256_PPC_SPE \
CONFIG_CRYPTO_SHA256_SSSE3
FILES:= \
$(LINUX_DIR)/crypto/sha256_generic.ko \
@ -878,6 +891,11 @@ define KernelPackage/crypto-sha256/octeon
AUTOLOAD+=$(call AutoLoad,09,octeon-sha256)
endef
define KernelPackage/crypto-sha256/mpc85xx
FILES+=$(LINUX_DIR)/arch/powerpc/crypto/sha256-ppc-spe.ko
AUTOLOAD+=$(call AutoLoad,09,sha256-ppc-spe)
endef
define KernelPackage/crypto-sha256/x86/64
FILES+=$(LINUX_DIR)/arch/x86/crypto/sha256-ssse3.ko
AUTOLOAD+=$(call AutoLoad,09,sha256-ssse3)

View File

@ -562,23 +562,6 @@ endef
$(eval $(call KernelPackage,nf-nathelper-extra))
define KernelPackage/ipt-ulog
TITLE:=Module for user-space packet logging
KCONFIG:=$(KCONFIG_IPT_ULOG)
FILES:=$(foreach mod,$(IPT_ULOG-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_ULOG-m)))
$(call AddDepends/ipt)
endef
define KernelPackage/ipt-ulog/description
Netfilter (IPv4) module for user-space packet logging
Includes:
- ULOG
endef
$(eval $(call KernelPackage,ipt-ulog))
define KernelPackage/ipt-nflog
TITLE:=Module for user-space packet logging
KCONFIG:=$(KCONFIG_IPT_NFLOG)

View File

@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=wolfssl
PKG_VERSION:=5.5.3-stable
PKG_VERSION:=5.5.4-stable
PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/wolfSSL/wolfssl/archive/v$(PKG_VERSION)
PKG_HASH:=fd3135b8657d09fb96a8aad16585da850b96ea420ae8ce5ac4d5fdfc614c2683
PKG_HASH:=b7ee150e49def77c765bc02aac92ddeb0bebefd4cb12aa263d8f95e405221fb8
PKG_FIXUP:=libtool libtool-abiver
PKG_INSTALL:=1

View File

@ -1,33 +0,0 @@
From dc9f46a3be00b5e82684a158605189d1278e324c Mon Sep 17 00:00:00 2001
From: Eric Blankenhorn <eric@wolfssl.com>
Date: Wed, 12 Oct 2022 16:05:17 -0500
Subject: [PATCH] Fix --enable-devcrypto build error for sys without u_int8_t
type
---
wolfcrypt/src/port/devcrypto/README.md | 2 +-
wolfcrypt/src/port/devcrypto/wc_devcrypto.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
--- a/wolfcrypt/src/port/devcrypto/README.md
+++ b/wolfcrypt/src/port/devcrypto/README.md
@@ -22,7 +22,7 @@ modprobe cryptodev
For default build with all supported features use:
```
-./configure --enable-cryptodev
+./configure --enable-devcrypto
```
Or for more control over features used:
--- a/wolfcrypt/src/port/devcrypto/wc_devcrypto.c
+++ b/wolfcrypt/src/port/devcrypto/wc_devcrypto.c
@@ -122,7 +122,7 @@ int wc_DevCryptoCreate(WC_CRYPTODEV* ctx
case CRYPTO_SHA2_512_HMAC:
ctx->sess.cipher = 0;
ctx->sess.mac = type;
- ctx->sess.mackey = (u_int8_t*)key;
+ ctx->sess.mackey = (byte*)key;
ctx->sess.mackeylen = keySz;
break;

View File

@ -1,6 +1,6 @@
--- a/wolfssl/wolfcrypt/settings.h
+++ b/wolfssl/wolfcrypt/settings.h
@@ -2455,7 +2455,7 @@ extern void uITRON4_free(void *p) ;
@@ -2496,7 +2496,7 @@ extern void uITRON4_free(void *p) ;
#endif
/* warning for not using harden build options (default with ./configure) */

View File

@ -222,19 +222,6 @@ iptables extensions for extra NAT targets.
- NETMAP
endef
define Package/iptables-mod-ulog
$(call Package/iptables/Module, +kmod-ipt-ulog)
TITLE:=user-space packet logging
endef
define Package/iptables-mod-ulog/description
iptables extensions for user-space packet logging.
Targets:
- ULOG
endef
define Package/iptables-mod-nflog
$(call Package/iptables/Module, +kmod-nfnetlink-log +kmod-ipt-nflog)
TITLE:=Netfilter NFLOG target
@ -674,7 +661,6 @@ $(eval $(call BuildPlugin,iptables-mod-nat-extra,$(IPT_NAT_EXTRA-m)))
$(eval $(call BuildPlugin,iptables-mod-iprange,$(IPT_IPRANGE-m)))
$(eval $(call BuildPlugin,iptables-mod-cluster,$(IPT_CLUSTER-m)))
$(eval $(call BuildPlugin,iptables-mod-clusterip,$(IPT_CLUSTERIP-m)))
$(eval $(call BuildPlugin,iptables-mod-ulog,$(IPT_ULOG-m)))
$(eval $(call BuildPlugin,iptables-mod-hashlimit,$(IPT_HASHLIMIT-m)))
$(eval $(call BuildPlugin,iptables-mod-rpfilter,$(IPT_RPFILTER-m)))
$(eval $(call BuildPlugin,iptables-mod-led,$(IPT_LED-m)))

View File

@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=opkg
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_FLAGS:=essential
PKG_SOURCE_PROTO:=git

View File

@ -0,0 +1,36 @@
From 1026cbe58f6ee78fd9e00e9f72a965727414e155 Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Tue, 7 Sep 2021 18:42:45 -0400
Subject: [PATCH] opkg_remove: avoid remove pkg repeatly with option
--force-removal-of-dependent-packages
While remove pkg with '--force-removal-of-dependent-packages',
pkg may be added to pkgs remove list multiple times, add status
check to make sure pkg only be removed once.
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Paul Barker <paul@paulbarker.me.uk>
(Cherry picked from https://git.yoctoproject.org/cgit/cgit.cgi/opkg/commit/?id=e8996180833aa35d101fbeadec3d787ce0bbda5c)
(Fixes https://dev.archive.openwrt.org/ticket/18320 and openwrt/packages CI)
(cherry picked from commit 9c44557a776da993c2ab80cfac4dbd8d59807d01)
---
libopkg/opkg_remove.c | 8 ++++++++
1 file changed, 8 insertions(+)
--- a/libopkg/opkg_remove.c
+++ b/libopkg/opkg_remove.c
@@ -249,6 +249,14 @@ int opkg_remove_pkg(pkg_t * pkg, int fro
if ((parent_pkg = pkg->parent) == NULL)
return 0;
+ /* While remove pkg with '--force-removal-of-dependent-packages',
+ pkg may be added to remove list multiple times, add status
+ check to make sure pkg only be removed once. */
+ if (conf->force_removal_of_dependent_packages &&
+ pkg->state_flag & SF_FILELIST_CHANGED &&
+ pkg->state_status == SS_NOT_INSTALLED)
+ return 0;
+
/* only attempt to remove dependent installed packages if
* force_depends is not specified or the package is being
* replaced.

View File

@ -38,10 +38,6 @@ CONFIG_ARM_GIC_V3_ITS=y
CONFIG_ARM_PSCI_FW=y
CONFIG_AUDIT_ARCH_COMPAT_GENERIC=y
CONFIG_B53=y
# CONFIG_B53_MDIO_DRIVER is not set
# CONFIG_B53_MMAP_DRIVER is not set
# CONFIG_B53_SERDES is not set
# CONFIG_B53_SRAB_DRIVER is not set
CONFIG_BCM4908_ENET=y
CONFIG_BCM7038_WDT=y
CONFIG_BCM7XXX_PHY=y

View File

@ -22,7 +22,7 @@ include $(INCLUDE_DIR)/target.mk
KERNELNAME:=zImage dtbs
DEFAULT_PACKAGES += swconfig nvram \
DEFAULT_PACKAGES += nvram \
osafeloader oseama otrx \
kmod-gpio-button-hotplug \
kmod-leds-gpio autocore-arm

View File

@ -10,77 +10,27 @@ bcm53xx_setup_interfaces()
{
local board="$1"
# On BCM4708 / BCM4709(4) there are 3 Ethernet interfaces connected to 3 switch
# ports. It's up to vendor which to use.
case "$board" in
tenda,ac9)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "8@eth0" "0:wan" "5@eth1"
;;
buffalo,wxr-1900dhp| \
buffalo,wzr-1750dhp)
ucidef_add_switch "switch0" \
"0:lan:1" "1:lan:2" "2:lan:3" "3:lan:4" "4:wan:5" "5@eth0"
;;
dlink,dir-885l | \
netgear,r7900 | \
netgear,r8000 | \
netgear,r8500)
# NVRAM specifies port 8 (eth2) - unsupported by OpenWrt b53
# Use port 5 (eth0) as workaround
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "5t@eth0"
asus,rt-ac87u)
ucidef_set_interfaces_lan_wan "lan1 lan2 lan3" "wan"
;;
asus,rt-ac88u)
ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 extsw" "wan"
;;
linksys,panamera)
ucidef_add_switch "switch1" \
"0:lan" "1:lan:7" "2:lan:4" "3:lan:8" "4:wan" "5t@eth0"
;;
luxul,abr-4500-v1|\
luxul,xbr-4500-v1)
ucidef_add_switch "switch0" \
"0:wan" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5@eth0"
ucidef_set_interfaces_lan_wan "lan4 lan7 lan8 extsw" "wan"
;;
luxul,xap-1610-v1)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "5@eth0"
ucidef_set_interface_lan "eth0.1" "dhcp"
ucidef_set_interface_lan "poe lan" "dhcp"
;;
luxul,xwr-3150-v1)
ucidef_add_switch "switch0" \
"0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "4:wan" "5@eth0"
meraki,mr32)
ucidef_set_interface_lan "poe" "dhcp"
;;
phicomm,k3)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:wan" "5@eth0"
ucidef_set_interfaces_lan_wan "lan1 lan2 lan3" "wan"
;;
*)
# NVRAM entries may contain unsorted ports, e.g. Netgear R6250 uses
# vlan1ports=3 2 1 0 5*
# vlan2ports=4 5u
# and early Netgear R8000 was using
# vlan1ports=3 2 1 0 5 7 8*
# (the enclosing echo is needed to convert newline back to space)
vlan1ports="$(echo $(nvram get vlan1ports | tr " " "\n" | sort))"
vlan2ports="$(echo $(nvram get vlan2ports | tr " " "\n" | sort))"
if echo "$vlan1ports" | egrep -q "^1 2 3 4 5" && \
echo "$vlan2ports" | egrep -q "^0 5"; then
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5t@eth0"
elif echo "$vlan1ports" | egrep -q "^1 2 3 5 7" && \
echo "$vlan2ports" | egrep -q "^0 7"; then
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "5:lan" "0:wan" "7t@eth1"
elif echo "$vlan1ports" | egrep -q "^0 1 2 3 5 7 8" && \
echo "$vlan2ports" | egrep -q "^4 8"; then
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "5:lan" "7:lan" "4:wan" "8t@eth2"
else
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "5t@eth0"
fi
ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan"
;;
esac
}
@ -90,14 +40,6 @@ bcm53xx_setup_macs()
local board="$1"
case "$board" in
dlink,dir-885l | \
linksys,panamera | \
netgear,r7900 | \
netgear,r8000 | \
netgear,r8500)
# As vendor doesn't use eth0 its MAC may be missing. Use one from eth2.
et2macaddr="$(nvram get et2macaddr)"
;;
meraki,mr32)
# The MAC is stored on an AT24C64 eeprom and not on the nvram
et2macaddr=$(get_mac_binary "/sys/bus/i2c/devices/0-0050/eeprom" 0x66)
@ -107,6 +49,7 @@ bcm53xx_setup_macs()
[ -n "$et2macaddr" ] && ucidef_set_interface_macaddr "lan" "$et2macaddr"
wan_macaddr="$(nvram get wan_hwaddr)"
case "$board" in
asus,rt-ac87u)
etXmacaddr=$(nvram get et1macaddr)

View File

@ -61,6 +61,9 @@ CONFIG_ARM_UNWIND=y
CONFIG_ARM_VIRT_EXT=y
CONFIG_ATAGS=y
CONFIG_AUTO_ZRELADDR=y
CONFIG_B53=y
CONFIG_B53_MDIO_DRIVER=y
CONFIG_B53_SRAB_DRIVER=y
CONFIG_BCM47XX_NVRAM=y
CONFIG_BCM47XX_SPROM=y
CONFIG_BCM47XX_WDT=y
@ -172,6 +175,7 @@ CONFIG_GENERIC_STRNLEN_USER=y
CONFIG_GPIOLIB=y
CONFIG_GPIOLIB_IRQCHIP=y
CONFIG_GPIO_74X164=y
CONFIG_GRO_CELLS=y
CONFIG_HANDLE_DOMAIN_IRQ=y
CONFIG_HARDEN_BRANCH_PREDICTOR=y
CONFIG_HARDIRQS_SW_RESEND=y
@ -271,7 +275,14 @@ CONFIG_MTD_UBI_BLOCK=y
CONFIG_MTD_UBI_WL_THRESHOLD=4096
CONFIG_MUTEX_SPIN_ON_OWNER=y
CONFIG_NEED_DMA_MAP_STATE=y
CONFIG_NET_DEVLINK=y
CONFIG_NET_DSA=y
CONFIG_NET_DSA_TAG_BRCM=y
CONFIG_NET_DSA_TAG_BRCM_COMMON=y
CONFIG_NET_DSA_TAG_BRCM_LEGACY=y
CONFIG_NET_DSA_TAG_BRCM_PREPEND=y
CONFIG_NET_FLOW_LIMIT=y
CONFIG_NET_SWITCHDEV=y
CONFIG_NR_CPUS=2
CONFIG_NVMEM=y
CONFIG_NVMEM_BRCM_NVRAM=y
@ -300,6 +311,7 @@ CONFIG_PCI_DOMAINS_GENERIC=y
CONFIG_PERF_USE_VMALLOC=y
CONFIG_PGTABLE_LEVELS=2
CONFIG_PHYLIB=y
CONFIG_PHYLINK=y
# CONFIG_PHY_BCM_NS_USB2 is not set
# CONFIG_PHY_BCM_NS_USB3 is not set
# CONFIG_PHY_BCM_SR_PCIE is not set
@ -336,11 +348,6 @@ CONFIG_SPI_GPIO=y
CONFIG_SPI_MASTER=y
CONFIG_SPI_MEM=y
CONFIG_SRCU=y
CONFIG_SWCONFIG=y
CONFIG_SWCONFIG_B53=y
CONFIG_SWCONFIG_B53_PHY_DRIVER=y
CONFIG_SWCONFIG_B53_PHY_FIXUP=y
CONFIG_SWCONFIG_B53_SRAB_DRIVER=y
CONFIG_SWPHY=y
CONFIG_SWP_EMULATE=y
CONFIG_SYS_SUPPORTS_APM_EMULATION=y

View File

@ -5,6 +5,11 @@
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/image.mk
define Device/dsa-migration
DEVICE_COMPAT_VERSION := 1.1
DEVICE_COMPAT_MESSAGE := Config cannot be migrated from swconfig to DSA
endef
define Image/Prepare
rm -f $(KDIR)/fs_mark
echo -ne '\xde\xad\xc0\xde' > $(KDIR)/fs_mark
@ -138,6 +143,7 @@ define Device/Default
endef
define Device/asus
$(Device/dsa-migration)
DEVICE_VENDOR := ASUS
IMAGES := trx
IMAGE/trx := append-ubi | trx-nand | asus-trx
@ -189,6 +195,7 @@ TARGET_DEVICES += asus_rt-n18u
# TRX with initramfs kernel. It's not possible right now so let's just build
# plain initramfs kernel as it may be more useful.
define Device/buffalo/Default
$(Device/dsa-migration)
DEVICE_VENDOR := Buffalo
KERNEL_INITRAMFS_SUFFIX = $$(KERNEL_SUFFIX)
KERNEL_INITRAMFS = $$(KERNEL)
@ -237,6 +244,7 @@ endef
TARGET_DEVICES += buffalo_wzr-1750dhp
define Device/dlink
$(Device/dsa-migration)
DEVICE_VENDOR := D-Link
IMAGES := bin
IMAGE/bin := append-ubi | seama-nand
@ -251,6 +259,7 @@ endef
TARGET_DEVICES += dlink_dir-885l
define Device/linksys_ea6300-v1
$(Device/dsa-migration)
DEVICE_VENDOR := Linksys
DEVICE_MODEL := EA6300
DEVICE_VARIANT := v1
@ -259,6 +268,7 @@ endef
TARGET_DEVICES += linksys_ea6300-v1
define Device/linksys_ea6500-v2
$(Device/dsa-migration)
DEVICE_VENDOR := Linksys
DEVICE_MODEL := EA6500
DEVICE_VARIANT := v2
@ -267,6 +277,7 @@ endef
TARGET_DEVICES += linksys_ea6500-v2
define Device/linksys_ea9200
$(Device/dsa-migration)
DEVICE_VENDOR := Linksys
DEVICE_MODEL := EA9200
DEVICE_VARIANT := v1
@ -275,6 +286,7 @@ endef
TARGET_DEVICES += linksys_ea9200
define Device/linksys_ea9500
$(Device/dsa-migration)
DEVICE_VENDOR := Linksys
DEVICE_MODEL := EA9500
DEVICE_PACKAGES := $(BRCMFMAC_4366C0) $(USB3_PACKAGES)
@ -283,6 +295,7 @@ endef
TARGET_DEVICES += linksys_ea9500
define Device/luxul
$(Device/dsa-migration)
DEVICE_VENDOR := Luxul
IMAGES := lxl
IMAGE/lxl := append-ubi | trx-nand | luxul-lxl
@ -323,6 +336,7 @@ endef
TARGET_DEVICES += luxul_xwr-3150
define Device/meraki_mr32
$(Device/dsa-migration)
DEVICE_VENDOR := Meraki
DEVICE_MODEL := MR32
DEVICE_PACKAGES := $(B43) kmod-i2c-bcm-iproc kmod-i2c-gpio kmod-eeprom-at24 \
@ -348,6 +362,7 @@ endef
TARGET_DEVICES += meraki_mr32
define Device/netgear
$(Device/dsa-migration)
DEVICE_VENDOR := NETGEAR
IMAGES := chk
IMAGE/chk := append-ubi | trx-nand | netgear-chk
@ -405,6 +420,7 @@ endef
TARGET_DEVICES += netgear_r8500
define Device/smartrg_sr400ac
$(Device/dsa-migration)
DEVICE_VENDOR := SmartRG
DEVICE_MODEL := SR400ac
DEVICE_PACKAGES := $(BRCMFMAC_43602A1) $(USB3_PACKAGES)
@ -416,6 +432,7 @@ endef
TARGET_DEVICES += smartrg_sr400ac
define Device/phicomm_k3
$(Device/dsa-migration)
DEVICE_VENDOR := PHICOMM
DEVICE_MODEL := K3
DEVICE_PACKAGES := $(BRCMFMAC_4366C0) $(USB3_PACKAGES) luci-app-k3screenctrl
@ -424,6 +441,7 @@ endef
TARGET_DEVICES += phicomm_k3
define Device/tenda_ac9
$(Device/dsa-migration)
DEVICE_VENDOR := Tenda
DEVICE_MODEL := AC9
DEVICE_PACKAGES := $(B43) $(USB2_PACKAGES)
@ -433,6 +451,7 @@ endef
TARGET_DEVICES += tenda_ac9
define Device/tplink_archer-c5-v2
$(Device/dsa-migration)
DEVICE_VENDOR := TP-Link
DEVICE_MODEL := Archer C5
DEVICE_VARIANT := v2
@ -445,6 +464,7 @@ endef
TARGET_DEVICES += tplink_archer-c5-v2
define Device/tplink_archer-c9-v1
$(Device/dsa-migration)
DEVICE_VENDOR := TP-Link
DEVICE_MODEL := Archer C9
DEVICE_VARIANT := v1

View File

@ -466,6 +466,11 @@ CONFIG_ATM_CLIP_NO_ICMP=y
# CONFIG_B43LEGACY is not set
# CONFIG_B44 is not set
# CONFIG_B53 is not set
# CONFIG_B53_MDIO_DRIVER is not set
# CONFIG_B53_MMAP_DRIVER is not set
# CONFIG_B53_SERDES is not set
# CONFIG_B53_SPI_DRIVER is not set
# CONFIG_B53_SRAB_DRIVER is not set
# CONFIG_BACKLIGHT_ADP8860 is not set
# CONFIG_BACKLIGHT_ADP8870 is not set
# CONFIG_BACKLIGHT_APPLE is not set
@ -3704,8 +3709,6 @@ CONFIG_NFS_V3=y
# CONFIG_NF_CONNTRACK_EVENTS is not set
# CONFIG_NF_CONNTRACK_FTP is not set
# CONFIG_NF_CONNTRACK_H323 is not set
# CONFIG_NF_CONNTRACK_IPV4 is not set
# CONFIG_NF_CONNTRACK_IPV6 is not set
# CONFIG_NF_CONNTRACK_IRC is not set
# CONFIG_NF_CONNTRACK_LABELS is not set
# CONFIG_NF_CONNTRACK_MARK is not set

View File

@ -0,0 +1,26 @@
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
Date: Tue, 3 Jan 2023 07:19:26 +0000
Subject: [PATCH] net: dsa: felix: update .get_tag_protocol CB to the changed
API
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 4d776482ecc689bdd68627985ac4cb5a6f325953)
---
drivers/net/dsa/ocelot/felix.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
--- a/drivers/net/dsa/ocelot/felix.c
+++ b/drivers/net/dsa/ocelot/felix.c
@@ -48,7 +48,8 @@ const struct tsn_ops switch_tsn_ops = {
#endif
static enum dsa_tag_protocol felix_get_tag_protocol(struct dsa_switch *ds,
- int port)
+ int port,
+ enum dsa_tag_protocol mp)
{
return DSA_TAG_PROTO_OCELOT;
}

View File

@ -0,0 +1,8 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
#include "mt7621_h3c_tx180x.dtsi"
/ {
compatible = "h3c,tx1800-plus", "mediatek,mt7621-soc";
model = "H3C TX1800 Plus";
};

View File

@ -0,0 +1,8 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
#include "mt7621_h3c_tx180x.dtsi"
/ {
compatible = "h3c,tx1801-plus", "mediatek,mt7621-soc";
model = "H3C TX1801 Plus";
};

View File

@ -0,0 +1,8 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
#include "mt7621_h3c_tx180x.dtsi"
/ {
compatible = "h3c,tx1806", "mediatek,mt7621-soc";
model = "H3C TX1806";
};

View File

@ -0,0 +1,153 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
#include "mt7621.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include <dt-bindings/leds/common.h>
/ {
aliases {
led-boot = &led_status_amber;
led-failsafe = &led_status_green;
led-running = &led_status_green;
led-upgrade = &led_status_amber;
};
chosen {
bootargs = "console=ttyS0,115200";
};
keys {
compatible = "gpio-keys";
reset {
label = "reset";
gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
linux,code = <KEY_RESTART>;
};
wps {
label = "wps";
gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
linux,code = <KEY_WPS_BUTTON>;
};
};
leds {
compatible = "gpio-leds";
led_status_amber: led-0 {
label = "amber:status";
gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
};
led_status_green: led-1 {
label = "green:status";
gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
};
};
};
&nand {
status = "okay";
mediatek,nmbm;
mediatek,bmt-max-ratio = <1>;
mediatek,bmt-max-reserved-blocks = <64>;
mediatek,bmt-remap-range = <0x0000000 0x0a00000>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "u-boot";
reg = <0x0000000 0x0080000>;
read-only;
};
partition@80000 {
label = "u-boot-env";
reg = <0x0080000 0x0080000>;
};
partition@100000 {
label = "exp";
reg = <0x0100000 0x0080000>;
read-only;
};
factory: partition@180000 {
label = "factory";
reg = <0x0180000 0x0080000>;
read-only;
};
partition@200000 {
label = "firmware";
reg = <0x0200000 0x7600000>;
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "kernel";
reg = <0x0000000 0x0800000>;
};
partition@800000 {
label = "ubi";
reg = <0x0800000 0x6e00000>;
};
};
/* last 8 MiB is reserved for NMBM bad block table */
};
};
&pcie {
status = "okay";
};
&pcie1 {
wifi@0,0 {
compatible = "mediatek,mt76";
reg = <0x0000 0 0 0 0>;
mediatek,mtd-eeprom = <&factory 0x0>;
};
};
&pcie2 {
status = "disabled";
};
&switch0 {
ports {
port@1 {
status = "okay";
label = "lan1";
};
port@2 {
status = "okay";
label = "lan2";
};
port@3 {
status = "okay";
label = "lan3";
};
port@4 {
status = "okay";
label = "wan";
};
};
};
&xhci {
status = "disabled";
};

View File

@ -26,6 +26,12 @@ define Build/gemtek-trailer
printf "%s%08X" ".GEMTEK." "$$(cksum $@ | cut -d ' ' -f1)" >> $@
endef
define Build/h3c-blank-header
dd if=/dev/zero of=$@.blank bs=160 count=1
cat $@ >> $@.blank
mv $@.blank $@
endef
define Build/iodata-factory
$(eval fw_size=$(word 1,$(1)))
$(eval fw_type=$(word 2,$(1)))
@ -613,6 +619,40 @@ define Device/gnubee_gb-pc2
endef
TARGET_DEVICES += gnubee_gb-pc2
define Device/h3c_tx180x
$(Device/dsa-migration)
BLOCKSIZE := 128k
PAGESIZE := 2048
KERNEL_SIZE := 8192k
IMAGE_SIZE := 120832k
UBINIZE_OPTS := -E 5
KERNEL_LOADADDR := 0x82000000
KERNEL_INITRAMFS := kernel-bin | relocate-kernel 0x80001000 | lzma | \
fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
KERNEL := $$(KERNEL_INITRAMFS) | h3c-blank-header
IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
DEVICE_VENDOR := H3C
DEVICE_PACKAGES := kmod-mt7915e uboot-envtools
endef
define Device/h3c_tx1800-plus
$(Device/h3c_tx180x)
DEVICE_MODEL := TX1800 Plus
endef
TARGET_DEVICES += h3c_tx1800-plus
define Device/h3c_tx1801-plus
$(Device/h3c_tx180x)
DEVICE_MODEL := TX1801 Plus
endef
TARGET_DEVICES += h3c_tx1801-plus
define Device/h3c_tx1806
$(Device/h3c_tx180x)
DEVICE_MODEL := TX1806
endef
TARGET_DEVICES += h3c_tx1806
define Device/hiwifi_hc5962
$(Device/dsa-migration)
BLOCKSIZE := 128k

View File

@ -24,6 +24,9 @@ ramips_setup_interfaces()
;;
ampedwireless,ally-r1900k|\
gehua,ghl-r-001|\
h3c,tx1800-plus|\
h3c,tx1801-plus|\
h3c,tx1806|\
hiwifi,hc5962|\
xiaomi,mi-router-3-pro|\
xiaomi,mi-router-ac2100|\
@ -129,6 +132,13 @@ ramips_setup_macs()
wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
label_mac=$wan_mac
;;
h3c,tx1800-plus|\
h3c,tx1801-plus|\
h3c,tx1806)
label_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
lan_mac=$(macaddr_add "$label_mac" 1)
wan_mac=$label_mac
;;
hiwifi,hc5962)
lan_mac=$(mtd_get_mac_ascii bdinfo "Vfac_mac ")
label_mac=$lan_mac

View File

@ -14,6 +14,13 @@ case "$board" in
[ "$PHYNBR" = "1" ] && \
macaddr_add "$(mtd_get_mac_binary factory 0x4)" 1 > /sys${DEVPATH}/macaddress
;;
h3c,tx1800-plus|\
h3c,tx1801-plus|\
h3c,tx1806)
addr=$(macaddr_setbit $(macaddr_add $(mtd_get_mac_ascii u-boot-env ethaddr) 2) 7)
[ "$PHYNBR" = "0" ] && echo -n ${addr:0:9}'1'${addr:10:7} > /sys${DEVPATH}/macaddress
[ "$PHYNBR" = "1" ] && echo -n ${addr:0:9}'7'${addr:10:7} > /sys${DEVPATH}/macaddress
;;
jcg,q20)
[ "$PHYNBR" = "1" ] && \
macaddr_setbit_la "$(mtd_get_mac_binary Factory 0x4)" > /sys${DEVPATH}/macaddress

View File

@ -56,6 +56,9 @@ platform_do_upgrade() {
dlink,dir-1960-a1|\
dlink,dir-2640-a1|\
dlink,dir-2660-a1|\
h3c,tx1800-plus|\
h3c,tx1801-plus|\
h3c,tx1806|\
hiwifi,hc5962|\
jcg,q20|\
linksys,e5600|\

View File

@ -146,8 +146,8 @@ const struct rtl83xx_mib_desc rtl83xx_mib[] = {
static enum dsa_tag_protocol rtl83xx_get_tag_protocol(struct dsa_switch *ds,
int port,
enum dsa_tag_protocol mprot)
int port,
enum dsa_tag_protocol mprot)
{
/* The switch does not tag the frames, instead internally the header
* structure for each packet is tagged accordingly.