Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
This commit is contained in:
commit
5b62e2eab5
@ -1,2 +1,2 @@
|
||||
LINUX_VERSION-5.10 = .152
|
||||
LINUX_KERNEL_HASH-5.10.152 = fa0b5c83a4ebfda9f0a52cc693646eb6c24dbade6c37ee2d18b66ee2df15d8a6
|
||||
LINUX_VERSION-5.10 = .153
|
||||
LINUX_KERNEL_HASH-5.10.153 = 3cf2e4519fe451caef0ee0a8beac694612267325f7055fc38d6a990a762f1662
|
||||
|
||||
@ -1,2 +1,2 @@
|
||||
LINUX_VERSION-5.15 = .76
|
||||
LINUX_KERNEL_HASH-5.15.76 = 9007a020c419e3625b980e361be09f70ebd99e156ccb66129a981483d065d57f
|
||||
LINUX_VERSION-5.15 = .77
|
||||
LINUX_KERNEL_HASH-5.15.77 = 142f841f33796a84c62fae2f2b96d2120bd8bbf9e0aac4ce157692cdb0afe9f9
|
||||
|
||||
@ -56,6 +56,11 @@ linksys,e7350|\
|
||||
netgear,wax202)
|
||||
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x20000" "0x20000"
|
||||
;;
|
||||
haier,har-20s2u1|\
|
||||
sim,simax1800t)
|
||||
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x20000" "0x20000"
|
||||
ubootenv_add_uci_sys_config "/dev/mtd1" "0x40000" "0x40000" "0x20000"
|
||||
;;
|
||||
hootoo,ht-tm05|\
|
||||
ravpower,rp-wd03)
|
||||
idx="$(find_mtd_index u-boot-env)"
|
||||
|
||||
@ -2,7 +2,7 @@ fdtaddr=0x8f000000
|
||||
loadaddr=0x81000000
|
||||
fdt_high=0x8fffffff
|
||||
initrd_high=0xffffffff
|
||||
sd_boot=ext4load mmc 0:1 $loadaddr fitImage;bootm $loadaddr
|
||||
sd_boot=ext4load mmc 0:1 ${loadaddr} fitImage;bootm ${loadaddr}
|
||||
bootargs=root=/dev/mmcblk0p2 rw rootwait rootfstype=squashfs,f2fs noinitrd earlycon=uart8250,mmio,0x21c0500 console=ttyS0,115200
|
||||
bootcmd=echo starting openwrt ...;run sd_boot
|
||||
bootdelay=3
|
||||
|
||||
@ -0,0 +1,45 @@
|
||||
From b382eeafe01df21da3518b2f1dd7d22ee114efb0 Mon Sep 17 00:00:00 2001
|
||||
From: Pawel Dembicki <paweldembicki@gmail.com>
|
||||
Date: Mon, 24 Oct 2022 14:19:38 +0200
|
||||
Subject: [PATCH] layerscape: adjust LS1021A-IOT config for OpenWrt
|
||||
|
||||
Two configs are required:
|
||||
- FIT
|
||||
- Ext4load
|
||||
|
||||
Let's enable it. U-boot is now bigger than 512K. Let's enlarge it to
|
||||
768K. Envs start at 1M, so it will fit.
|
||||
|
||||
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
|
||||
---
|
||||
configs/ls1021aiot_sdcard_defconfig | 3 +++
|
||||
include/configs/ls1021aiot.h | 4 ++--
|
||||
2 files changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
--- a/configs/ls1021aiot_sdcard_defconfig
|
||||
+++ b/configs/ls1021aiot_sdcard_defconfig
|
||||
@@ -27,8 +27,11 @@ CONFIG_CMD_MII=y
|
||||
# CONFIG_CMD_MDIO is not set
|
||||
CONFIG_CMD_PING=y
|
||||
CONFIG_CMD_EXT2=y
|
||||
+CONFIG_CMD_EXT4=y
|
||||
CONFIG_CMD_FAT=y
|
||||
# CONFIG_SPL_EFI_PARTITION is not set
|
||||
+CONFIG_FIT=y
|
||||
+CONFIG_FIT_VERBOSE=y
|
||||
CONFIG_OF_CONTROL=y
|
||||
CONFIG_ENV_OVERWRITE=y
|
||||
CONFIG_ENV_IS_IN_MMC=y
|
||||
--- a/include/configs/ls1021aiot.h
|
||||
+++ b/include/configs/ls1021aiot.h
|
||||
@@ -78,8 +78,8 @@
|
||||
CONFIG_SYS_MONITOR_LEN)
|
||||
#define CONFIG_SYS_SPL_MALLOC_SIZE 0x100000
|
||||
#define CONFIG_SPL_BSS_START_ADDR 0x80100000
|
||||
-#define CONFIG_SPL_BSS_MAX_SIZE 0x80000
|
||||
-#define CONFIG_SYS_MONITOR_LEN 0x80000
|
||||
+#define CONFIG_SPL_BSS_MAX_SIZE 0xc0000
|
||||
+#define CONFIG_SYS_MONITOR_LEN 0xc0000
|
||||
#endif
|
||||
|
||||
#define CONFIG_SYS_DDR_SDRAM_BASE 0x80000000UL
|
||||
@ -9,12 +9,12 @@ include $(TOPDIR)/rules.mk
|
||||
include $(INCLUDE_DIR)/kernel.mk
|
||||
|
||||
PKG_NAME:=strace
|
||||
PKG_VERSION:=5.19
|
||||
PKG_VERSION:=6.0
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
|
||||
PKG_SOURCE_URL:=https://strace.io/files/$(PKG_VERSION)
|
||||
PKG_HASH:=aa3dc1c8e60e4f6ff3d396514aa247f3c7bf719d8a8dc4dd4fa793be786beca3
|
||||
PKG_HASH:=92d720a666855e9f1c6a11512fd6e99674a82bbfe1442557815f2ce8e1293338
|
||||
|
||||
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
||||
PKG_LICENSE:=LGPL-2.1-or-later
|
||||
|
||||
@ -8,12 +8,12 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=valgrind
|
||||
PKG_VERSION:=3.19.0
|
||||
PKG_VERSION:=3.20.0
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
|
||||
PKG_SOURCE_URL:=https://sourceware.org/pub/valgrind/
|
||||
PKG_HASH:=dd5e34486f1a483ff7be7300cc16b4d6b24690987877c3278d797534d6738f02
|
||||
PKG_HASH:=8536c031dbe078d342f121fa881a9ecd205cb5a78e639005ad570011bdb9f3c6
|
||||
|
||||
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
||||
PKG_LICENSE:=GPL-2.0+
|
||||
|
||||
@ -20,3 +20,14 @@
|
||||
|
||||
#include "ifx_types.h"
|
||||
#include "ifxos_rt_if_check.h"
|
||||
--- a/src/include/linux/ifxos_linux_interrupt.h
|
||||
+++ b/src/include/linux/ifxos_linux_interrupt.h
|
||||
@@ -31,7 +31,7 @@
|
||||
IFX Linux adaptation - Includes
|
||||
========================================================================= */
|
||||
#include "ifx_types.h"
|
||||
-#include <asm/irq.h>
|
||||
+#include <linux/interrupt.h>
|
||||
|
||||
/* ============================================================================
|
||||
IFX Linux adaptation - supported features
|
||||
|
||||
14
package/kernel/lantiq/ltq-tapi/patches/510-linux-515.patch
Normal file
14
package/kernel/lantiq/ltq-tapi/patches/510-linux-515.patch
Normal file
@ -0,0 +1,14 @@
|
||||
--- a/src/drv_tapi_linux.c
|
||||
+++ b/src/drv_tapi_linux.c
|
||||
@@ -3779,8 +3779,10 @@ IFX_void_t TAPI_OS_ThreadKill(IFXOS_Thre
|
||||
mb();
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,28)
|
||||
kill_proc(pThrCntrl->tid, SIGKILL, 1);
|
||||
-#else
|
||||
+#elif LINUX_VERSION_CODE < KERNEL_VERSION(3,8,0)
|
||||
kill_pid(find_vpid(pThrCntrl->tid), SIGKILL, 1);
|
||||
+#else
|
||||
+ kill_pid(get_task_pid(pThrCntrl->tid, PIDTYPE_PID), SIGKILL, 1);
|
||||
#endif
|
||||
/* release the big kernel lock */
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33)
|
||||
@ -238,9 +238,6 @@ define KernelPackage/ipsec4/description
|
||||
- ah4
|
||||
- esp4
|
||||
- ipcomp4
|
||||
- xfrm4_mode_beet
|
||||
- xfrm4_mode_transport
|
||||
- xfrm4_mode_tunnel
|
||||
- xfrm4_tunnel
|
||||
endef
|
||||
|
||||
@ -273,9 +270,6 @@ define KernelPackage/ipsec6/description
|
||||
- ah6
|
||||
- esp6
|
||||
- ipcomp6
|
||||
- xfrm6_mode_beet
|
||||
- xfrm6_mode_transport
|
||||
- xfrm6_mode_tunnel
|
||||
- xfrm6_tunnel
|
||||
endef
|
||||
|
||||
|
||||
@ -7,12 +7,12 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=elfutils
|
||||
PKG_VERSION:=0.187
|
||||
PKG_VERSION:=0.188
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
|
||||
PKG_SOURCE_URL:=https://sourceware.org/$(PKG_NAME)/ftp/$(PKG_VERSION)
|
||||
PKG_HASH:=e70b0dfbe610f90c4d1fe0d71af142a4e25c3c4ef9ebab8d2d72b65159d454c8
|
||||
PKG_HASH:=fb8b0e8d0802005b9a309c60c1d8de32dd2951b56f0c3a3cb56d21ce01595dff
|
||||
|
||||
PKG_MAINTAINER:=Luiz Angelo Daros de Luca <luizluca@gmail.com>
|
||||
PKG_LICENSE:=GPL-3.0-or-later
|
||||
|
||||
@ -11,7 +11,7 @@
|
||||
Requires.private: zlib
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -610,6 +610,9 @@ dnl AM_GNU_GETTEXT_REQUIRE_VERSION suppo
|
||||
@@ -652,6 +652,9 @@ dnl AM_GNU_GETTEXT_REQUIRE_VERSION suppo
|
||||
AM_GNU_GETTEXT_VERSION([0.19.6])
|
||||
AM_GNU_GETTEXT_REQUIRE_VERSION([0.19.6])
|
||||
|
||||
|
||||
@ -9,7 +9,7 @@
|
||||
}
|
||||
--- a/libdwfl/dwfl_error.c
|
||||
+++ b/libdwfl/dwfl_error.c
|
||||
@@ -140,6 +140,7 @@ __libdwfl_seterrno (Dwfl_Error error)
|
||||
@@ -139,6 +139,7 @@ __libdwfl_seterrno (Dwfl_Error error)
|
||||
static const char *
|
||||
errnomsg(int error)
|
||||
{
|
||||
@ -17,7 +17,7 @@
|
||||
/* Won't be changed by strerror_r, but not const so compiler doesn't throw warning */
|
||||
static char unknown[] = "unknown error";
|
||||
|
||||
@@ -150,6 +151,9 @@ errnomsg(int error)
|
||||
@@ -149,6 +150,9 @@ errnomsg(int error)
|
||||
static __thread char msg[128];
|
||||
return strerror_r (error, msg, sizeof (msg)) ? unknown : msg;
|
||||
#endif
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
--- a/libdwfl/argp-std.c
|
||||
+++ b/libdwfl/argp-std.c
|
||||
@@ -53,9 +53,6 @@ static const struct argp_option options[
|
||||
@@ -51,9 +51,6 @@ static const struct argp_option options[
|
||||
{ "linux-process-map", 'M', "FILE", 0,
|
||||
N_("Find addresses in files mapped as read from FILE"
|
||||
" in Linux /proc/PID/maps format"), 0 },
|
||||
@ -10,7 +10,7 @@
|
||||
{ "debuginfo-path", OPT_DEBUGINFO, "PATH", 0,
|
||||
N_("Search path for separate debuginfo files"), 0 },
|
||||
{ NULL, 0, NULL, 0, NULL, 0 }
|
||||
@@ -82,15 +79,6 @@ static const Dwfl_Callbacks proc_callbac
|
||||
@@ -80,15 +77,6 @@ static const Dwfl_Callbacks proc_callbac
|
||||
.find_elf = INTUSE(dwfl_linux_proc_find_elf),
|
||||
};
|
||||
|
||||
@ -26,7 +26,7 @@
|
||||
/* Structure held at state->HOOK. */
|
||||
struct parse_opt
|
||||
{
|
||||
@@ -223,43 +211,6 @@ parse_opt (int key, char *arg, struct ar
|
||||
@@ -221,43 +209,6 @@ parse_opt (int key, char *arg, struct ar
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=openssl
|
||||
PKG_BASE:=1.1.1
|
||||
PKG_BUGFIX:=q
|
||||
PKG_BUGFIX:=s
|
||||
PKG_VERSION:=$(PKG_BASE)$(PKG_BUGFIX)
|
||||
PKG_RELEASE:=$(AUTORELEASE)
|
||||
PKG_USE_MIPS16:=0
|
||||
@ -27,7 +27,7 @@ PKG_SOURCE_URL:= \
|
||||
ftp://ftp.pca.dfn.de/pub/tools/net/openssl/source/ \
|
||||
ftp://ftp.pca.dfn.de/pub/tools/net/openssl/source/old/$(PKG_BASE)/
|
||||
|
||||
PKG_HASH:=d7939ce614029cdff0b6c20f0e2e5703158a489a72b2507b8bd51bf8c8fd10ca
|
||||
PKG_HASH:=c5ac01e760ee6ff0dab61d6b2bbd30146724d063eb322180c6f18a6f74e4b6aa
|
||||
|
||||
PKG_LICENSE:=OpenSSL
|
||||
PKG_LICENSE_FILES:=LICENSE
|
||||
|
||||
@ -15,7 +15,6 @@ Reviewed-by: Paul Dale <paul.dale@oracle.com>
|
||||
Reviewed-by: Richard Levitte <levitte@openssl.org>
|
||||
(Merged from https://github.com/openssl/openssl/pull/8883)
|
||||
|
||||
diff --git a/crypto/perlasm/ppc-xlate.pl b/crypto/perlasm/ppc-xlate.pl
|
||||
--- a/crypto/perlasm/ppc-xlate.pl
|
||||
+++ b/crypto/perlasm/ppc-xlate.pl
|
||||
@@ -49,7 +49,7 @@ my $globl = sub {
|
||||
|
||||
@ -8,10 +8,9 @@ version to disable building the AFALG engine on openwrt targets.
|
||||
|
||||
Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
|
||||
|
||||
diff --git a/Configure b/Configure
|
||||
--- a/Configure
|
||||
+++ b/Configure
|
||||
@@ -1548,7 +1548,9 @@ unless ($disabled{"crypto-mdebug-backtrace"})
|
||||
@@ -1548,7 +1548,9 @@ unless ($disabled{"crypto-mdebug-backtra
|
||||
|
||||
unless ($disabled{afalgeng}) {
|
||||
$config{afalgeng}="";
|
||||
|
||||
@ -7,8 +7,6 @@ Targets are named: linux-$(CONFIG_ARCH)-openwrt
|
||||
|
||||
Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
|
||||
|
||||
diff --git a/Configurations/25-openwrt.conf b/Configurations/25-openwrt.conf
|
||||
new file mode 100644
|
||||
--- /dev/null
|
||||
+++ b/Configurations/25-openwrt.conf
|
||||
@@ -0,0 +1,52 @@
|
||||
|
||||
@ -8,10 +8,9 @@ OpenSSL_version(OPENSSL_CFLAGS), or running openssl version -a
|
||||
|
||||
Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
|
||||
|
||||
diff --git a/crypto/build.info b/crypto/build.info
|
||||
--- a/crypto/build.info
|
||||
+++ b/crypto/build.info
|
||||
@@ -10,7 +10,7 @@ EXTRA= ../ms/uplink-x86.pl ../ms/uplink.c ../ms/applink.c \
|
||||
@@ -10,7 +10,7 @@ EXTRA= ../ms/uplink-x86.pl ../ms/uplink
|
||||
ppccpuid.pl pariscid.pl alphacpuid.pl arm64cpuid.pl armv4cpuid.pl
|
||||
|
||||
DEPEND[cversion.o]=buildinf.h
|
||||
|
||||
@ -7,10 +7,9 @@ This shortens build time.
|
||||
|
||||
Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
|
||||
|
||||
diff --git a/Configure b/Configure
|
||||
--- a/Configure
|
||||
+++ b/Configure
|
||||
@@ -318,7 +318,7 @@ my $auto_threads=1; # enable threads automatically? true by default
|
||||
@@ -318,7 +318,7 @@ my $auto_threads=1; # enable threads
|
||||
my $default_ranlib;
|
||||
|
||||
# Top level directories to build
|
||||
|
||||
@ -14,7 +14,6 @@ when the client has it on top of its ciphersuite preference.
|
||||
|
||||
Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
|
||||
|
||||
diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h
|
||||
--- a/include/openssl/ssl.h
|
||||
+++ b/include/openssl/ssl.h
|
||||
@@ -173,9 +173,15 @@ extern "C" {
|
||||
@ -36,10 +35,9 @@ diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h
|
||||
# else
|
||||
# define TLS_DEFAULT_CIPHERSUITES "TLS_AES_256_GCM_SHA384:" \
|
||||
"TLS_AES_128_GCM_SHA256"
|
||||
diff --git a/ssl/ssl_ciph.c b/ssl/ssl_ciph.c
|
||||
--- a/ssl/ssl_ciph.c
|
||||
+++ b/ssl/ssl_ciph.c
|
||||
@@ -1467,11 +1467,29 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_list(const SSL_METHOD *ssl_method,
|
||||
@@ -1465,11 +1465,29 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_
|
||||
ssl_cipher_apply_rule(0, SSL_kECDHE, 0, 0, 0, 0, 0, CIPHER_DEL, -1, &head,
|
||||
&tail);
|
||||
|
||||
@ -69,7 +67,7 @@ diff --git a/ssl/ssl_ciph.c b/ssl/ssl_ciph.c
|
||||
|
||||
/*
|
||||
* ...and generally, our preferred cipher is AES.
|
||||
@@ -1527,7 +1545,7 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_list(const SSL_METHOD *ssl_method,
|
||||
@@ -1525,7 +1543,7 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_
|
||||
* Within each group, ciphers remain sorted by strength and previous
|
||||
* preference, i.e.,
|
||||
* 1) ECDHE > DHE
|
||||
|
||||
@ -8,7 +8,6 @@ This adds configuration options for engines, loading all cnf files under
|
||||
|
||||
Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
|
||||
|
||||
diff --git a/apps/openssl.cnf b/apps/openssl.cnf
|
||||
--- a/apps/openssl.cnf
|
||||
+++ b/apps/openssl.cnf
|
||||
@@ -22,6 +22,16 @@ oid_section = new_oids
|
||||
|
||||
@ -14,7 +14,6 @@ Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com>
|
||||
Reviewed-by: Richard Levitte <levitte@openssl.org>
|
||||
(Merged from https://github.com/openssl/openssl/pull/7585)
|
||||
|
||||
diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
|
||||
--- a/crypto/engine/eng_devcrypto.c
|
||||
+++ b/crypto/engine/eng_devcrypto.c
|
||||
@@ -461,6 +461,7 @@ struct digest_ctx {
|
||||
@ -25,7 +24,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
|
||||
};
|
||||
|
||||
static const struct digest_data_st {
|
||||
@@ -564,12 +565,15 @@ static int digest_update(EVP_MD_CTX *ctx, const void *data, size_t count)
|
||||
@@ -564,12 +565,15 @@ static int digest_update(EVP_MD_CTX *ctx
|
||||
if (digest_ctx == NULL)
|
||||
return 0;
|
||||
|
||||
@ -45,7 +44,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
|
||||
}
|
||||
|
||||
static int digest_final(EVP_MD_CTX *ctx, unsigned char *md)
|
||||
@@ -579,7 +583,10 @@ static int digest_final(EVP_MD_CTX *ctx, unsigned char *md)
|
||||
@@ -579,7 +583,10 @@ static int digest_final(EVP_MD_CTX *ctx,
|
||||
|
||||
if (md == NULL || digest_ctx == NULL)
|
||||
return 0;
|
||||
|
||||
@ -13,7 +13,6 @@ Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com>
|
||||
Reviewed-by: Richard Levitte <levitte@openssl.org>
|
||||
(Merged from https://github.com/openssl/openssl/pull/7585)
|
||||
|
||||
diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
|
||||
--- a/crypto/engine/eng_devcrypto.c
|
||||
+++ b/crypto/engine/eng_devcrypto.c
|
||||
@@ -16,6 +16,7 @@
|
||||
@ -79,7 +78,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
|
||||
|
||||
/*
|
||||
* Code further down must make sure that only NIDs in the table above
|
||||
@@ -333,19 +367,40 @@ static int cipher_cleanup(EVP_CIPHER_CTX *ctx)
|
||||
@@ -333,19 +367,40 @@ static int cipher_cleanup(EVP_CIPHER_CTX
|
||||
}
|
||||
|
||||
/*
|
||||
@ -185,7 +184,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
|
||||
static const EVP_CIPHER *get_cipher_method(int nid)
|
||||
{
|
||||
size_t i = get_cipher_data_index(nid);
|
||||
@@ -438,6 +520,36 @@ static int devcrypto_ciphers(ENGINE *e, const EVP_CIPHER **cipher,
|
||||
@@ -438,6 +520,36 @@ static int devcrypto_ciphers(ENGINE *e,
|
||||
return *cipher != NULL;
|
||||
}
|
||||
|
||||
@ -246,7 +245,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
|
||||
|
||||
/*
|
||||
* Code further down must make sure that only NIDs in the table above
|
||||
@@ -516,8 +637,8 @@ static const struct digest_data_st *get_digest_data(int nid)
|
||||
@@ -516,8 +637,8 @@ static const struct digest_data_st *get_
|
||||
}
|
||||
|
||||
/*
|
||||
@ -257,7 +256,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
|
||||
*/
|
||||
|
||||
static int digest_init(EVP_MD_CTX *ctx)
|
||||
@@ -630,52 +751,94 @@ static int digest_cleanup(EVP_MD_CTX *ctx)
|
||||
@@ -630,52 +751,94 @@ static int digest_cleanup(EVP_MD_CTX *ct
|
||||
return clean_devcrypto_session(&digest_ctx->sess);
|
||||
}
|
||||
|
||||
@ -402,7 +401,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
|
||||
}
|
||||
}
|
||||
|
||||
@@ -739,8 +909,154 @@ static int devcrypto_digests(ENGINE *e, const EVP_MD **digest,
|
||||
@@ -739,7 +909,153 @@ static int devcrypto_digests(ENGINE *e,
|
||||
return *digest != NULL;
|
||||
}
|
||||
|
||||
@ -478,8 +477,8 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
|
||||
+ "DIGESTS",
|
||||
+ "either ALL, NONE, or a comma-separated list of digests to enable [default=ALL]",
|
||||
+ ENGINE_CMD_FLAG_STRING},
|
||||
#endif
|
||||
|
||||
+#endif
|
||||
+
|
||||
+ {0, NULL, NULL, 0}
|
||||
+};
|
||||
+
|
||||
@ -503,7 +502,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
|
||||
+ use_softdrivers = i;
|
||||
+#ifdef IMPLEMENT_DIGEST
|
||||
+ rebuild_known_digest_nids(e);
|
||||
+#endif
|
||||
#endif
|
||||
+ rebuild_known_cipher_nids(e);
|
||||
+ return 1;
|
||||
+#endif /* CIOCGSESSINFO */
|
||||
@ -553,10 +552,9 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
|
||||
+ }
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
* LOAD / UNLOAD
|
||||
@@ -806,6 +1122,8 @@ void engine_load_devcrypto_int()
|
||||
|
||||
if (!ENGINE_set_id(e, "devcrypto")
|
||||
|
||||
@ -11,10 +11,9 @@ Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com>
|
||||
Reviewed-by: Richard Levitte <levitte@openssl.org>
|
||||
(Merged from https://github.com/openssl/openssl/pull/7585)
|
||||
|
||||
diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
|
||||
--- a/crypto/engine/eng_devcrypto.c
|
||||
+++ b/crypto/engine/eng_devcrypto.c
|
||||
@@ -50,16 +50,20 @@ static int use_softdrivers = DEVCRYPTO_DEFAULT_USE_SOFDTRIVERS;
|
||||
@@ -50,16 +50,20 @@ static int use_softdrivers = DEVCRYPTO_D
|
||||
*/
|
||||
struct driver_info_st {
|
||||
enum devcrypto_status_t {
|
||||
@ -81,7 +80,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
|
||||
#endif /* CIOCGSESSINFO */
|
||||
}
|
||||
ioctl(cfd, CIOCFSESSION, &sess.ses);
|
||||
@@ -505,8 +514,11 @@ static void destroy_all_cipher_methods(void)
|
||||
@@ -505,8 +514,11 @@ static void destroy_all_cipher_methods(v
|
||||
{
|
||||
size_t i;
|
||||
|
||||
@ -94,7 +93,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
|
||||
}
|
||||
|
||||
static int devcrypto_ciphers(ENGINE *e, const EVP_CIPHER **cipher,
|
||||
@@ -550,6 +562,40 @@ static int cryptodev_select_cipher_cb(const char *str, int len, void *usr)
|
||||
@@ -550,6 +562,40 @@ static int cryptodev_select_cipher_cb(co
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -189,7 +188,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
|
||||
EVP_MD_meth_free(known_digest_methods[i]);
|
||||
known_digest_methods[i] = NULL;
|
||||
goto finish;
|
||||
@@ -894,8 +945,11 @@ static void destroy_all_digest_methods(void)
|
||||
@@ -894,8 +945,11 @@ static void destroy_all_digest_methods(v
|
||||
{
|
||||
size_t i;
|
||||
|
||||
@ -202,7 +201,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
|
||||
}
|
||||
|
||||
static int devcrypto_digests(ENGINE *e, const EVP_MD **digest,
|
||||
@@ -939,6 +993,43 @@ static int cryptodev_select_digest_cb(const char *str, int len, void *usr)
|
||||
@@ -939,6 +993,43 @@ static int cryptodev_select_digest_cb(co
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -246,7 +245,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
|
||||
#endif
|
||||
|
||||
/******************************************************************************
|
||||
@@ -983,6 +1074,11 @@ static const ENGINE_CMD_DEFN devcrypto_cmds[] = {
|
||||
@@ -983,6 +1074,11 @@ static const ENGINE_CMD_DEFN devcrypto_c
|
||||
ENGINE_CMD_FLAG_STRING},
|
||||
#endif
|
||||
|
||||
@ -258,7 +257,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
|
||||
{0, NULL, NULL, 0}
|
||||
};
|
||||
|
||||
@@ -1051,6 +1147,13 @@ static int devcrypto_ctrl(ENGINE *e, int cmd, long i, void *p, void (*f) (void))
|
||||
@@ -1051,6 +1147,13 @@ static int devcrypto_ctrl(ENGINE *e, int
|
||||
return 1;
|
||||
#endif /* IMPLEMENT_DIGEST */
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -19,7 +19,6 @@ turn them on if it is safe and fast enough.
|
||||
|
||||
Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
|
||||
|
||||
diff --git a/engines/e_devcrypto.c b/engines/e_devcrypto.c
|
||||
--- a/engines/e_devcrypto.c
|
||||
+++ b/engines/e_devcrypto.c
|
||||
@@ -852,7 +852,7 @@ static void prepare_digest_methods(void)
|
||||
@ -31,7 +30,7 @@ diff --git a/engines/e_devcrypto.c b/engines/e_devcrypto.c
|
||||
|
||||
/*
|
||||
* Check that the digest is usable
|
||||
@@ -1072,7 +1072,7 @@ static const ENGINE_CMD_DEFN devcrypto_cmds[] = {
|
||||
@@ -1072,7 +1072,7 @@ static const ENGINE_CMD_DEFN devcrypto_c
|
||||
#ifdef IMPLEMENT_DIGEST
|
||||
{DEVCRYPTO_CMD_DIGESTS,
|
||||
"DIGESTS",
|
||||
|
||||
@ -8,10 +8,9 @@ session. It may have been closed by another process after a fork.
|
||||
|
||||
Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
|
||||
|
||||
diff --git a/engines/e_devcrypto.c b/engines/e_devcrypto.c
|
||||
--- a/engines/e_devcrypto.c
|
||||
+++ b/engines/e_devcrypto.c
|
||||
@@ -195,9 +195,8 @@ static int cipher_init(EVP_CIPHER_CTX *ctx, const unsigned char *key,
|
||||
@@ -195,9 +195,8 @@ static int cipher_init(EVP_CIPHER_CTX *c
|
||||
get_cipher_data(EVP_CIPHER_CTX_nid(ctx));
|
||||
|
||||
/* cleanup a previous session */
|
||||
|
||||
@ -0,0 +1,42 @@
|
||||
From e63d7cdfdac78c6fd27e9e63150335767592b85e Mon Sep 17 00:00:00 2001
|
||||
From: Natanael Copa <ncopa@alpinelinux.org>
|
||||
Date: Fri, 17 Jun 2022 17:45:34 +0200
|
||||
Subject: awk: fix use after free (CVE-2022-30065)
|
||||
|
||||
fixes https://bugs.busybox.net/show_bug.cgi?id=14781
|
||||
|
||||
function old new delta
|
||||
evaluate 3343 3357 +14
|
||||
|
||||
Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
|
||||
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
|
||||
---
|
||||
editors/awk.c | 3 +++
|
||||
testsuite/awk.tests | 6 ++++++
|
||||
2 files changed, 9 insertions(+)
|
||||
|
||||
--- a/editors/awk.c
|
||||
+++ b/editors/awk.c
|
||||
@@ -3114,6 +3114,9 @@ static var *evaluate(node *op, var *res)
|
||||
|
||||
case XC( OC_MOVE ):
|
||||
debug_printf_eval("MOVE\n");
|
||||
+ /* make sure that we never return a temp var */
|
||||
+ if (L.v == TMPVAR0)
|
||||
+ L.v = res;
|
||||
/* if source is a temporary string, jusk relink it to dest */
|
||||
if (R.v == TMPVAR1
|
||||
&& !(R.v->type & VF_NUMBER)
|
||||
--- a/testsuite/awk.tests
|
||||
+++ b/testsuite/awk.tests
|
||||
@@ -469,4 +469,10 @@ testing 'awk printf %% prints one %' \
|
||||
"%\n" \
|
||||
'' ''
|
||||
|
||||
+testing 'awk assign while test' \
|
||||
+ "awk '\$1==\$1=\"foo\" {print \$1}'" \
|
||||
+ "foo\n" \
|
||||
+ "" \
|
||||
+ "foo"
|
||||
+
|
||||
exit $FAILCOUNT
|
||||
@ -13,7 +13,7 @@ produce a noisy warning.
|
||||
|
||||
--- a/drivers/usb/host/xhci-pci.c
|
||||
+++ b/drivers/usb/host/xhci-pci.c
|
||||
@@ -287,6 +287,7 @@ static void xhci_pci_quirks(struct devic
|
||||
@@ -291,6 +291,7 @@ static void xhci_pci_quirks(struct devic
|
||||
pdev->device == 0x0015) {
|
||||
xhci->quirks |= XHCI_RESET_ON_RESUME;
|
||||
xhci->quirks |= XHCI_ZERO_64B_REGS;
|
||||
@ -43,7 +43,7 @@ produce a noisy warning.
|
||||
hcd->msi_enabled = 1;
|
||||
--- a/drivers/usb/host/xhci.h
|
||||
+++ b/drivers/usb/host/xhci.h
|
||||
@@ -1896,6 +1896,7 @@ struct xhci_hcd {
|
||||
@@ -1897,6 +1897,7 @@ struct xhci_hcd {
|
||||
struct xhci_hub usb2_rhub;
|
||||
struct xhci_hub usb3_rhub;
|
||||
/* support xHCI 1.0 spec USB2 hardware LPM */
|
||||
|
||||
@ -109,6 +109,23 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
virtual_flash {
|
||||
compatible = "mtd-concat";
|
||||
devices = <&fwconcat0 &fwconcat1>;
|
||||
|
||||
partitions {
|
||||
compatible = "fixed-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
partition@0 {
|
||||
compatible = "denx,uimage";
|
||||
label = "firmware";
|
||||
reg = <0x0 0x0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&usb1 {
|
||||
@ -186,9 +203,8 @@
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@50000 {
|
||||
compatible = "denx,uimage";
|
||||
label = "firmware";
|
||||
fwconcat0: partition@50000 {
|
||||
label = "fwconcat0";
|
||||
reg = <0x050000 0x610000>;
|
||||
};
|
||||
|
||||
@ -198,10 +214,9 @@
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@670000 {
|
||||
label = "unknown";
|
||||
fwconcat1: partition@670000 {
|
||||
label = "fwconcat1";
|
||||
reg = <0x670000 0x190000>;
|
||||
read-only;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
180
target/linux/ath79/dts/ar7161_trendnet_tew-673gru.dts
Normal file
180
target/linux/ath79/dts/ar7161_trendnet_tew-673gru.dts
Normal file
@ -0,0 +1,180 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
|
||||
#include "ar7100.dtsi"
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
||||
/ {
|
||||
compatible = "trendnet,tew-673gru", "qca,ar7161";
|
||||
model = "TRENDNET TEW-673GRU";
|
||||
|
||||
aliases {
|
||||
led-boot = &led_wps;
|
||||
led-failsafe = &led_wps;
|
||||
led-running = &led_wps;
|
||||
led-upgrade = &led_wps;
|
||||
};
|
||||
|
||||
extosc: ref {
|
||||
compatible = "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-output-names = "ref";
|
||||
clock-frequency = <40000000>;
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
led_wps: wps {
|
||||
label = "blue:wps";
|
||||
gpios = <&gpio 9 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
keys {
|
||||
compatible = "gpio-keys";
|
||||
|
||||
reset {
|
||||
label = "reset";
|
||||
linux,code = <KEY_RESTART>;
|
||||
gpios = <&gpio 3 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
wps {
|
||||
label = "wps";
|
||||
linux,code = <KEY_WPS_BUTTON>;
|
||||
gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
rtl8366s {
|
||||
compatible = "realtek,rtl8366s";
|
||||
gpio-sda = <&gpio 5 GPIO_ACTIVE_HIGH>;
|
||||
gpio-sck = <&gpio 7 GPIO_ACTIVE_HIGH>;
|
||||
realtek,initvals = <0x06 0x0108>;
|
||||
|
||||
mdio-bus {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
status = "okay";
|
||||
|
||||
phy4: ethernet-phy@4 {
|
||||
reg = <4>;
|
||||
phy-mode = "rgmii";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
virtual_flash {
|
||||
compatible = "mtd-concat";
|
||||
devices = <&fwconcat0 &fwconcat1>;
|
||||
|
||||
partitions {
|
||||
compatible = "fixed-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
partition@0 {
|
||||
compatible = "denx,uimage";
|
||||
label = "firmware";
|
||||
reg = <0x0 0x0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&usb1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_phy {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pcie0 {
|
||||
status = "okay";
|
||||
|
||||
wifi@0,11 {
|
||||
compatible = "pci168c,0029";
|
||||
reg = <0x8800 0 0 0 0>;
|
||||
qca,no-eeprom;
|
||||
};
|
||||
|
||||
wifi@0,12 {
|
||||
compatible = "pci168c,0029";
|
||||
reg = <0x9000 0 0 0 0>;
|
||||
qca,no-eeprom;
|
||||
};
|
||||
};
|
||||
|
||||
&pll {
|
||||
clocks = <&extosc>;
|
||||
};
|
||||
|
||||
&spi {
|
||||
status = "okay";
|
||||
|
||||
flash@0 {
|
||||
compatible = "jedec,spi-nor";
|
||||
reg = <0>;
|
||||
spi-max-frequency = <25000000>;
|
||||
|
||||
partitions {
|
||||
compatible = "fixed-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
partition@0 {
|
||||
label = "u-boot";
|
||||
reg = <0x000000 0x040000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@40000 {
|
||||
label = "config";
|
||||
reg = <0x040000 0x010000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
fwconcat0: partition@50000 {
|
||||
label = "fwconcat0";
|
||||
reg = <0x050000 0x610000>;
|
||||
};
|
||||
|
||||
partition@660000 {
|
||||
label = "caldata";
|
||||
reg = <0x660000 0x010000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
fwconcat1: partition@670000 {
|
||||
label = "fwconcat1";
|
||||
reg = <0x670000 0x190000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
ð0 {
|
||||
status = "okay";
|
||||
|
||||
pll-data = <0x11110000 0x00001099 0x00991099>;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
};
|
||||
};
|
||||
|
||||
ð1 {
|
||||
status = "okay";
|
||||
|
||||
pll-data = <0x11110000 0x00001099 0x00991099>;
|
||||
|
||||
phy-handle = <&phy4>;
|
||||
};
|
||||
@ -195,7 +195,8 @@ ath79_setup_interfaces()
|
||||
;;
|
||||
buffalo,wzr-hp-g300nh-rb|\
|
||||
buffalo,wzr-hp-g300nh-s|\
|
||||
dlink,dir-825-b1)
|
||||
dlink,dir-825-b1|\
|
||||
trendnet,tew-673gru)
|
||||
ucidef_set_interface_wan "eth1"
|
||||
ucidef_add_switch "switch0" \
|
||||
"0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
|
||||
@ -605,7 +606,8 @@ ath79_setup_macs()
|
||||
dlink,dap-3662-a1)
|
||||
label_mac=$(mtd_get_mac_ascii bdcfg "wlanmac")
|
||||
;;
|
||||
dlink,dir-825-b1)
|
||||
dlink,dir-825-b1|\
|
||||
trendnet,tew-673gru)
|
||||
lan_mac=$(mtd_get_mac_text "caldata" 0xffa0)
|
||||
wan_mac=$(mtd_get_mac_text "caldata" 0xffb4)
|
||||
label_mac=$wan_mac
|
||||
|
||||
@ -160,7 +160,8 @@ case "$FIRMWARE" in
|
||||
netgear,wndap360)
|
||||
caldata_extract "art" 0x1000 0xeb8
|
||||
;;
|
||||
dlink,dir-825-b1)
|
||||
dlink,dir-825-b1|\
|
||||
trendnet,tew-673gru)
|
||||
caldata_extract "caldata" 0x1000 0xeb8
|
||||
ath9k_patch_mac_crc $(mtd_get_mac_text "caldata" 0xffa0) 0x20c
|
||||
;;
|
||||
@ -179,7 +180,8 @@ case "$FIRMWARE" in
|
||||
netgear,wndap360)
|
||||
caldata_extract "art" 0x5000 0xeb8
|
||||
;;
|
||||
dlink,dir-825-b1)
|
||||
dlink,dir-825-b1|\
|
||||
trendnet,tew-673gru)
|
||||
caldata_extract "caldata" 0x5000 0xeb8
|
||||
ath9k_patch_mac_crc $(macaddr_add $(mtd_get_mac_text "caldata" 0xffb4) 1) 0x20c
|
||||
;;
|
||||
|
||||
@ -2556,6 +2556,22 @@ define Device/teltonika_rut955-h7v3c0
|
||||
endef
|
||||
TARGET_DEVICES += teltonika_rut955-h7v3c0
|
||||
|
||||
define Device/trendnet_tew-673gru
|
||||
SOC := ar7161
|
||||
DEVICE_VENDOR := Trendnet
|
||||
DEVICE_MODEL := TEW-673GRU
|
||||
DEVICE_VARIANT := v1.0R
|
||||
DEVICE_PACKAGES := -uboot-envtools kmod-usb-ohci kmod-usb2 \
|
||||
kmod-owl-loader kmod-switch-rtl8366s
|
||||
IMAGE_SIZE := 7808k
|
||||
FACTORY_SIZE := 6144k
|
||||
IMAGES += factory.bin
|
||||
IMAGE/factory.bin = append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
|
||||
pad-rootfs | check-size $$$$(FACTORY_SIZE) | pad-to $$$$(FACTORY_SIZE) | \
|
||||
append-string AP94-AR7161-RT-080619-01
|
||||
endef
|
||||
TARGET_DEVICES += trendnet_tew-673gru
|
||||
|
||||
define Device/trendnet_tew-823dru
|
||||
SOC := qca9558
|
||||
DEVICE_VENDOR := Trendnet
|
||||
|
||||
@ -740,7 +740,7 @@ SVN-Revision: 35130
|
||||
EXPORT_SYMBOL(xfrm_parse_spi);
|
||||
--- a/net/ipv4/tcp_input.c
|
||||
+++ b/net/ipv4/tcp_input.c
|
||||
@@ -4127,14 +4127,16 @@ static bool tcp_parse_aligned_timestamp(
|
||||
@@ -4128,14 +4128,16 @@ static bool tcp_parse_aligned_timestamp(
|
||||
{
|
||||
const __be32 *ptr = (const __be32 *)(th + 1);
|
||||
|
||||
|
||||
@ -750,7 +750,7 @@ SVN-Revision: 35130
|
||||
EXPORT_SYMBOL(xfrm_parse_spi);
|
||||
--- a/net/ipv4/tcp_input.c
|
||||
+++ b/net/ipv4/tcp_input.c
|
||||
@@ -4151,14 +4151,16 @@ static bool tcp_parse_aligned_timestamp(
|
||||
@@ -4152,14 +4152,16 @@ static bool tcp_parse_aligned_timestamp(
|
||||
{
|
||||
const __be32 *ptr = (const __be32 *)(th + 1);
|
||||
|
||||
|
||||
@ -230,7 +230,7 @@ bcm2835-mmc: uninitialized_var is no more
|
||||
|
||||
--- a/drivers/mmc/core/block.c
|
||||
+++ b/drivers/mmc/core/block.c
|
||||
@@ -171,6 +171,13 @@ static DEFINE_MUTEX(open_lock);
|
||||
@@ -172,6 +172,13 @@ static DEFINE_MUTEX(open_lock);
|
||||
module_param(perdev_minors, int, 0444);
|
||||
MODULE_PARM_DESC(perdev_minors, "Minors numbers to allocate per device");
|
||||
|
||||
@ -244,7 +244,7 @@ bcm2835-mmc: uninitialized_var is no more
|
||||
static inline int mmc_blk_part_switch(struct mmc_card *card,
|
||||
unsigned int part_type);
|
||||
static void mmc_blk_rw_rq_prep(struct mmc_queue_req *mqrq,
|
||||
@@ -2928,6 +2935,8 @@ static int mmc_blk_probe(struct mmc_card
|
||||
@@ -2936,6 +2943,8 @@ static int mmc_blk_probe(struct mmc_card
|
||||
{
|
||||
struct mmc_blk_data *md;
|
||||
int ret = 0;
|
||||
@ -253,7 +253,7 @@ bcm2835-mmc: uninitialized_var is no more
|
||||
|
||||
/*
|
||||
* Check that the card supports the command class(es) we need.
|
||||
@@ -2935,7 +2944,16 @@ static int mmc_blk_probe(struct mmc_card
|
||||
@@ -2943,7 +2952,16 @@ static int mmc_blk_probe(struct mmc_card
|
||||
if (!(card->csd.cmdclass & CCC_BLOCK_READ))
|
||||
return -ENODEV;
|
||||
|
||||
@ -271,7 +271,7 @@ bcm2835-mmc: uninitialized_var is no more
|
||||
|
||||
card->complete_wq = alloc_workqueue("mmc_complete",
|
||||
WQ_MEM_RECLAIM | WQ_HIGHPRI, 0);
|
||||
@@ -2950,6 +2968,17 @@ static int mmc_blk_probe(struct mmc_card
|
||||
@@ -2958,6 +2976,17 @@ static int mmc_blk_probe(struct mmc_card
|
||||
goto out_free;
|
||||
}
|
||||
|
||||
|
||||
@ -15,7 +15,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
|
||||
--- a/drivers/usb/host/xhci.c
|
||||
+++ b/drivers/usb/host/xhci.c
|
||||
@@ -1612,6 +1612,109 @@ command_cleanup:
|
||||
@@ -1618,6 +1618,109 @@ command_cleanup:
|
||||
}
|
||||
|
||||
/*
|
||||
@ -125,7 +125,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
* non-error returns are a promise to giveback() the urb later
|
||||
* we drop ownership so next owner (or urb unlink) can get it
|
||||
*/
|
||||
@@ -5437,6 +5540,7 @@ static const struct hc_driver xhci_hc_dr
|
||||
@@ -5443,6 +5546,7 @@ static const struct hc_driver xhci_hc_dr
|
||||
.endpoint_reset = xhci_endpoint_reset,
|
||||
.check_bandwidth = xhci_check_bandwidth,
|
||||
.reset_bandwidth = xhci_reset_bandwidth,
|
||||
|
||||
@ -22,7 +22,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
|
||||
--- a/drivers/usb/host/xhci-mem.c
|
||||
+++ b/drivers/usb/host/xhci-mem.c
|
||||
@@ -2516,9 +2516,11 @@ int xhci_mem_init(struct xhci_hcd *xhci,
|
||||
@@ -2520,9 +2520,11 @@ int xhci_mem_init(struct xhci_hcd *xhci,
|
||||
* Event ring setup: Allocate a normal ring, but also setup
|
||||
* the event ring segment table (ERST). Section 4.9.3.
|
||||
*/
|
||||
@ -36,7 +36,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
if (!xhci->event_ring)
|
||||
goto fail;
|
||||
if (xhci_check_trb_in_td_math(xhci) < 0)
|
||||
@@ -2531,7 +2533,7 @@ int xhci_mem_init(struct xhci_hcd *xhci,
|
||||
@@ -2535,7 +2537,7 @@ int xhci_mem_init(struct xhci_hcd *xhci,
|
||||
/* set ERST count with the number of entries in the segment table */
|
||||
val = readl(&xhci->ir_set->erst_size);
|
||||
val &= ERST_SIZE_MASK;
|
||||
|
||||
@ -42,7 +42,7 @@ Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
||||
============
|
||||
--- a/include/uapi/linux/videodev2.h
|
||||
+++ b/include/uapi/linux/videodev2.h
|
||||
@@ -1882,6 +1882,7 @@ struct v4l2_querymenu {
|
||||
@@ -1883,6 +1883,7 @@ struct v4l2_querymenu {
|
||||
#define V4L2_CTRL_FLAG_HAS_PAYLOAD 0x0100
|
||||
#define V4L2_CTRL_FLAG_EXECUTE_ON_WRITE 0x0200
|
||||
#define V4L2_CTRL_FLAG_MODIFY_LAYOUT 0x0400
|
||||
|
||||
@ -22,7 +22,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
--- a/drivers/usb/host/xhci-pci.c
|
||||
+++ b/drivers/usb/host/xhci-pci.c
|
||||
@@ -304,6 +304,7 @@ static void xhci_pci_quirks(struct devic
|
||||
@@ -291,6 +291,7 @@ static void xhci_pci_quirks(struct devic
|
||||
if (pdev->vendor == PCI_VENDOR_ID_VIA && pdev->device == 0x3483) {
|
||||
xhci->quirks |= XHCI_LPM_SUPPORT;
|
||||
xhci->quirks |= XHCI_EP_CTX_BROKEN_DCS;
|
||||
@ -50,11 +50,11 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
addr = xhci_trb_virt_to_dma(new_seg, new_deq);
|
||||
--- a/drivers/usb/host/xhci.h
|
||||
+++ b/drivers/usb/host/xhci.h
|
||||
@@ -1904,6 +1904,7 @@ struct xhci_hcd {
|
||||
#define XHCI_BROKEN_D3COLD BIT_ULL(41)
|
||||
@@ -1905,6 +1905,7 @@ struct xhci_hcd {
|
||||
#define XHCI_EP_CTX_BROKEN_DCS BIT_ULL(42)
|
||||
#define XHCI_SUSPEND_RESUME_CLKS BIT_ULL(43)
|
||||
+#define XHCI_AVOID_DQ_ON_LINK BIT_ULL(44)
|
||||
#define XHCI_RESET_TO_DEFAULT BIT_ULL(44)
|
||||
+#define XHCI_AVOID_DQ_ON_LINK BIT_ULL(45)
|
||||
|
||||
unsigned int num_active_eps;
|
||||
unsigned int limit_active_eps;
|
||||
|
||||
@ -145,7 +145,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
if (ret)
|
||||
return -ENOMEM;
|
||||
|
||||
@@ -1816,7 +1820,7 @@ int xhci_alloc_erst(struct xhci_hcd *xhc
|
||||
@@ -1820,7 +1824,7 @@ int xhci_alloc_erst(struct xhci_hcd *xhc
|
||||
for (val = 0; val < evt_ring->num_segs; val++) {
|
||||
entry = &erst->entries[val];
|
||||
entry->seg_addr = cpu_to_le64(seg->dma);
|
||||
@ -226,7 +226,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
}
|
||||
--- a/drivers/usb/host/xhci.c
|
||||
+++ b/drivers/usb/host/xhci.c
|
||||
@@ -870,8 +870,8 @@ static void xhci_clear_command_ring(stru
|
||||
@@ -876,8 +876,8 @@ static void xhci_clear_command_ring(stru
|
||||
seg = ring->deq_seg;
|
||||
do {
|
||||
memset(seg->trbs, 0,
|
||||
@ -237,7 +237,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
cpu_to_le32(~TRB_CYCLE);
|
||||
seg = seg->next;
|
||||
} while (seg != ring->deq_seg);
|
||||
@@ -882,7 +882,7 @@ static void xhci_clear_command_ring(stru
|
||||
@@ -888,7 +888,7 @@ static void xhci_clear_command_ring(stru
|
||||
ring->enq_seg = ring->deq_seg;
|
||||
ring->enqueue = ring->dequeue;
|
||||
|
||||
|
||||
@ -53,7 +53,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
cycle_state, type, max_packet, flags);
|
||||
--- a/drivers/usb/host/xhci-pci.c
|
||||
+++ b/drivers/usb/host/xhci-pci.c
|
||||
@@ -305,6 +305,7 @@ static void xhci_pci_quirks(struct devic
|
||||
@@ -292,6 +292,7 @@ static void xhci_pci_quirks(struct devic
|
||||
xhci->quirks |= XHCI_LPM_SUPPORT;
|
||||
xhci->quirks |= XHCI_EP_CTX_BROKEN_DCS;
|
||||
xhci->quirks |= XHCI_AVOID_DQ_ON_LINK;
|
||||
@ -63,11 +63,11 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA &&
|
||||
--- a/drivers/usb/host/xhci.h
|
||||
+++ b/drivers/usb/host/xhci.h
|
||||
@@ -1906,6 +1906,7 @@ struct xhci_hcd {
|
||||
#define XHCI_EP_CTX_BROKEN_DCS BIT_ULL(42)
|
||||
@@ -1907,6 +1907,7 @@ struct xhci_hcd {
|
||||
#define XHCI_SUSPEND_RESUME_CLKS BIT_ULL(43)
|
||||
#define XHCI_AVOID_DQ_ON_LINK BIT_ULL(44)
|
||||
+#define XHCI_VLI_TRB_CACHE_BUG BIT_ULL(45)
|
||||
#define XHCI_RESET_TO_DEFAULT BIT_ULL(44)
|
||||
#define XHCI_AVOID_DQ_ON_LINK BIT_ULL(45)
|
||||
+#define XHCI_VLI_TRB_CACHE_BUG BIT_ULL(46)
|
||||
|
||||
unsigned int num_active_eps;
|
||||
unsigned int limit_active_eps;
|
||||
|
||||
@ -26,7 +26,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
--- a/drivers/usb/host/xhci-pci.c
|
||||
+++ b/drivers/usb/host/xhci-pci.c
|
||||
@@ -306,6 +306,7 @@ static void xhci_pci_quirks(struct devic
|
||||
@@ -293,6 +293,7 @@ static void xhci_pci_quirks(struct devic
|
||||
xhci->quirks |= XHCI_EP_CTX_BROKEN_DCS;
|
||||
xhci->quirks |= XHCI_AVOID_DQ_ON_LINK;
|
||||
xhci->quirks |= XHCI_VLI_TRB_CACHE_BUG;
|
||||
@ -86,11 +86,11 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
first_trb = false;
|
||||
--- a/drivers/usb/host/xhci.h
|
||||
+++ b/drivers/usb/host/xhci.h
|
||||
@@ -1907,6 +1907,7 @@ struct xhci_hcd {
|
||||
#define XHCI_SUSPEND_RESUME_CLKS BIT_ULL(43)
|
||||
#define XHCI_AVOID_DQ_ON_LINK BIT_ULL(44)
|
||||
#define XHCI_VLI_TRB_CACHE_BUG BIT_ULL(45)
|
||||
+#define XHCI_VLI_SS_BULK_OUT_BUG BIT_ULL(46)
|
||||
@@ -1908,6 +1908,7 @@ struct xhci_hcd {
|
||||
#define XHCI_RESET_TO_DEFAULT BIT_ULL(44)
|
||||
#define XHCI_AVOID_DQ_ON_LINK BIT_ULL(45)
|
||||
#define XHCI_VLI_TRB_CACHE_BUG BIT_ULL(46)
|
||||
+#define XHCI_VLI_SS_BULK_OUT_BUG BIT_ULL(47)
|
||||
|
||||
unsigned int num_active_eps;
|
||||
unsigned int limit_active_eps;
|
||||
|
||||
@ -23,7 +23,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
--- a/drivers/mmc/core/block.c
|
||||
+++ b/drivers/mmc/core/block.c
|
||||
@@ -1875,7 +1875,11 @@ static void mmc_blk_mq_rw_recovery(struc
|
||||
@@ -1883,7 +1883,11 @@ static void mmc_blk_mq_rw_recovery(struc
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@ -127,11 +127,11 @@ it on BCM4708 family.
|
||||
/*
|
||||
--- a/drivers/usb/host/xhci.h
|
||||
+++ b/drivers/usb/host/xhci.h
|
||||
@@ -1889,6 +1889,7 @@ struct xhci_hcd {
|
||||
#define XHCI_NO_SOFT_RETRY BIT_ULL(40)
|
||||
@@ -1890,6 +1890,7 @@ struct xhci_hcd {
|
||||
#define XHCI_EP_CTX_BROKEN_DCS BIT_ULL(42)
|
||||
#define XHCI_SUSPEND_RESUME_CLKS BIT_ULL(43)
|
||||
+#define XHCI_FAKE_DOORBELL BIT_ULL(44)
|
||||
#define XHCI_RESET_TO_DEFAULT BIT_ULL(44)
|
||||
+#define XHCI_FAKE_DOORBELL BIT_ULL(45)
|
||||
|
||||
unsigned int num_active_eps;
|
||||
unsigned int limit_active_eps;
|
||||
|
||||
@ -127,11 +127,11 @@ it on BCM4708 family.
|
||||
/*
|
||||
--- a/drivers/usb/host/xhci.h
|
||||
+++ b/drivers/usb/host/xhci.h
|
||||
@@ -1904,6 +1904,7 @@ struct xhci_hcd {
|
||||
#define XHCI_BROKEN_D3COLD BIT_ULL(41)
|
||||
@@ -1905,6 +1905,7 @@ struct xhci_hcd {
|
||||
#define XHCI_EP_CTX_BROKEN_DCS BIT_ULL(42)
|
||||
#define XHCI_SUSPEND_RESUME_CLKS BIT_ULL(43)
|
||||
+#define XHCI_FAKE_DOORBELL BIT_ULL(44)
|
||||
#define XHCI_RESET_TO_DEFAULT BIT_ULL(44)
|
||||
+#define XHCI_FAKE_DOORBELL BIT_ULL(45)
|
||||
|
||||
unsigned int num_active_eps;
|
||||
unsigned int limit_active_eps;
|
||||
|
||||
@ -2541,10 +2541,6 @@ CONFIG_INET=y
|
||||
# CONFIG_INET6_ESPINTCP is not set
|
||||
# CONFIG_INET6_IPCOMP is not set
|
||||
# CONFIG_INET6_TUNNEL is not set
|
||||
# CONFIG_INET6_XFRM_MODE_BEET is not set
|
||||
# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
|
||||
# CONFIG_INET6_XFRM_MODE_TRANSPORT is not set
|
||||
# CONFIG_INET6_XFRM_MODE_TUNNEL is not set
|
||||
# CONFIG_INET6_XFRM_TUNNEL is not set
|
||||
# CONFIG_INET_AH is not set
|
||||
# CONFIG_INET_DIAG is not set
|
||||
|
||||
@ -2642,10 +2642,6 @@ CONFIG_INET=y
|
||||
# CONFIG_INET6_ESPINTCP is not set
|
||||
# CONFIG_INET6_IPCOMP is not set
|
||||
# CONFIG_INET6_TUNNEL is not set
|
||||
# CONFIG_INET6_XFRM_MODE_BEET is not set
|
||||
# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
|
||||
# CONFIG_INET6_XFRM_MODE_TRANSPORT is not set
|
||||
# CONFIG_INET6_XFRM_MODE_TUNNEL is not set
|
||||
# CONFIG_INET6_XFRM_TUNNEL is not set
|
||||
# CONFIG_INET_AH is not set
|
||||
# CONFIG_INET_DIAG is not set
|
||||
|
||||
@ -338,7 +338,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
if (iptunnel_handle_offloads(skb, SKB_GSO_IPXIP6))
|
||||
return -1;
|
||||
|
||||
@@ -1555,6 +1716,14 @@ ip6_tnl_change(struct ip6_tnl *t, const
|
||||
@@ -1556,6 +1717,14 @@ ip6_tnl_change(struct ip6_tnl *t, const
|
||||
t->parms.link = p->link;
|
||||
t->parms.proto = p->proto;
|
||||
t->parms.fwmark = p->fwmark;
|
||||
@ -353,7 +353,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
dst_cache_reset(&t->dst_cache);
|
||||
ip6_tnl_link_config(t);
|
||||
return 0;
|
||||
@@ -1593,6 +1762,7 @@ ip6_tnl_parm_from_user(struct __ip6_tnl_
|
||||
@@ -1594,6 +1763,7 @@ ip6_tnl_parm_from_user(struct __ip6_tnl_
|
||||
p->flowinfo = u->flowinfo;
|
||||
p->link = u->link;
|
||||
p->proto = u->proto;
|
||||
@ -361,7 +361,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
memcpy(p->name, u->name, sizeof(u->name));
|
||||
}
|
||||
|
||||
@@ -1978,6 +2148,15 @@ static int ip6_tnl_validate(struct nlatt
|
||||
@@ -1979,6 +2149,15 @@ static int ip6_tnl_validate(struct nlatt
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -377,7 +377,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
static void ip6_tnl_netlink_parms(struct nlattr *data[],
|
||||
struct __ip6_tnl_parm *parms)
|
||||
{
|
||||
@@ -2015,6 +2194,46 @@ static void ip6_tnl_netlink_parms(struct
|
||||
@@ -2016,6 +2195,46 @@ static void ip6_tnl_netlink_parms(struct
|
||||
|
||||
if (data[IFLA_IPTUN_FWMARK])
|
||||
parms->fwmark = nla_get_u32(data[IFLA_IPTUN_FWMARK]);
|
||||
@ -424,7 +424,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
}
|
||||
|
||||
static bool ip6_tnl_netlink_encap_parms(struct nlattr *data[],
|
||||
@@ -2130,6 +2349,12 @@ static void ip6_tnl_dellink(struct net_d
|
||||
@@ -2131,6 +2350,12 @@ static void ip6_tnl_dellink(struct net_d
|
||||
|
||||
static size_t ip6_tnl_get_size(const struct net_device *dev)
|
||||
{
|
||||
@ -437,7 +437,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
return
|
||||
/* IFLA_IPTUN_LINK */
|
||||
nla_total_size(4) +
|
||||
@@ -2159,6 +2384,24 @@ static size_t ip6_tnl_get_size(const str
|
||||
@@ -2160,6 +2385,24 @@ static size_t ip6_tnl_get_size(const str
|
||||
nla_total_size(0) +
|
||||
/* IFLA_IPTUN_FWMARK */
|
||||
nla_total_size(4) +
|
||||
@ -462,7 +462,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
0;
|
||||
}
|
||||
|
||||
@@ -2166,6 +2409,9 @@ static int ip6_tnl_fill_info(struct sk_b
|
||||
@@ -2167,6 +2410,9 @@ static int ip6_tnl_fill_info(struct sk_b
|
||||
{
|
||||
struct ip6_tnl *tunnel = netdev_priv(dev);
|
||||
struct __ip6_tnl_parm *parm = &tunnel->parms;
|
||||
@ -472,7 +472,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
|
||||
if (nla_put_u32(skb, IFLA_IPTUN_LINK, parm->link) ||
|
||||
nla_put_in6_addr(skb, IFLA_IPTUN_LOCAL, &parm->laddr) ||
|
||||
@@ -2175,9 +2421,27 @@ static int ip6_tnl_fill_info(struct sk_b
|
||||
@@ -2176,9 +2422,27 @@ static int ip6_tnl_fill_info(struct sk_b
|
||||
nla_put_be32(skb, IFLA_IPTUN_FLOWINFO, parm->flowinfo) ||
|
||||
nla_put_u32(skb, IFLA_IPTUN_FLAGS, parm->flags) ||
|
||||
nla_put_u8(skb, IFLA_IPTUN_PROTO, parm->proto) ||
|
||||
@ -501,7 +501,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
if (nla_put_u16(skb, IFLA_IPTUN_ENCAP_TYPE, tunnel->encap.type) ||
|
||||
nla_put_be16(skb, IFLA_IPTUN_ENCAP_SPORT, tunnel->encap.sport) ||
|
||||
nla_put_be16(skb, IFLA_IPTUN_ENCAP_DPORT, tunnel->encap.dport) ||
|
||||
@@ -2217,6 +2481,7 @@ static const struct nla_policy ip6_tnl_p
|
||||
@@ -2218,6 +2482,7 @@ static const struct nla_policy ip6_tnl_p
|
||||
[IFLA_IPTUN_ENCAP_DPORT] = { .type = NLA_U16 },
|
||||
[IFLA_IPTUN_COLLECT_METADATA] = { .type = NLA_FLAG },
|
||||
[IFLA_IPTUN_FWMARK] = { .type = NLA_U32 },
|
||||
|
||||
@ -338,7 +338,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
if (iptunnel_handle_offloads(skb, SKB_GSO_IPXIP6))
|
||||
return -1;
|
||||
|
||||
@@ -1525,6 +1686,14 @@ ip6_tnl_change(struct ip6_tnl *t, const
|
||||
@@ -1526,6 +1687,14 @@ ip6_tnl_change(struct ip6_tnl *t, const
|
||||
t->parms.link = p->link;
|
||||
t->parms.proto = p->proto;
|
||||
t->parms.fwmark = p->fwmark;
|
||||
@ -353,7 +353,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
dst_cache_reset(&t->dst_cache);
|
||||
ip6_tnl_link_config(t);
|
||||
return 0;
|
||||
@@ -1563,6 +1732,7 @@ ip6_tnl_parm_from_user(struct __ip6_tnl_
|
||||
@@ -1564,6 +1733,7 @@ ip6_tnl_parm_from_user(struct __ip6_tnl_
|
||||
p->flowinfo = u->flowinfo;
|
||||
p->link = u->link;
|
||||
p->proto = u->proto;
|
||||
@ -361,7 +361,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
memcpy(p->name, u->name, sizeof(u->name));
|
||||
}
|
||||
|
||||
@@ -1949,6 +2119,15 @@ static int ip6_tnl_validate(struct nlatt
|
||||
@@ -1950,6 +2120,15 @@ static int ip6_tnl_validate(struct nlatt
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -377,7 +377,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
static void ip6_tnl_netlink_parms(struct nlattr *data[],
|
||||
struct __ip6_tnl_parm *parms)
|
||||
{
|
||||
@@ -1986,6 +2165,46 @@ static void ip6_tnl_netlink_parms(struct
|
||||
@@ -1987,6 +2166,46 @@ static void ip6_tnl_netlink_parms(struct
|
||||
|
||||
if (data[IFLA_IPTUN_FWMARK])
|
||||
parms->fwmark = nla_get_u32(data[IFLA_IPTUN_FWMARK]);
|
||||
@ -424,7 +424,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
}
|
||||
|
||||
static bool ip6_tnl_netlink_encap_parms(struct nlattr *data[],
|
||||
@@ -2101,6 +2320,12 @@ static void ip6_tnl_dellink(struct net_d
|
||||
@@ -2102,6 +2321,12 @@ static void ip6_tnl_dellink(struct net_d
|
||||
|
||||
static size_t ip6_tnl_get_size(const struct net_device *dev)
|
||||
{
|
||||
@ -437,7 +437,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
return
|
||||
/* IFLA_IPTUN_LINK */
|
||||
nla_total_size(4) +
|
||||
@@ -2130,6 +2355,24 @@ static size_t ip6_tnl_get_size(const str
|
||||
@@ -2131,6 +2356,24 @@ static size_t ip6_tnl_get_size(const str
|
||||
nla_total_size(0) +
|
||||
/* IFLA_IPTUN_FWMARK */
|
||||
nla_total_size(4) +
|
||||
@ -462,7 +462,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
0;
|
||||
}
|
||||
|
||||
@@ -2137,6 +2380,9 @@ static int ip6_tnl_fill_info(struct sk_b
|
||||
@@ -2138,6 +2381,9 @@ static int ip6_tnl_fill_info(struct sk_b
|
||||
{
|
||||
struct ip6_tnl *tunnel = netdev_priv(dev);
|
||||
struct __ip6_tnl_parm *parm = &tunnel->parms;
|
||||
@ -472,7 +472,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
|
||||
if (nla_put_u32(skb, IFLA_IPTUN_LINK, parm->link) ||
|
||||
nla_put_in6_addr(skb, IFLA_IPTUN_LOCAL, &parm->laddr) ||
|
||||
@@ -2146,9 +2392,27 @@ static int ip6_tnl_fill_info(struct sk_b
|
||||
@@ -2147,9 +2393,27 @@ static int ip6_tnl_fill_info(struct sk_b
|
||||
nla_put_be32(skb, IFLA_IPTUN_FLOWINFO, parm->flowinfo) ||
|
||||
nla_put_u32(skb, IFLA_IPTUN_FLAGS, parm->flags) ||
|
||||
nla_put_u8(skb, IFLA_IPTUN_PROTO, parm->proto) ||
|
||||
@ -501,7 +501,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
if (nla_put_u16(skb, IFLA_IPTUN_ENCAP_TYPE, tunnel->encap.type) ||
|
||||
nla_put_be16(skb, IFLA_IPTUN_ENCAP_SPORT, tunnel->encap.sport) ||
|
||||
nla_put_be16(skb, IFLA_IPTUN_ENCAP_DPORT, tunnel->encap.dport) ||
|
||||
@@ -2188,6 +2452,7 @@ static const struct nla_policy ip6_tnl_p
|
||||
@@ -2189,6 +2453,7 @@ static const struct nla_policy ip6_tnl_p
|
||||
[IFLA_IPTUN_ENCAP_DPORT] = { .type = NLA_U16 },
|
||||
[IFLA_IPTUN_COLLECT_METADATA] = { .type = NLA_FLAG },
|
||||
[IFLA_IPTUN_FWMARK] = { .type = NLA_U32 },
|
||||
|
||||
@ -625,7 +625,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -457,16 +651,16 @@ ltq_etop_tx(struct sk_buff *skb, struct
|
||||
@@ -457,15 +651,16 @@ ltq_etop_tx(struct sk_buff *skb, struct
|
||||
int queue = skb_get_queue_mapping(skb);
|
||||
struct netdev_queue *txq = netdev_get_tx_queue(dev, queue);
|
||||
struct ltq_etop_priv *priv = netdev_priv(dev);
|
||||
@ -641,13 +641,12 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
len = skb->len < ETH_ZLEN ? ETH_ZLEN : skb->len;
|
||||
|
||||
- if ((desc->ctl & (LTQ_DMA_OWN | LTQ_DMA_C)) || ch->skb[ch->dma.desc]) {
|
||||
- dev_kfree_skb_any(skb);
|
||||
+ if ((desc->ctl & (LTQ_DMA_OWN | LTQ_DMA_C)) ||
|
||||
+ priv->txch.skb[priv->txch.dma.desc]) {
|
||||
netdev_err(dev, "tx ring full\n");
|
||||
netif_tx_stop_queue(txq);
|
||||
return NETDEV_TX_BUSY;
|
||||
@@ -474,7 +668,7 @@ ltq_etop_tx(struct sk_buff *skb, struct
|
||||
@@ -473,7 +668,7 @@ ltq_etop_tx(struct sk_buff *skb, struct
|
||||
|
||||
/* dma needs to start on a 16 byte aligned address */
|
||||
byte_offset = CPHYSADDR(skb->data) % 16;
|
||||
@ -656,7 +655,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
|
||||
netif_trans_update(dev);
|
||||
|
||||
@@ -484,11 +678,11 @@ ltq_etop_tx(struct sk_buff *skb, struct
|
||||
@@ -483,11 +678,11 @@ ltq_etop_tx(struct sk_buff *skb, struct
|
||||
wmb();
|
||||
desc->ctl = LTQ_DMA_OWN | LTQ_DMA_SOP | LTQ_DMA_EOP |
|
||||
LTQ_DMA_TX_OFFSET(byte_offset) | (len & LTQ_DMA_SIZE_MASK);
|
||||
@ -671,7 +670,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
netif_tx_stop_queue(txq);
|
||||
|
||||
return NETDEV_TX_OK;
|
||||
@@ -499,11 +693,14 @@ ltq_etop_change_mtu(struct net_device *d
|
||||
@@ -498,11 +693,14 @@ ltq_etop_change_mtu(struct net_device *d
|
||||
{
|
||||
struct ltq_etop_priv *priv = netdev_priv(dev);
|
||||
unsigned long flags;
|
||||
@ -687,7 +686,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
spin_unlock_irqrestore(&priv->lock, flags);
|
||||
|
||||
return 0;
|
||||
@@ -556,6 +753,9 @@ ltq_etop_init(struct net_device *dev)
|
||||
@@ -555,6 +753,9 @@ ltq_etop_init(struct net_device *dev)
|
||||
if (err)
|
||||
goto err_hw;
|
||||
ltq_etop_change_mtu(dev, 1500);
|
||||
@ -697,7 +696,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
|
||||
memcpy(&mac, &priv->pldata->mac, sizeof(struct sockaddr));
|
||||
if (!is_valid_ether_addr(mac.sa_data)) {
|
||||
@@ -573,9 +773,10 @@ ltq_etop_init(struct net_device *dev)
|
||||
@@ -572,9 +773,10 @@ ltq_etop_init(struct net_device *dev)
|
||||
dev->addr_assign_type = NET_ADDR_RANDOM;
|
||||
|
||||
ltq_etop_set_multicast_list(dev);
|
||||
@ -711,7 +710,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
return 0;
|
||||
|
||||
err_netdev:
|
||||
@@ -595,6 +796,9 @@ ltq_etop_tx_timeout(struct net_device *d
|
||||
@@ -594,6 +796,9 @@ ltq_etop_tx_timeout(struct net_device *d
|
||||
err = ltq_etop_hw_init(dev);
|
||||
if (err)
|
||||
goto err_hw;
|
||||
@ -721,7 +720,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
netif_trans_update(dev);
|
||||
netif_wake_queue(dev);
|
||||
return;
|
||||
@@ -618,14 +822,18 @@ static const struct net_device_ops ltq_e
|
||||
@@ -617,14 +822,18 @@ static const struct net_device_ops ltq_e
|
||||
.ndo_tx_timeout = ltq_etop_tx_timeout,
|
||||
};
|
||||
|
||||
@ -744,7 +743,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
|
||||
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
|
||||
if (!res) {
|
||||
@@ -651,31 +859,62 @@ ltq_etop_probe(struct platform_device *p
|
||||
@@ -650,31 +859,62 @@ ltq_etop_probe(struct platform_device *p
|
||||
goto err_out;
|
||||
}
|
||||
|
||||
@ -822,7 +821,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
|
||||
err = register_netdev(dev);
|
||||
if (err)
|
||||
@@ -704,31 +943,22 @@ ltq_etop_remove(struct platform_device *
|
||||
@@ -703,31 +943,22 @@ ltq_etop_remove(struct platform_device *
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@ -625,7 +625,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -457,16 +651,16 @@ ltq_etop_tx(struct sk_buff *skb, struct
|
||||
@@ -457,15 +651,16 @@ ltq_etop_tx(struct sk_buff *skb, struct
|
||||
int queue = skb_get_queue_mapping(skb);
|
||||
struct netdev_queue *txq = netdev_get_tx_queue(dev, queue);
|
||||
struct ltq_etop_priv *priv = netdev_priv(dev);
|
||||
@ -641,13 +641,12 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
len = skb->len < ETH_ZLEN ? ETH_ZLEN : skb->len;
|
||||
|
||||
- if ((desc->ctl & (LTQ_DMA_OWN | LTQ_DMA_C)) || ch->skb[ch->dma.desc]) {
|
||||
- dev_kfree_skb_any(skb);
|
||||
+ if ((desc->ctl & (LTQ_DMA_OWN | LTQ_DMA_C)) ||
|
||||
+ priv->txch.skb[priv->txch.dma.desc]) {
|
||||
netdev_err(dev, "tx ring full\n");
|
||||
netif_tx_stop_queue(txq);
|
||||
return NETDEV_TX_BUSY;
|
||||
@@ -474,7 +668,7 @@ ltq_etop_tx(struct sk_buff *skb, struct
|
||||
@@ -473,7 +668,7 @@ ltq_etop_tx(struct sk_buff *skb, struct
|
||||
|
||||
/* dma needs to start on a 16 byte aligned address */
|
||||
byte_offset = CPHYSADDR(skb->data) % 16;
|
||||
@ -656,7 +655,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
|
||||
netif_trans_update(dev);
|
||||
|
||||
@@ -484,11 +678,11 @@ ltq_etop_tx(struct sk_buff *skb, struct
|
||||
@@ -483,11 +678,11 @@ ltq_etop_tx(struct sk_buff *skb, struct
|
||||
wmb();
|
||||
desc->ctl = LTQ_DMA_OWN | LTQ_DMA_SOP | LTQ_DMA_EOP |
|
||||
LTQ_DMA_TX_OFFSET(byte_offset) | (len & LTQ_DMA_SIZE_MASK);
|
||||
@ -671,7 +670,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
netif_tx_stop_queue(txq);
|
||||
|
||||
return NETDEV_TX_OK;
|
||||
@@ -499,11 +693,14 @@ ltq_etop_change_mtu(struct net_device *d
|
||||
@@ -498,11 +693,14 @@ ltq_etop_change_mtu(struct net_device *d
|
||||
{
|
||||
struct ltq_etop_priv *priv = netdev_priv(dev);
|
||||
unsigned long flags;
|
||||
@ -687,7 +686,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
spin_unlock_irqrestore(&priv->lock, flags);
|
||||
|
||||
return 0;
|
||||
@@ -556,6 +753,9 @@ ltq_etop_init(struct net_device *dev)
|
||||
@@ -555,6 +753,9 @@ ltq_etop_init(struct net_device *dev)
|
||||
if (err)
|
||||
goto err_hw;
|
||||
ltq_etop_change_mtu(dev, 1500);
|
||||
@ -697,7 +696,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
|
||||
memcpy(&mac, &priv->pldata->mac, sizeof(struct sockaddr));
|
||||
if (!is_valid_ether_addr(mac.sa_data)) {
|
||||
@@ -573,9 +773,10 @@ ltq_etop_init(struct net_device *dev)
|
||||
@@ -572,9 +773,10 @@ ltq_etop_init(struct net_device *dev)
|
||||
dev->addr_assign_type = NET_ADDR_RANDOM;
|
||||
|
||||
ltq_etop_set_multicast_list(dev);
|
||||
@ -711,7 +710,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
return 0;
|
||||
|
||||
err_netdev:
|
||||
@@ -595,6 +796,9 @@ ltq_etop_tx_timeout(struct net_device *d
|
||||
@@ -594,6 +796,9 @@ ltq_etop_tx_timeout(struct net_device *d
|
||||
err = ltq_etop_hw_init(dev);
|
||||
if (err)
|
||||
goto err_hw;
|
||||
@ -721,7 +720,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
netif_trans_update(dev);
|
||||
netif_wake_queue(dev);
|
||||
return;
|
||||
@@ -618,14 +822,18 @@ static const struct net_device_ops ltq_e
|
||||
@@ -617,14 +822,18 @@ static const struct net_device_ops ltq_e
|
||||
.ndo_tx_timeout = ltq_etop_tx_timeout,
|
||||
};
|
||||
|
||||
@ -744,7 +743,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
|
||||
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
|
||||
if (!res) {
|
||||
@@ -651,31 +859,62 @@ ltq_etop_probe(struct platform_device *p
|
||||
@@ -650,31 +859,62 @@ ltq_etop_probe(struct platform_device *p
|
||||
goto err_out;
|
||||
}
|
||||
|
||||
@ -822,7 +821,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
|
||||
err = register_netdev(dev);
|
||||
if (err)
|
||||
@@ -704,31 +943,22 @@ ltq_etop_remove(struct platform_device *
|
||||
@@ -703,31 +943,22 @@ ltq_etop_remove(struct platform_device *
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@ -50,7 +50,6 @@ CONFIG_BSD_PROCESS_ACCT_V3=y
|
||||
CONFIG_CC_HAVE_STACKPROTECTOR_SYSREG=y
|
||||
CONFIG_CLKSRC_MMIO=y
|
||||
CONFIG_CLONE_BACKWARDS=y
|
||||
# CONFIG_CMDLINE_OVERRIDE is not set
|
||||
CONFIG_COMMON_CLK=y
|
||||
CONFIG_COMMON_CLK_MEDIATEK=y
|
||||
# CONFIG_COMMON_CLK_MT2712 is not set
|
||||
@ -86,7 +85,6 @@ CONFIG_CRYPTO_AES_ARM64=y
|
||||
CONFIG_CRYPTO_AES_ARM64_CE=y
|
||||
CONFIG_CRYPTO_AES_ARM64_CE_BLK=y
|
||||
CONFIG_CRYPTO_AES_ARM64_CE_CCM=y
|
||||
CONFIG_CRYPTO_BLAKE2S=y
|
||||
CONFIG_CRYPTO_CMAC=y
|
||||
CONFIG_CRYPTO_CRC32=y
|
||||
CONFIG_CRYPTO_CRC32C=y
|
||||
@ -169,7 +167,6 @@ CONFIG_GENERIC_STRNCPY_FROM_USER=y
|
||||
CONFIG_GENERIC_STRNLEN_USER=y
|
||||
CONFIG_GENERIC_TIME_VSYSCALL=y
|
||||
CONFIG_GLOB=y
|
||||
CONFIG_GPIOLIB=y
|
||||
CONFIG_GPIO_CDEV=y
|
||||
CONFIG_GRO_CELLS=y
|
||||
CONFIG_HANDLE_DOMAIN_IRQ=y
|
||||
@ -231,8 +228,8 @@ CONFIG_MTD_SPLIT_FIRMWARE=y
|
||||
CONFIG_MTD_SPLIT_FIT_FW=y
|
||||
CONFIG_MTD_UBI=y
|
||||
CONFIG_MTD_UBI_BEB_LIMIT=20
|
||||
CONFIG_MTD_UBI_FASTMAP=y
|
||||
CONFIG_MTD_UBI_BLOCK=y
|
||||
CONFIG_MTD_UBI_FASTMAP=y
|
||||
CONFIG_MTD_UBI_WL_THRESHOLD=4096
|
||||
# CONFIG_MTK_CMDQ is not set
|
||||
# CONFIG_MTK_CQDMA is not set
|
||||
@ -276,6 +273,8 @@ CONFIG_OF_MDIO=y
|
||||
CONFIG_OF_OVERLAY=y
|
||||
CONFIG_OF_RESOLVE=y
|
||||
CONFIG_PADATA=y
|
||||
CONFIG_PAGE_POOL=y
|
||||
CONFIG_PAGE_POOL_STATS=y
|
||||
CONFIG_PARTITION_PERCPU=y
|
||||
CONFIG_PCI=y
|
||||
CONFIG_PCIEAER=y
|
||||
@ -387,7 +386,6 @@ CONFIG_SPI_MT65XX=y
|
||||
CONFIG_SPI_MTK_NOR=y
|
||||
CONFIG_SPI_MTK_SNFI=y
|
||||
CONFIG_SRCU=y
|
||||
CONFIG_SWCONFIG=y
|
||||
CONFIG_SWIOTLB=y
|
||||
CONFIG_SWPHY=y
|
||||
CONFIG_SYSCTL_EXCEPTION_TRACE=y
|
||||
@ -405,6 +403,7 @@ CONFIG_THREAD_INFO_IN_TASK=y
|
||||
CONFIG_TICK_CPU_ACCOUNTING=y
|
||||
CONFIG_TIMER_OF=y
|
||||
CONFIG_TIMER_PROBE=y
|
||||
CONFIG_TRACE_IRQFLAGS_NMI_SUPPORT=y
|
||||
CONFIG_TREE_RCU=y
|
||||
CONFIG_TREE_SRCU=y
|
||||
CONFIG_UBIFS_FS=y
|
||||
|
||||
@ -19,7 +19,7 @@
|
||||
},
|
||||
[PORT_NPCM] = {
|
||||
.name = "Nuvoton 16550",
|
||||
@@ -2748,6 +2748,11 @@ serial8250_do_set_termios(struct uart_po
|
||||
@@ -2753,6 +2753,11 @@ serial8250_do_set_termios(struct uart_po
|
||||
unsigned long flags;
|
||||
unsigned int baud, quot, frac = 0;
|
||||
|
||||
|
||||
@ -0,0 +1,50 @@
|
||||
From 59b0f51335644ee603260faaa4298c0115fb7187 Mon Sep 17 00:00:00 2001
|
||||
From: Fengquan Chen <Fengquan.Chen@mediatek.com>
|
||||
Date: Tue, 14 Sep 2021 20:34:54 +0800
|
||||
Subject: [PATCH] watchdog: mtk: add disable_wdt_extrst support
|
||||
|
||||
In some cases, we may need watchdog just to trigger an
|
||||
internal soc reset without sending any output signal.
|
||||
|
||||
Provide a disable_wdt_extrst parameter for configuration.
|
||||
We can disable or enable it just by configuring dts.
|
||||
|
||||
Signed-off-by: Fengquan Chen <fengquan.chen@mediatek.com>
|
||||
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
|
||||
Link: https://lore.kernel.org/r/20210914123454.32603-3-Fengquan.Chen@mediatek.com
|
||||
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
|
||||
Signed-off-by: Wim Van Sebroeck <wim@linux-watchdog.org>
|
||||
---
|
||||
drivers/watchdog/mtk_wdt.c | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
--- a/drivers/watchdog/mtk_wdt.c
|
||||
+++ b/drivers/watchdog/mtk_wdt.c
|
||||
@@ -65,6 +65,7 @@ struct mtk_wdt_dev {
|
||||
void __iomem *wdt_base;
|
||||
spinlock_t lock; /* protects WDT_SWSYSRST reg */
|
||||
struct reset_controller_dev rcdev;
|
||||
+ bool disable_wdt_extrst;
|
||||
};
|
||||
|
||||
struct mtk_wdt_data {
|
||||
@@ -256,6 +257,8 @@ static int mtk_wdt_start(struct watchdog
|
||||
reg |= (WDT_MODE_IRQ_EN | WDT_MODE_DUAL_EN);
|
||||
else
|
||||
reg &= ~(WDT_MODE_IRQ_EN | WDT_MODE_DUAL_EN);
|
||||
+ if (mtk_wdt->disable_wdt_extrst)
|
||||
+ reg &= ~WDT_MODE_EXRST_EN;
|
||||
reg |= (WDT_MODE_EN | WDT_MODE_KEY);
|
||||
iowrite32(reg, wdt_base + WDT_MODE);
|
||||
|
||||
@@ -381,6 +384,10 @@ static int mtk_wdt_probe(struct platform
|
||||
if (err)
|
||||
return err;
|
||||
}
|
||||
+
|
||||
+ mtk_wdt->disable_wdt_extrst =
|
||||
+ of_property_read_bool(dev->of_node, "mediatek,disable-extrst");
|
||||
+
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -1,57 +0,0 @@
|
||||
--- a/drivers/watchdog/mtk_wdt.c
|
||||
+++ b/drivers/watchdog/mtk_wdt.c
|
||||
@@ -9,6 +9,7 @@
|
||||
* Based on sunxi_wdt.c
|
||||
*/
|
||||
|
||||
+#include <dt-bindings/reset/mt7986-resets.h>
|
||||
#include <dt-bindings/reset-controller/mt2712-resets.h>
|
||||
#include <dt-bindings/reset-controller/mt8183-resets.h>
|
||||
#include <dt-bindings/reset-controller/mt8192-resets.h>
|
||||
@@ -65,6 +66,7 @@ struct mtk_wdt_dev {
|
||||
void __iomem *wdt_base;
|
||||
spinlock_t lock; /* protects WDT_SWSYSRST reg */
|
||||
struct reset_controller_dev rcdev;
|
||||
+ bool disable_wdt_extrst;
|
||||
};
|
||||
|
||||
struct mtk_wdt_data {
|
||||
@@ -87,6 +89,10 @@ static const struct mtk_wdt_data mt8195_
|
||||
.toprgu_sw_rst_num = MT8195_TOPRGU_SW_RST_NUM,
|
||||
};
|
||||
|
||||
+static const struct mtk_wdt_data mt7986_data = {
|
||||
+ .toprgu_sw_rst_num = MT7986_TOPRGU_SW_RST_NUM,
|
||||
+};
|
||||
+
|
||||
static int toprgu_reset_update(struct reset_controller_dev *rcdev,
|
||||
unsigned long id, bool assert)
|
||||
{
|
||||
@@ -256,6 +262,8 @@ static int mtk_wdt_start(struct watchdog
|
||||
reg |= (WDT_MODE_IRQ_EN | WDT_MODE_DUAL_EN);
|
||||
else
|
||||
reg &= ~(WDT_MODE_IRQ_EN | WDT_MODE_DUAL_EN);
|
||||
+ if (mtk_wdt->disable_wdt_extrst)
|
||||
+ reg &= ~WDT_MODE_EXRST_EN;
|
||||
reg |= (WDT_MODE_EN | WDT_MODE_KEY);
|
||||
iowrite32(reg, wdt_base + WDT_MODE);
|
||||
|
||||
@@ -381,6 +389,10 @@ static int mtk_wdt_probe(struct platform
|
||||
if (err)
|
||||
return err;
|
||||
}
|
||||
+
|
||||
+ mtk_wdt->disable_wdt_extrst =
|
||||
+ of_property_read_bool(dev->of_node, "mediatek,disable-extrst");
|
||||
+
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -414,6 +426,7 @@ static const struct of_device_id mtk_wdt
|
||||
{ .compatible = "mediatek,mt8183-wdt", .data = &mt8183_data },
|
||||
{ .compatible = "mediatek,mt8192-wdt", .data = &mt8192_data },
|
||||
{ .compatible = "mediatek,mt8195-wdt", .data = &mt8195_data },
|
||||
+ { .compatible = "mediatek,mt7986-wdt", .data = &mt7986_data },
|
||||
{ /* sentinel */ }
|
||||
};
|
||||
MODULE_DEVICE_TABLE(of, mtk_wdt_dt_ids);
|
||||
@ -0,0 +1,49 @@
|
||||
From 711a5b25bac95dcd1111521ed71693330e74a926 Mon Sep 17 00:00:00 2001
|
||||
From: Sam Shih <sam.shih@mediatek.com>
|
||||
Date: Wed, 5 Jan 2022 18:04:56 +0800
|
||||
Subject: [PATCH] watchdog: mtk_wdt: mt7986: Add toprgu reset controller
|
||||
support
|
||||
|
||||
Besides watchdog, the mt7986 toprgu module also provides software reset
|
||||
functionality for various peripheral subsystems
|
||||
(eg, ethernet, pcie, and connectivity)
|
||||
|
||||
Signed-off-by: Sam Shih <sam.shih@mediatek.com>
|
||||
Reviewed-by: Matthias Brugger <matthias.bgg@gmail.com>
|
||||
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
|
||||
Link: https://lore.kernel.org/r/20220105100456.7126-3-sam.shih@mediatek.com
|
||||
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
|
||||
Signed-off-by: Wim Van Sebroeck <wim@linux-watchdog.org>
|
||||
---
|
||||
drivers/watchdog/mtk_wdt.c | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
--- a/drivers/watchdog/mtk_wdt.c
|
||||
+++ b/drivers/watchdog/mtk_wdt.c
|
||||
@@ -10,6 +10,7 @@
|
||||
*/
|
||||
|
||||
#include <dt-bindings/reset-controller/mt2712-resets.h>
|
||||
+#include <dt-bindings/reset/mt7986-resets.h>
|
||||
#include <dt-bindings/reset-controller/mt8183-resets.h>
|
||||
#include <dt-bindings/reset-controller/mt8192-resets.h>
|
||||
#include <dt-bindings/reset/mt8195-resets.h>
|
||||
@@ -76,6 +77,10 @@ static const struct mtk_wdt_data mt2712_
|
||||
.toprgu_sw_rst_num = MT2712_TOPRGU_SW_RST_NUM,
|
||||
};
|
||||
|
||||
+static const struct mtk_wdt_data mt7986_data = {
|
||||
+ .toprgu_sw_rst_num = MT7986_TOPRGU_SW_RST_NUM,
|
||||
+};
|
||||
+
|
||||
static const struct mtk_wdt_data mt8183_data = {
|
||||
.toprgu_sw_rst_num = MT8183_TOPRGU_SW_RST_NUM,
|
||||
};
|
||||
@@ -418,6 +423,7 @@ static int mtk_wdt_resume(struct device
|
||||
static const struct of_device_id mtk_wdt_dt_ids[] = {
|
||||
{ .compatible = "mediatek,mt2712-wdt", .data = &mt2712_data },
|
||||
{ .compatible = "mediatek,mt6589-wdt" },
|
||||
+ { .compatible = "mediatek,mt7986-wdt", .data = &mt7986_data },
|
||||
{ .compatible = "mediatek,mt8183-wdt", .data = &mt8183_data },
|
||||
{ .compatible = "mediatek,mt8192-wdt", .data = &mt8192_data },
|
||||
{ .compatible = "mediatek,mt8195-wdt", .data = &mt8195_data },
|
||||
38
target/linux/ramips/dts/mt7620a_youku_x2.dts
Normal file
38
target/linux/ramips/dts/mt7620a_youku_x2.dts
Normal file
@ -0,0 +1,38 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
|
||||
#include "mt7620a_youku_yk-l1.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "youku,x2", "ralink,mt7620a-soc";
|
||||
model = "Youku X2";
|
||||
};
|
||||
|
||||
ðernet {
|
||||
mediatek,portmap = "wllll";
|
||||
};
|
||||
|
||||
&firmware {
|
||||
reg = <0x50000 0xfb0000>;
|
||||
};
|
||||
|
||||
&led_wlan {
|
||||
linux,default-trigger = "phy1tpt";
|
||||
};
|
||||
|
||||
&pcie {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pcie0 {
|
||||
wifi@0,0 {
|
||||
compatible = "mediatek,mt76";
|
||||
reg = <0x0000 0 0 0 0>;
|
||||
mediatek,mtd-eeprom = <&factory 0x8000>;
|
||||
ieee80211-freq-limit = <5000000 6000000>;
|
||||
|
||||
led {
|
||||
led-sources = <2>;
|
||||
led-active-low;
|
||||
};
|
||||
};
|
||||
};
|
||||
@ -15,7 +15,7 @@
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
wlan {
|
||||
led_wlan: wlan {
|
||||
label = "blue:wlan";
|
||||
gpios = <&gpio3 0 GPIO_ACTIVE_LOW>;
|
||||
linux,default-trigger = "phy0tpt";
|
||||
@ -86,8 +86,9 @@
|
||||
};
|
||||
|
||||
firmware: partition@50000 {
|
||||
compatible = "denx,uimage";
|
||||
compatible = "openwrt,uimage", "denx,uimage";
|
||||
label = "firmware";
|
||||
openwrt,ih-magic = <0x12291000>;
|
||||
/* reg property is set based on flash size in DTS files */
|
||||
};
|
||||
};
|
||||
|
||||
186
target/linux/ramips/dts/mt7621_haier-sim_wr1800k.dtsi
Normal file
186
target/linux/ramips/dts/mt7621_haier-sim_wr1800k.dtsi
Normal file
@ -0,0 +1,186 @@
|
||||
// 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 {
|
||||
label-mac-device = &gmac1;
|
||||
led-boot = &led_status_red;
|
||||
led-failsafe = &led_status_blue;
|
||||
led-running = &led_status_green;
|
||||
led-upgrade = &led_status_blue;
|
||||
};
|
||||
|
||||
chosen {
|
||||
bootargs-override = "console=ttyS0,115200";
|
||||
};
|
||||
|
||||
keys {
|
||||
compatible = "gpio-keys";
|
||||
|
||||
reset {
|
||||
label = "reset";
|
||||
gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_RESTART>;
|
||||
};
|
||||
|
||||
wps {
|
||||
label = "wps";
|
||||
gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_WPS_BUTTON>;
|
||||
};
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
led_status_blue: led-0 {
|
||||
label = "blue:status";
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
function = LED_FUNCTION_STATUS;
|
||||
gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led_status_green: led-1 {
|
||||
label = "green:status";
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
function = LED_FUNCTION_STATUS;
|
||||
gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led_status_red: led-2 {
|
||||
label = "red:status";
|
||||
color = <LED_COLOR_ID_RED>;
|
||||
function = LED_FUNCTION_STATUS;
|
||||
gpios = <&gpio 7 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&gmac0 {
|
||||
nvmem-cells = <&macaddr_factory_8004>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
&gmac1 {
|
||||
status = "okay";
|
||||
label = "wan";
|
||||
phy-handle = <ðphy4>;
|
||||
|
||||
nvmem-cells = <&macaddr_factory_8004>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
mac-address-increment = <(-3)>;
|
||||
};
|
||||
|
||||
&mdio {
|
||||
ethphy4: ethernet-phy@4 {
|
||||
reg = <4>;
|
||||
};
|
||||
};
|
||||
|
||||
&nand {
|
||||
status = "okay";
|
||||
|
||||
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>;
|
||||
};
|
||||
|
||||
factory: partition@100000 {
|
||||
label = "factory";
|
||||
reg = <0x0100000 0x0080000>;
|
||||
read-only;
|
||||
|
||||
compatible = "nvmem-cells";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
macaddr_factory_8004: macaddr@8004 {
|
||||
reg = <0x8004 0x6>;
|
||||
};
|
||||
};
|
||||
|
||||
partition@180000 {
|
||||
label = "firmware";
|
||||
reg = <0x0180000 0x7a80000>;
|
||||
|
||||
compatible = "fixed-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
partition@0 {
|
||||
label = "kernel";
|
||||
reg = <0x0000000 0x0400000>;
|
||||
};
|
||||
|
||||
partition@400000 {
|
||||
label = "ubi";
|
||||
reg = <0x0400000 0x7680000>;
|
||||
};
|
||||
};
|
||||
|
||||
/* last 128KiB *32 is reserved for bad blocks management */
|
||||
};
|
||||
};
|
||||
|
||||
&pcie {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pcie1 {
|
||||
wifi@0,0 {
|
||||
compatible = "mediatek,mt76";
|
||||
reg = <0x0000 0 0 0 0>;
|
||||
mediatek,mtd-eeprom = <&factory 0x0>;
|
||||
mediatek,disable-radar-background;
|
||||
};
|
||||
};
|
||||
|
||||
&pcie2 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&state_default {
|
||||
gpio {
|
||||
groups = "i2c", "uart3", "wdt";
|
||||
function = "gpio";
|
||||
};
|
||||
};
|
||||
|
||||
&switch0 {
|
||||
ports {
|
||||
port@1 {
|
||||
status = "okay";
|
||||
label = "lan3";
|
||||
};
|
||||
|
||||
port@2 {
|
||||
status = "okay";
|
||||
label = "lan2";
|
||||
};
|
||||
|
||||
port@3 {
|
||||
status = "okay";
|
||||
label = "lan1";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&xhci {
|
||||
status = "disabled";
|
||||
};
|
||||
8
target/linux/ramips/dts/mt7621_haier_har-20s2u1.dts
Normal file
8
target/linux/ramips/dts/mt7621_haier_har-20s2u1.dts
Normal file
@ -0,0 +1,8 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
|
||||
#include "mt7621_haier-sim_wr1800k.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "haier,har-20s2u1", "mediatek,mt7621-soc";
|
||||
model = "Haier HAR-20S2U1";
|
||||
};
|
||||
8
target/linux/ramips/dts/mt7621_sim_simax1800t.dts
Normal file
8
target/linux/ramips/dts/mt7621_sim_simax1800t.dts
Normal file
@ -0,0 +1,8 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
|
||||
#include "mt7621_haier-sim_wr1800k.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "sim,simax1800t", "mediatek,mt7621-soc";
|
||||
model = "SIM SIMAX1800T";
|
||||
};
|
||||
207
target/linux/ramips/dts/mt7621_tplink_mr600-v2-eu.dts
Normal file
207
target/linux/ramips/dts/mt7621_tplink_mr600-v2-eu.dts
Normal file
@ -0,0 +1,207 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include "mt7621.dtsi"
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include <dt-bindings/leds/common.h>
|
||||
|
||||
/ {
|
||||
compatible = "tplink,mr600-v2-eu", "mediatek,mt7621-soc";
|
||||
model = "TP-Link MR600 v2 (EU)";
|
||||
|
||||
aliases {
|
||||
led-boot = &led_power;
|
||||
led-failsafe = &led_power;
|
||||
led-running = &led_power;
|
||||
led-upgrade = &led_power;
|
||||
label-mac-device = &gmac0;
|
||||
};
|
||||
|
||||
chosen {
|
||||
bootargs = "console=ttyS0,115200";
|
||||
};
|
||||
|
||||
keys {
|
||||
compatible = "gpio-keys";
|
||||
|
||||
wlan {
|
||||
label = "wlan";
|
||||
gpios = <&gpio 3 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_WLAN>;
|
||||
};
|
||||
|
||||
reset {
|
||||
label = "reset";
|
||||
gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_RESTART>;
|
||||
};
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
led_power: power {
|
||||
label = "white:power";
|
||||
gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
wlan {
|
||||
label = "white:wlan";
|
||||
gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
|
||||
linux,default-trigger = "phy1tpt";
|
||||
};
|
||||
wan {
|
||||
label = "white:wan";
|
||||
gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
signal1 {
|
||||
label = "white:signal1";
|
||||
gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
signal2 {
|
||||
label = "white:signal2";
|
||||
gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
signal3 {
|
||||
label = "white:signal3";
|
||||
gpios = <&gpio 10 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
4g {
|
||||
label = "white:4g";
|
||||
gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
lan {
|
||||
label = "white:lan";
|
||||
gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
status = "okay";
|
||||
|
||||
flash@0 {
|
||||
compatible = "jedec,spi-nor";
|
||||
reg = <0>;
|
||||
spi-max-frequency = <80000000>;
|
||||
|
||||
partitions {
|
||||
compatible = "fixed-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
partition@0 {
|
||||
label = "uboot";
|
||||
reg = <0x00000 0x20000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@20000 {
|
||||
compatible = "openwrt,uimage";
|
||||
openwrt,offset = <512>; /* account for the 512-byte long header */
|
||||
label = "firmware";
|
||||
reg = <0x20000 0xfa0000>;
|
||||
};
|
||||
|
||||
romfile: partition@fc0000 {
|
||||
label = "romfile";
|
||||
reg = <0xfc0000 0x10000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@fd0000 {
|
||||
label = "config";
|
||||
reg = <0xfd0000 0x10000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
radio: partition@fe0000 {
|
||||
label = "radio";
|
||||
reg = <0xfe0000 0x10000>;
|
||||
read-only;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pcie {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
||||
&pcie0 {
|
||||
mt76@0,0 {
|
||||
compatible = "mediatek,mt76";
|
||||
reg = <0x0000 0 0 0 0>;
|
||||
nvmem-cells = <&macaddr_romfile_f100>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
mediatek,mtd-eeprom = <&radio 0x0>;
|
||||
mtd-mac-address = <&romfile 0xf100>;
|
||||
ieee80211-freq-limit = <2400000 2500000>;
|
||||
};
|
||||
};
|
||||
|
||||
&pcie1 {
|
||||
mt76@0,0 {
|
||||
compatible = "mediatek,mt76";
|
||||
reg = <0x0000 0 0 0 0>;
|
||||
mediatek,mtd-eeprom = <&radio 0x8000>;
|
||||
ieee80211-freq-limit = <5000000 6000000>;
|
||||
nvmem-cells = <&macaddr_romfile_f100>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
mac-address-increment = <(-1)>;
|
||||
};
|
||||
};
|
||||
|
||||
&gmac0 {
|
||||
nvmem-cells = <&macaddr_romfile_f100>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
&gmac1 {
|
||||
status = "okay";
|
||||
label = "wan";
|
||||
phy-handle = <ðphy4>;
|
||||
|
||||
nvmem-cells = <&macaddr_romfile_f100>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
&mdio {
|
||||
ethphy4: ethernet-phy@4 {
|
||||
reg = <4>;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
&switch0 {
|
||||
ports {
|
||||
port@1 {
|
||||
status = "okay";
|
||||
label = "lan1";
|
||||
};
|
||||
port@2 {
|
||||
status = "okay";
|
||||
label = "lan2";
|
||||
};
|
||||
port@3 {
|
||||
status = "okay";
|
||||
label = "lan3";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&romfile {
|
||||
compatible = "nvmem-cells";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
macaddr_romfile_f100: romfile@f100 {
|
||||
reg = <0xf100 0x6>;
|
||||
};
|
||||
};
|
||||
@ -95,8 +95,9 @@
|
||||
};
|
||||
|
||||
partition@50000 {
|
||||
compatible = "denx,uimage";
|
||||
compatible = "openwrt,uimage", "denx,uimage";
|
||||
label = "firmware";
|
||||
openwrt,ih-magic = <0x12291000>;
|
||||
reg = <0x50000 0xfb0000>;
|
||||
};
|
||||
};
|
||||
|
||||
@ -0,0 +1,10 @@
|
||||
#include "mt7621_zbtlink_zbt-wg1602-v04.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "zbtlink,zbt-wg1602-v04-16m", "zbtlink,zbt-wg1602-v04", "mediatek,mt7621-soc";
|
||||
model = "Zbtlink ZBT-WG1602-V04 (16M)";
|
||||
};
|
||||
|
||||
&firmware {
|
||||
reg = <0x50000 0xfb0000>;
|
||||
};
|
||||
@ -0,0 +1,10 @@
|
||||
#include "mt7621_zbtlink_zbt-wg1602-v04.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "zbtlink,zbt-wg1602-v04-32m", "zbtlink,zbt-wg1602-v04", "mediatek,mt7621-soc";
|
||||
model = "Zbtlink ZBT-WG1602-V04 (32M)";
|
||||
};
|
||||
|
||||
&firmware {
|
||||
reg = <0x50000 0x1fb0000>;
|
||||
};
|
||||
215
target/linux/ramips/dts/mt7621_zbtlink_zbt-wg1602-v04.dtsi
Normal file
215
target/linux/ramips/dts/mt7621_zbtlink_zbt-wg1602-v04.dtsi
Normal file
@ -0,0 +1,215 @@
|
||||
#include "mt7621.dtsi"
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include <dt-bindings/leds/common.h>
|
||||
|
||||
/ {
|
||||
compatible = "zbtlink,zbt-wg1602", "mediatek,mt7621-soc";
|
||||
|
||||
aliases {
|
||||
led-boot = &led_sm;
|
||||
led-failsafe = &led_sm;
|
||||
led-running = &led_sm;
|
||||
led-upgrade = &led_sm;
|
||||
label-mac-device = &gmac0;
|
||||
};
|
||||
|
||||
chosen {
|
||||
bootargs = "console=ttyS0,115200";
|
||||
};
|
||||
|
||||
keys {
|
||||
compatible = "gpio-keys";
|
||||
|
||||
reset {
|
||||
label = "reset";
|
||||
gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_RESTART>;
|
||||
};
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
led_sm: sm {
|
||||
label = "green:sm";
|
||||
gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
4g1 {
|
||||
label = "green:4g1";
|
||||
gpios = <&gpio 10 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
4g2 {
|
||||
label = "green:4g2";
|
||||
gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
watchdog {
|
||||
compatible = "linux,wdt-gpio";
|
||||
gpios = <&gpio 3 GPIO_ACTIVE_HIGH>;
|
||||
hw_algo = "toggle";
|
||||
/* hw_margin_ms is actually ~120s but driver limits it to 60s */
|
||||
hw_margin_ms = <60000>;
|
||||
always-running;
|
||||
};
|
||||
|
||||
gpio-export {
|
||||
compatible = "gpio-export";
|
||||
#size-cells = <0>;
|
||||
|
||||
4g1-pwr {
|
||||
gpio-export,name = "4g1-pwr";
|
||||
gpio-export,output = <1>;
|
||||
gpios = <&gpio 8 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
4g2-pwr {
|
||||
gpio-export,name = "4g2-pwr";
|
||||
gpio-export,output = <1>;
|
||||
gpios = <&gpio 7 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
ext-usb {
|
||||
gpio-export,name = "ext-usb";
|
||||
gpio-export,output = <1>;
|
||||
gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&sdhci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
status = "okay";
|
||||
|
||||
flash@0 {
|
||||
compatible = "jedec,spi-nor";
|
||||
reg = <0>;
|
||||
spi-max-frequency = <10000000>;
|
||||
|
||||
partitions {
|
||||
compatible = "fixed-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
partition@0 {
|
||||
label = "u-boot";
|
||||
reg = <0x0 0x30000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@30000 {
|
||||
label = "u-boot-env";
|
||||
reg = <0x30000 0x10000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
factory: partition@40000 {
|
||||
label = "factory";
|
||||
reg = <0x40000 0x10000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
firmware: partition@50000 {
|
||||
compatible = "denx,uimage";
|
||||
label = "firmware";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pcie {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pcie0 {
|
||||
wifi0: wifi@0,0 {
|
||||
compatible = "pci14c3,7603";
|
||||
reg = <0x0000 0 0 0 0>;
|
||||
mediatek,mtd-eeprom = <&factory 0x0000>;
|
||||
};
|
||||
};
|
||||
|
||||
&pcie1 {
|
||||
wifi1: wifi@0,0 {
|
||||
compatible = "pci14c3,7662";
|
||||
reg = <0x0000 0 0 0 0>;
|
||||
mediatek,mtd-eeprom = <&factory 0x8000>;
|
||||
ieee80211-freq-limit = <5000000 6000000>;
|
||||
|
||||
led {
|
||||
led-sources = <2>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&gmac0 {
|
||||
nvmem-cells = <&macaddr_factory_e000>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
&gmac1 {
|
||||
status = "okay";
|
||||
label = "wan";
|
||||
phy-handle = <ðphy4>;
|
||||
|
||||
nvmem-cells = <&macaddr_factory_e006>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
&mdio {
|
||||
ethphy4: ethernet-phy@4 {
|
||||
reg = <4>;
|
||||
};
|
||||
};
|
||||
|
||||
&switch0 {
|
||||
ports {
|
||||
port@0 {
|
||||
status = "okay";
|
||||
label = "lan1";
|
||||
};
|
||||
|
||||
port@1 {
|
||||
status = "okay";
|
||||
label = "lan2";
|
||||
};
|
||||
|
||||
port@2 {
|
||||
status = "okay";
|
||||
label = "lan3";
|
||||
};
|
||||
|
||||
port@3 {
|
||||
status = "okay";
|
||||
label = "lan4";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&state_default {
|
||||
gpio {
|
||||
groups = "i2c", "uart2", "wdt";
|
||||
function = "gpio";
|
||||
};
|
||||
};
|
||||
|
||||
&factory {
|
||||
compatible = "nvmem-cells";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
macaddr_factory_e000: macaddr@e000 {
|
||||
reg = <0xe000 0x6>;
|
||||
};
|
||||
|
||||
macaddr_factory_e006: macaddr@e006 {
|
||||
reg = <0xe006 0x6>;
|
||||
};
|
||||
};
|
||||
@ -1275,6 +1275,18 @@ define Device/xiaomi_miwifi-mini
|
||||
endef
|
||||
TARGET_DEVICES += xiaomi_miwifi-mini
|
||||
|
||||
define Device/youku_x2
|
||||
SOC := mt7620a
|
||||
IMAGE_SIZE := 16064k
|
||||
DEVICE_VENDOR := Youku
|
||||
DEVICE_MODEL := X2
|
||||
DEVICE_PACKAGES := kmod-mt76x2 kmod-usb2 kmod-usb-ohci \
|
||||
kmod-sdhci-mt7620 kmod-usb-ledtrig-usbport
|
||||
UIMAGE_MAGIC := 0x12291000
|
||||
UIMAGE_NAME := 400000000000000000001000
|
||||
endef
|
||||
TARGET_DEVICES += youku_x2
|
||||
|
||||
define Device/youku_yk-l1
|
||||
SOC := mt7620a
|
||||
IMAGE_SIZE := 32448k
|
||||
@ -1283,6 +1295,8 @@ define Device/youku_yk-l1
|
||||
DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-sdhci-mt7620 \
|
||||
kmod-usb-ledtrig-usbport
|
||||
SUPPORTED_DEVICES += youku-yk1 youku,yk1
|
||||
UIMAGE_MAGIC := 0x12291000
|
||||
UIMAGE_NAME := 400000000000000000000000
|
||||
endef
|
||||
TARGET_DEVICES += youku_yk-l1
|
||||
|
||||
@ -1293,6 +1307,8 @@ define Device/youku_yk-l1c
|
||||
DEVICE_MODEL := YK-L1c
|
||||
DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-sdhci-mt7620 \
|
||||
kmod-usb-ledtrig-usbport
|
||||
UIMAGE_MAGIC := 0x12291000
|
||||
UIMAGE_NAME := 400000000000000000000000
|
||||
endef
|
||||
TARGET_DEVICES += youku_yk-l1c
|
||||
|
||||
|
||||
@ -37,6 +37,18 @@ define Build/h3c-blank-header
|
||||
mv $@.blank $@
|
||||
endef
|
||||
|
||||
define Build/haier-sim_wr1800k-factory
|
||||
-[ -e $(KDIR)/tmp/$(KERNEL_INITRAMFS_IMAGE) ] && \
|
||||
mkdir -p "$(1).tmp" && \
|
||||
$(CP) $(KDIR)/tmp/$(KERNEL_INITRAMFS_IMAGE) "$(1).tmp/UploadBrush-bin.img" && \
|
||||
$(MKHASH) md5 "$(1).tmp/UploadBrush-bin.img" | head -c32 > "$(1).tmp/check_MD5.txt" && \
|
||||
$(TAR) -czf $(1).tmp.tgz -C "$(1).tmp" UploadBrush-bin.img check_MD5.txt && \
|
||||
$(STAGING_DIR_HOST)/bin/openssl aes-256-cbc -e -salt -in $(1).tmp.tgz -out "$(1)" -k QiLunSmartWL && \
|
||||
printf %32s "$(DEVICE_MODEL)" >> "$(1)" && \
|
||||
rm -rf "$(1).tmp" $(1).tmp.tgz && \
|
||||
$(CP) $(1) $(BIN_DIR)/
|
||||
endef
|
||||
|
||||
define Build/iodata-factory
|
||||
$(eval fw_size=$(word 1,$(1)))
|
||||
$(eval fw_type=$(word 2,$(1)))
|
||||
@ -870,6 +882,29 @@ define Device/h3c_tx1806
|
||||
endef
|
||||
TARGET_DEVICES += h3c_tx1806
|
||||
|
||||
define Device/haier-sim_wr1800k
|
||||
$(Device/dsa-migration)
|
||||
BLOCKSIZE := 128k
|
||||
PAGESIZE := 2048
|
||||
KERNEL_SIZE := 4096k
|
||||
IMAGE_SIZE := 125440k
|
||||
UBINIZE_OPTS := -E 5
|
||||
KERNEL_LOADADDR := 0x82000000
|
||||
KERNEL := kernel-bin | relocate-kernel 0x80001000 | lzma | \
|
||||
fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
|
||||
KERNEL_INITRAMFS := $$(KERNEL) | \
|
||||
haier-sim_wr1800k-factory $(KDIR)/tmp/$$(KERNEL_INITRAMFS_PREFIX)-factory.bin
|
||||
IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
|
||||
DEVICE_PACKAGES := kmod-mt7915e uboot-envtools
|
||||
endef
|
||||
|
||||
define Device/haier_har-20s2u1
|
||||
$(Device/haier-sim_wr1800k)
|
||||
DEVICE_VENDOR := Haier
|
||||
DEVICE_MODEL := HAR-20S2U1
|
||||
endef
|
||||
TARGET_DEVICES += haier_har-20s2u1
|
||||
|
||||
define Device/hilink_hlk-7621a-evb
|
||||
$(Device/dsa-migration)
|
||||
$(Device/uimage-lzma-loader)
|
||||
@ -1730,6 +1765,13 @@ define Device/sercomm_na502s
|
||||
endef
|
||||
TARGET_DEVICES += sercomm_na502s
|
||||
|
||||
define Device/sim_simax1800t
|
||||
$(Device/haier-sim_wr1800k)
|
||||
DEVICE_VENDOR := SIM
|
||||
DEVICE_MODEL := SIMAX1800T
|
||||
endef
|
||||
TARGET_DEVICES += sim_simax1800t
|
||||
|
||||
define Device/snr_snr-cpe-me2-lite
|
||||
$(Device/dsa-migration)
|
||||
$(Device/uimage-lzma-loader)
|
||||
@ -1869,6 +1911,21 @@ define Device/tplink_eap615-wall-v1
|
||||
endef
|
||||
TARGET_DEVICES += tplink_eap615-wall-v1
|
||||
|
||||
define Device/tplink_mr600-v2-eu
|
||||
$(Device/dsa-migration)
|
||||
$(Device/tplink-v2)
|
||||
DEVICE_MODEL := MR600
|
||||
DEVICE_VARIANT := v2 (EU)
|
||||
TPLINK_FLASHLAYOUT := 16Mltq
|
||||
DEVICE_PACKAGES := kmod-mt7603 kmod-mt7615e kmod-mt7663-firmware-ap \
|
||||
kmod-usb-net-qmi-wwan uqmi kmod-usb3
|
||||
KERNEL := $(KERNEL_DTB) | uImage lzma
|
||||
KERNEL_INITRAMFS := $$(KERNEL) | tplink-v2-header
|
||||
TPLINK_BOARD_ID := MR600-V2-EU
|
||||
IMAGE_SIZE := 16384k
|
||||
endef
|
||||
TARGET_DEVICES += tplink_mr600-v2-eu
|
||||
|
||||
define Device/tplink_re350-v1
|
||||
$(Device/dsa-migration)
|
||||
$(Device/tplink-safeloader)
|
||||
@ -2252,6 +2309,8 @@ define Device/youku_yk-l2
|
||||
DEVICE_MODEL := YK-L2
|
||||
DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-sdhci-mt7620 \
|
||||
kmod-usb3 kmod-usb-ledtrig-usbport
|
||||
UIMAGE_MAGIC := 0x12291000
|
||||
UIMAGE_NAME := 400000000000000000003000
|
||||
endef
|
||||
TARGET_DEVICES += youku_yk-l2
|
||||
|
||||
@ -2318,6 +2377,30 @@ define Device/zbtlink_zbt-wg1602-16m
|
||||
endef
|
||||
TARGET_DEVICES += zbtlink_zbt-wg1602-16m
|
||||
|
||||
define Device/zbtlink_zbt-wg1602-v04-16m
|
||||
$(Device/dsa-migration)
|
||||
$(Device/uimage-lzma-loader)
|
||||
IMAGE_SIZE := 16064k
|
||||
DEVICE_VENDOR := Zbtlink
|
||||
DEVICE_MODEL := ZBT-WG1602-V04
|
||||
DEVICE_VARIANT := 16M
|
||||
DEVICE_PACKAGES := kmod-sdhci-mt7620 kmod-mt7603 kmod-mt76x2 kmod-usb3 \
|
||||
kmod-usb-ledtrig-usbport
|
||||
endef
|
||||
TARGET_DEVICES += zbtlink_zbt-wg1602-v04-16m
|
||||
|
||||
define Device/zbtlink_zbt-wg1602-v04-32m
|
||||
$(Device/dsa-migration)
|
||||
$(Device/uimage-lzma-loader)
|
||||
IMAGE_SIZE := 32128k
|
||||
DEVICE_VENDOR := Zbtlink
|
||||
DEVICE_MODEL := ZBT-WG1602-V04
|
||||
DEVICE_VARIANT := 32M
|
||||
DEVICE_PACKAGES := kmod-sdhci-mt7620 kmod-mt7603 kmod-mt76x2 kmod-usb3 \
|
||||
kmod-usb-ledtrig-usbport
|
||||
endef
|
||||
TARGET_DEVICES += zbtlink_zbt-wg1602-v04-32m
|
||||
|
||||
define Device/zbtlink_zbt-wg1608-16m
|
||||
$(Device/dsa-migration)
|
||||
$(Device/uimage-lzma-loader)
|
||||
|
||||
@ -237,6 +237,10 @@ ramips_setup_interfaces()
|
||||
ucidef_add_switch "switch0" \
|
||||
"5:lan" "4:wan" "6@eth0"
|
||||
;;
|
||||
youku,x2)
|
||||
ucidef_add_switch "switch0" \
|
||||
"1:lan:2" "4:lan:1" "0:wan" "6@eth0"
|
||||
;;
|
||||
youku,yk-l1|\
|
||||
youku,yk-l1c)
|
||||
ucidef_add_switch "switch0" \
|
||||
@ -368,6 +372,7 @@ ramips_setup_macs()
|
||||
ohyeah,oy-0001|\
|
||||
wavlink,wl-wn530hg4|\
|
||||
wevo,air-duo|\
|
||||
youku,x2|\
|
||||
youku,yk-l1|\
|
||||
youku,yk-l1c)
|
||||
wan_mac=$(mtd_get_mac_binary factory 0x2e)
|
||||
|
||||
@ -147,6 +147,11 @@ tplink,re350-v1)
|
||||
ucidef_set_led_netdev "eth_act" "LAN act" "green:eth_act" "lan" "tx rx"
|
||||
ucidef_set_led_netdev "eth_link" "LAN link" "green:eth_link" "lan" "link"
|
||||
;;
|
||||
tplink,mr600-v2-eu)
|
||||
ucidef_set_led_netdev "lan" "LAN" "white:lan" "br-lan"
|
||||
ucidef_set_led_netdev "wan" "WAN" "white:wan" "wan"
|
||||
ucidef_set_led_netdev "4g" "4G" "white:4g" "wwan0"
|
||||
;;
|
||||
tplink,re500-v1|\
|
||||
tplink,re650-v1|\
|
||||
tplink,re650-v2)
|
||||
|
||||
@ -35,8 +35,10 @@ ramips_setup_interfaces()
|
||||
h3c,tx1800-plus|\
|
||||
h3c,tx1801-plus|\
|
||||
h3c,tx1806|\
|
||||
haier,har-20s2u1|\
|
||||
hiwifi,hc5962|\
|
||||
netgear,wax202|\
|
||||
sim,simax1800t|\
|
||||
xiaomi,mi-router-3-pro|\
|
||||
xiaomi,mi-router-ac2100|\
|
||||
xiaomi,mi-router-cr6606|\
|
||||
@ -98,6 +100,9 @@ ramips_setup_interfaces()
|
||||
tplink,tl-wpa8631p-v3)
|
||||
ucidef_set_interface_lan "lan1 lan2 lan3 plc0"
|
||||
;;
|
||||
tplink,mr600-v2-eu)
|
||||
ucidef_set_interfaces_lan_wan "lan1 lan2 lan3" "wan"
|
||||
;;
|
||||
ubnt,edgerouter-x)
|
||||
ucidef_set_interfaces_lan_wan "eth1 eth2 eth3 eth4" "eth0"
|
||||
;;
|
||||
@ -214,6 +219,11 @@ ramips_setup_macs()
|
||||
wan_mac=$(mtd_get_mac_ascii Config wan_hwaddr)
|
||||
label_mac=$lan_mac
|
||||
;;
|
||||
tplink,mr600-v2-eu)
|
||||
label_mac=$(cat "/sys/class/net/eth0/address")
|
||||
wwan_mac=$(macaddr_add $label_mac 1)
|
||||
ucidef_set_interface "wwan0" device "/dev/cdc-wdm0" protocol "qmi" macaddr "$wwan_mac"
|
||||
;;
|
||||
mikrotik,routerboard-750gr3|\
|
||||
mikrotik,routerboard-760igs|\
|
||||
mikrotik,routerboard-m11g|\
|
||||
|
||||
@ -45,6 +45,12 @@ case "$board" in
|
||||
[ "$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
|
||||
;;
|
||||
haier,har-20s2u1|\
|
||||
jcg,y2|\
|
||||
sim,simax1800t)
|
||||
[ "$PHYNBR" = "1" ] && \
|
||||
macaddr_setbit_la "$(mtd_get_mac_binary factory 0x4)" > /sys${DEVPATH}/macaddress
|
||||
;;
|
||||
hiwifi,hc5962)
|
||||
label_mac=$(mtd_get_mac_ascii bdinfo "Vfac_mac ")
|
||||
[ "$PHYNBR" = "0" ] && [ -n "$label_mac" ] && \
|
||||
@ -69,10 +75,6 @@ case "$board" in
|
||||
[ "$PHYNBR" = "1" ] && \
|
||||
macaddr_setbit_la "$(mtd_get_mac_binary Factory 0x4)" > /sys${DEVPATH}/macaddress
|
||||
;;
|
||||
jcg,y2)
|
||||
[ "$PHYNBR" = "1" ] && \
|
||||
macaddr_setbit_la "$(mtd_get_mac_binary factory 0x4)" > /sys${DEVPATH}/macaddress
|
||||
;;
|
||||
linksys,e5600|\
|
||||
linksys,ea6350-v4|\
|
||||
linksys,ea7300-v1|\
|
||||
|
||||
@ -65,6 +65,7 @@ platform_do_upgrade() {
|
||||
h3c,tx1800-plus|\
|
||||
h3c,tx1801-plus|\
|
||||
h3c,tx1806|\
|
||||
haier,har-20s2u1|\
|
||||
hiwifi,hc5962|\
|
||||
iptime,a3004t|\
|
||||
iptime,ax2004m|\
|
||||
@ -95,6 +96,7 @@ platform_do_upgrade() {
|
||||
raisecom,msg1500-x-00|\
|
||||
sercomm,na502|\
|
||||
sercomm,na502s|\
|
||||
sim,simax1800t|\
|
||||
xiaomi,mi-router-3g|\
|
||||
xiaomi,mi-router-3-pro|\
|
||||
xiaomi,mi-router-4|\
|
||||
|
||||
@ -25,7 +25,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
|
||||
--- a/drivers/mmc/host/Kconfig
|
||||
+++ b/drivers/mmc/host/Kconfig
|
||||
@@ -1101,3 +1101,5 @@ config MMC_OWL
|
||||
@@ -1102,3 +1102,5 @@ config MMC_OWL
|
||||
|
||||
config MMC_SDHCI_EXTERNAL_DMA
|
||||
bool
|
||||
|
||||
@ -25,7 +25,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||
|
||||
--- a/drivers/mmc/host/Kconfig
|
||||
+++ b/drivers/mmc/host/Kconfig
|
||||
@@ -1091,3 +1091,5 @@ config MMC_OWL
|
||||
@@ -1092,3 +1092,5 @@ config MMC_OWL
|
||||
|
||||
config MMC_SDHCI_EXTERNAL_DMA
|
||||
bool
|
||||
|
||||
@ -1446,7 +1446,7 @@ static void rtl83xx_vlan_add(struct dsa_switch *ds, int port,
|
||||
struct rtl838x_switch_priv *priv = ds->priv;
|
||||
int v;
|
||||
|
||||
pr_debug("%s port %d, vid_end %d, vid_end %d, flags %x\n", __func__,
|
||||
pr_debug("%s port %d, vid_begin %d, vid_end %d, flags %x\n", __func__,
|
||||
port, vlan->vid_begin, vlan->vid_end, vlan->flags);
|
||||
|
||||
if (vlan->vid_begin > 4095 || vlan->vid_end > 4095) {
|
||||
@ -1511,7 +1511,7 @@ static int rtl83xx_vlan_del(struct dsa_switch *ds, int port,
|
||||
int v;
|
||||
u16 pvid;
|
||||
|
||||
pr_debug("%s: port %d, vid_end %d, vid_end %d, flags %x\n", __func__,
|
||||
pr_debug("%s: port %d, vid_begin %d, vid_end %d, flags %x\n", __func__,
|
||||
port, vlan->vid_begin, vlan->vid_end, vlan->flags);
|
||||
|
||||
if (vlan->vid_begin > 4095 || vlan->vid_end > 4095) {
|
||||
|
||||
@ -3,12 +3,12 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=elfutils
|
||||
PKG_VERSION:=0.187
|
||||
PKG_VERSION:=0.188
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
|
||||
PKG_SOURCE_URL:=https://sourceware.org/$(PKG_NAME)/ftp/$(PKG_VERSION)
|
||||
PKG_HASH:=e70b0dfbe610f90c4d1fe0d71af142a4e25c3c4ef9ebab8d2d72b65159d454c8
|
||||
PKG_HASH:=fb8b0e8d0802005b9a309c60c1d8de32dd2951b56f0c3a3cb56d21ce01595dff
|
||||
|
||||
PKG_LICENSE:=GPL-3.0-or-later
|
||||
PKG_LICENSE_FILES:=COPYING COPYING-GPLV2 COPYING-LGPLV3
|
||||
|
||||
@ -5,12 +5,12 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=fakeroot
|
||||
PKG_VERSION:=1.29
|
||||
PKG_VERSION:=1.30.1
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).orig.tar.gz
|
||||
PKG_SOURCE_URL:=@DEBIAN/pool/main/f/fakeroot
|
||||
PKG_HASH:=8fbbafb780c9173e3ace4a04afbc1d900f337f3216883939f5c7db3431be7c20
|
||||
PKG_HASH:=32ebb1f421aca0db7141c32a8c104eb95d2b45c393058b9435fbf903dd2b6a75
|
||||
PKG_LICENSE:=GPL-3.0-or-later
|
||||
PKG_LICENSE_FILES:=COPYING
|
||||
PKG_FIXUP:=autoreconf
|
||||
|
||||
@ -24,7 +24,7 @@
|
||||
#include <spawn.h>
|
||||
--- a/wrapfunc.inp
|
||||
+++ b/wrapfunc.inp
|
||||
@@ -48,9 +48,11 @@ getattrlist$UNIX2003;int;(const char *pa
|
||||
@@ -50,9 +50,11 @@ getattrlist$UNIX2003;int;(const char *pa
|
||||
#endif
|
||||
#endif
|
||||
#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5
|
||||
@ -36,7 +36,7 @@
|
||||
posix_spawn;int;(pid_t * __restrict pid, const char * __restrict path, const posix_spawn_file_actions_t *file_actions, const posix_spawnattr_t * __restrict attrp, char *const argv[ __restrict], char *const envp[ __restrict]);(pid, path, file_actions, attrp, argv, envp)
|
||||
posix_spawnp;int;(pid_t * __restrict pid, const char * __restrict path, const posix_spawn_file_actions_t *file_actions, const posix_spawnattr_t * __restrict attrp, char *const argv[ __restrict], char *const envp[ __restrict]);(pid, path, file_actions, attrp, argv, envp)
|
||||
#endif
|
||||
@@ -229,7 +231,7 @@ facl;int;(int fd, int cmd, int cnt, void
|
||||
@@ -231,7 +233,7 @@ facl;int;(int fd, int cmd, int cnt, void
|
||||
#ifdef HAVE_FTS_READ
|
||||
fts_read;FTSENT *;(FTS *ftsp);(ftsp)
|
||||
#ifdef __APPLE__
|
||||
@ -45,7 +45,7 @@
|
||||
fts_read$INODE64;FTSENT *;(FTS *ftsp);(ftsp)
|
||||
#endif
|
||||
#endif /* ifdef __APPLE__ */
|
||||
@@ -237,7 +239,7 @@ fts_read$INODE64;FTSENT *;(FTS *ftsp);(f
|
||||
@@ -239,7 +241,7 @@ fts_read$INODE64;FTSENT *;(FTS *ftsp);(f
|
||||
#ifdef HAVE_FTS_CHILDREN
|
||||
fts_children;FTSENT *;(FTS *ftsp, int options);(ftsp, options)
|
||||
#ifdef __APPLE__
|
||||
|
||||
@ -7,12 +7,12 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=mtd-utils
|
||||
PKG_VERSION:=2.1.4
|
||||
PKG_VERSION:=2.1.5
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
|
||||
PKG_SOURCE_URL:=https://infraroot.at/pub/mtd/
|
||||
PKG_HASH:=2c6711d15d282c47cb3867b6857340597e26d332c238465134c602e5eef71b99
|
||||
PKG_HASH:=386e27fd121699b6b729bc2e8e04dda987b31cca6b16e12fb6cc6dcf26449f46
|
||||
|
||||
PKG_FIXUP:=autoreconf
|
||||
|
||||
|
||||
@ -5020,7 +5020,7 @@
|
||||
+}
|
||||
--- a/jffsX-utils/mkfs.jffs2.c
|
||||
+++ b/jffsX-utils/mkfs.jffs2.c
|
||||
@@ -1667,11 +1667,11 @@ int main(int argc, char **argv)
|
||||
@@ -1668,11 +1668,11 @@ int main(int argc, char **argv)
|
||||
}
|
||||
erase_block_size *= units;
|
||||
|
||||
|
||||
@ -20,7 +20,7 @@
|
||||
}
|
||||
|
||||
entry = xcalloc(1, sizeof(struct filesystem_entry));
|
||||
@@ -1558,6 +1558,20 @@ static void parse_image(void){
|
||||
@@ -1559,6 +1559,20 @@ static void parse_image(void){
|
||||
close(in_fd);
|
||||
}
|
||||
|
||||
@ -41,7 +41,7 @@
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
int c, opt;
|
||||
@@ -1576,6 +1590,7 @@ int main(int argc, char **argv)
|
||||
@@ -1577,6 +1591,7 @@ int main(int argc, char **argv)
|
||||
warn_page_size = 1; /* warn user if page size not 4096 */
|
||||
|
||||
jffs2_compressors_init();
|
||||
@ -49,7 +49,7 @@
|
||||
|
||||
while ((opt = getopt_long(argc, argv,
|
||||
"D:d:r:s:o:qUPfh?vVe:lbp::nc:m:x:X:Lty:i:", long_options, &c)) >= 0)
|
||||
@@ -1626,7 +1641,7 @@ int main(int argc, char **argv)
|
||||
@@ -1627,7 +1642,7 @@ int main(int argc, char **argv)
|
||||
break;
|
||||
|
||||
case 'f':
|
||||
|
||||
@ -7,11 +7,11 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=mtools
|
||||
PKG_VERSION:=4.0.41
|
||||
PKG_VERSION:=4.0.42
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
|
||||
PKG_SOURCE_URL:=@GNU/$(PKG_NAME)
|
||||
PKG_HASH:=2542152264fb3eff7ed70662abf4f4eef8133bc37d0b7a686c240df2b5f80a13
|
||||
PKG_HASH:=64bfdfde4d82af6b22f3c1c72c3e231cbb618f4c2309cc46f54d16d5502ccf15
|
||||
|
||||
HOST_BUILD_PARALLEL:=1
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user