Merge Official Source

This commit is contained in:
AmadeusGhost 2020-07-05 18:15:07 +08:00
commit 4489d17899
226 changed files with 1118 additions and 1360 deletions

View File

@ -6,13 +6,13 @@ ifdef CONFIG_TESTING_KERNEL
KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
endif
LINUX_VERSION-4.14 = .180
LINUX_VERSION-4.19 = .123
LINUX_VERSION-5.4 = .48
LINUX_VERSION-4.14 = .187
LINUX_VERSION-4.19 = .131
LINUX_VERSION-5.4 = .50
LINUX_KERNEL_HASH-4.14.180 = 444ef973d9b6a6ea174e4a9086f0aea980d8575d13302e431ad688f22e27ed0e
LINUX_KERNEL_HASH-4.19.123 = a79914d31a8d8c6b0e2bb0f2b143d615fe8a6c4dd2e0f36e97aa20efd69a993f
LINUX_KERNEL_HASH-5.4.48 = bf20ddafcd04c114d34654bb10d1eb74f1864f3d14b676c6f0d42d60bbcf1d53
LINUX_KERNEL_HASH-4.14.187 = 5b223475eaeea196aa7e127d3f253bca5c35d8afdc72ca75230ce1ecdd1454bd
LINUX_KERNEL_HASH-4.19.131 = 19dfb9f6cc4ba30104b65dcce7d78240a4ae188cb366747d5f8eae35e98964ba
LINUX_KERNEL_HASH-5.4.50 = ad10f4c1e900f4e3eb4903b65dbcb4ca74250de63aa9fa7105b9b3c3f9a8a6e2
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))

View File

@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=linux-firmware
PKG_VERSION:=20200122
PKG_VERSION:=20200619
PKG_RELEASE:=1
PKG_SOURCE_URL:=@KERNEL/linux/kernel/firmware
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_HASH:=a30e811b3736a72b874ac27e10662f5e5409b1cadf8aab7ba88e8f8bc8083986
PKG_HASH:=962d3ae197d226c8259f9cc7746f7ef12a9d23787cd56bd27302021ba6339722
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>

View File

@ -8,9 +8,9 @@ PKG_LICENSE_FILES:=
PKG_SOURCE_URL:=https://github.com/greearb/ath10k-ct.git
PKG_SOURCE_PROTO:=git
PKG_SOURCE_DATE:=2020-04-29
PKG_SOURCE_VERSION:=3637be6f6baf99e85a7f0b27f80a99a2f2a5f78d
PKG_MIRROR_HASH:=97cf22a4a57381c7eb7a9b8a8b1e347e9711ce51c89db971b4ab9a35af476ece
PKG_SOURCE_DATE:=2020-06-30
PKG_SOURCE_VERSION:=edfbf9161ab75e4831981284ab2d5b1b9fb6ef72
PKG_MIRROR_HASH:=98b7f88baea7314144fa8f8d141ad0dbbf2816f9606b0a89afb396761b558d14
# Build the 5.4 ath10k-ct driver version. Other option is "-4.19".
# Probably this should match as closely as

View File

@ -210,7 +210,7 @@ v13:
#include "htt.h"
#include "htc.h"
@@ -1469,6 +1470,13 @@ struct ath10k {
@@ -1470,6 +1471,13 @@ struct ath10k {
} testmode;
struct {
@ -445,7 +445,7 @@ v13:
{
--- a/ath10k-5.4/wmi-tlv.c
+++ b/ath10k-5.4/wmi-tlv.c
@@ -4364,6 +4364,8 @@ static const struct wmi_ops wmi_tlv_ops
@@ -4367,6 +4367,8 @@ static const struct wmi_ops wmi_tlv_ops
.gen_echo = ath10k_wmi_tlv_op_gen_echo,
.gen_vdev_spectral_conf = ath10k_wmi_tlv_op_gen_vdev_spectral_conf,
.gen_vdev_spectral_enable = ath10k_wmi_tlv_op_gen_vdev_spectral_enable,
@ -456,7 +456,7 @@ v13:
static const struct wmi_peer_flags_map wmi_tlv_peer_flags_map = {
--- a/ath10k-5.4/wmi.c
+++ b/ath10k-5.4/wmi.c
@@ -8295,6 +8295,49 @@ ath10k_wmi_op_gen_peer_set_param(struct
@@ -8305,6 +8305,49 @@ ath10k_wmi_op_gen_peer_set_param(struct
return skb;
}
@ -506,7 +506,7 @@ v13:
static struct sk_buff *
ath10k_wmi_op_gen_set_psmode(struct ath10k *ar, u32 vdev_id,
enum wmi_sta_ps_mode psmode)
@@ -10094,6 +10137,9 @@ static const struct wmi_ops wmi_ops = {
@@ -10104,6 +10147,9 @@ static const struct wmi_ops wmi_ops = {
.fw_stats_fill = ath10k_wmi_main_op_fw_stats_fill,
.get_vdev_subtype = ath10k_wmi_op_get_vdev_subtype,
.gen_echo = ath10k_wmi_op_gen_echo,
@ -516,7 +516,7 @@ v13:
/* .gen_bcn_tmpl not implemented */
/* .gen_prb_tmpl not implemented */
/* .gen_p2p_go_bcn_ie not implemented */
@@ -10164,6 +10210,8 @@ static const struct wmi_ops wmi_10_1_ops
@@ -10174,6 +10220,8 @@ static const struct wmi_ops wmi_10_1_ops
.fw_stats_fill = ath10k_wmi_10x_op_fw_stats_fill,
.get_vdev_subtype = ath10k_wmi_op_get_vdev_subtype,
.gen_echo = ath10k_wmi_op_gen_echo,
@ -525,7 +525,7 @@ v13:
/* .gen_bcn_tmpl not implemented */
/* .gen_prb_tmpl not implemented */
/* .gen_p2p_go_bcn_ie not implemented */
@@ -10243,6 +10291,8 @@ static const struct wmi_ops wmi_10_2_ops
@@ -10253,6 +10301,8 @@ static const struct wmi_ops wmi_10_2_ops
.gen_delba_send = ath10k_wmi_op_gen_delba_send,
.fw_stats_fill = ath10k_wmi_10x_op_fw_stats_fill,
.get_vdev_subtype = ath10k_wmi_op_get_vdev_subtype,
@ -534,7 +534,7 @@ v13:
/* .gen_pdev_enable_adaptive_cca not implemented */
};
@@ -10314,6 +10364,8 @@ static const struct wmi_ops wmi_10_2_4_o
@@ -10324,6 +10374,8 @@ static const struct wmi_ops wmi_10_2_4_o
ath10k_wmi_op_gen_pdev_enable_adaptive_cca,
.get_vdev_subtype = ath10k_wmi_10_2_4_op_get_vdev_subtype,
.gen_bb_timing = ath10k_wmi_10_2_4_op_gen_bb_timing,
@ -543,7 +543,7 @@ v13:
/* .gen_bcn_tmpl not implemented */
/* .gen_prb_tmpl not implemented */
/* .gen_p2p_go_bcn_ie not implemented */
@@ -10395,6 +10447,8 @@ static const struct wmi_ops wmi_10_4_ops
@@ -10405,6 +10457,8 @@ static const struct wmi_ops wmi_10_4_ops
.gen_pdev_bss_chan_info_req = ath10k_wmi_10_2_op_gen_pdev_bss_chan_info,
.gen_echo = ath10k_wmi_op_gen_echo,
.gen_pdev_get_tpc_config = ath10k_wmi_10_2_4_op_gen_pdev_get_tpc_config,

View File

@ -16,7 +16,7 @@ Signed-off-by: Mathias Kresin <dev@kresin.me>
--- a/ath10k-5.4/core.h
+++ b/ath10k-5.4/core.h
@@ -1573,6 +1573,10 @@ struct ath10k {
@@ -1574,6 +1574,10 @@ struct ath10k {
u8 csi_data[4096];
u16 csi_data_len;
@ -42,7 +42,7 @@ Signed-off-by: Mathias Kresin <dev@kresin.me>
if (ret)
--- a/ath10k-5.4/mac.c
+++ b/ath10k-5.4/mac.c
@@ -10367,7 +10367,7 @@ int ath10k_mac_register(struct ath10k *a
@@ -10383,7 +10383,7 @@ int ath10k_mac_register(struct ath10k *a
ar->hw->weight_multiplier = ATH10K_AIRTIME_WEIGHT_MULTIPLIER;
#ifdef CPTCFG_MAC80211_LEDS

View File

@ -1,6 +1,6 @@
--- a/ath10k-5.4/mac.c
+++ b/ath10k-5.4/mac.c
@@ -10180,6 +10180,7 @@ int ath10k_mac_register(struct ath10k *a
@@ -10182,6 +10182,7 @@ int ath10k_mac_register(struct ath10k *a
wiphy_ext_feature_set(ar->hw->wiphy, NL80211_EXT_FEATURE_VHT_IBSS);
wiphy_ext_feature_set(ar->hw->wiphy,
NL80211_EXT_FEATURE_SET_SCAN_DWELL);

View File

@ -8,26 +8,25 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=json-c
PKG_VERSION:=0.13.1
PKG_RELEASE:=2
PKG_VERSION:=0.14
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-nodoc.tar.gz
PKG_SOURCE_URL:=https://s3.amazonaws.com/json-c_releases/releases/
PKG_HASH:=94a26340c0785fcff4f46ff38609cf84ebcd670df0c8efd75d039cc951d80132
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_SOURCE_SUBDIR)
PKG_HASH:=99914e644a25201d82ccefa20430f7515c110923360f9ef46755527c02412afa
PKG_LICENSE:=MIT
PKG_LICENSE_FILES:=COPYING
PKG_CPE_ID:=cpe:/a:json-c_project:json-c
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
CMAKE_INSTALL:=1
CMAKE_OPTIONS += -DCMAKE_INSTALL_INCLUDEDIR=$(STAGING_DIR)/usr/include
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/host-build.mk
include $(INCLUDE_DIR)/cmake.mk
TARGET_CFLAGS += $(FPIC) -Wno-implicit-fallthrough
HOST_CFLAGS += -Wno-implicit-fallthrough
@ -38,22 +37,13 @@ define Package/libjson-c
CATEGORY:=Libraries
TITLE:=javascript object notation
URL:=https://json-c.github.io/json-c/
ABI_VERSION:=4
ABI_VERSION:=5
endef
define Package/libjson-c/description
This package contains a library for javascript object notation backends.
endef
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/json-c $(1)/usr/include/
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libjson-c.{a,so*} $(1)/usr/lib/
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/json-c.pc $(1)/usr/lib/pkgconfig/
endef
define Package/libjson-c/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libjson-c.so.* $(1)/usr/lib/

View File

@ -1,18 +1,3 @@
--- a/configure.ac
+++ b/configure.ac
@@ -76,12 +76,6 @@ AC_FUNC_VPRINTF
AC_FUNC_MEMCMP
AC_CHECK_FUNCS([realloc])
AC_CHECK_FUNCS(strcasecmp strdup strerror snprintf vsnprintf vasprintf open vsyslog strncasecmp setlocale)
-AC_CHECK_DECLS([INFINITY], [], [], [[#include <math.h>]])
-AC_CHECK_DECLS([nan], [], [], [[#include <math.h>]])
-AC_CHECK_DECLS([isnan], [], [], [[#include <math.h>]])
-AC_CHECK_DECLS([isinf], [], [], [[#include <math.h>]])
-AC_CHECK_DECLS([_isnan], [], [], [[#include <float.h>]])
-AC_CHECK_DECLS([_finite], [], [], [[#include <float.h>]])
AC_MSG_CHECKING(for GCC atomic builtins)
AC_LINK_IFELSE(
[
--- a/math_compat.h
+++ b/math_compat.h
@@ -6,31 +6,9 @@
@ -22,17 +7,17 @@
-/* Define isnan, isinf, infinity and nan on Windows/MSVC */
-
-#ifndef HAVE_DECL_ISNAN
-# ifdef HAVE_DECL__ISNAN
-#ifdef HAVE_DECL__ISNAN
-#include <float.h>
-#define isnan(x) _isnan(x)
-# endif
-#endif
-#endif
-
-#ifndef HAVE_DECL_ISINF
-# ifdef HAVE_DECL__FINITE
-#ifdef HAVE_DECL__FINITE
-#include <float.h>
-#define isinf(x) (!_finite(x))
-# endif
-#endif
-#endif
-
-#ifndef HAVE_DECL_INFINITY

File diff suppressed because one or more lines are too long

View File

@ -1,27 +0,0 @@
From 099016b7e8d70a6d5dd814e788bba08d33d48426 Mon Sep 17 00:00:00 2001
From: Tobias Stoeckmann <tobias@stoeckmann.org>
Date: Mon, 4 May 2020 19:41:16 +0200
Subject: [PATCH 1/2] Protect array_list_del_idx against size_t overflow.
If the assignment of stop overflows due to idx and count being
larger than SIZE_T_MAX in sum, out of boundary access could happen.
It takes invalid usage of this function for this to happen, but
I decided to add this check so array_list_del_idx is as safe against
bad usage as the other arraylist functions.
---
arraylist.c | 3 +++
1 file changed, 3 insertions(+)
--- a/arraylist.c
+++ b/arraylist.c
@@ -135,6 +135,9 @@ array_list_del_idx( struct array_list *a
{
size_t i, stop;
+ /* Avoid overflow in calculation with large indices. */
+ if (idx > SIZE_T_MAX - count)
+ return -1;
stop = idx + count;
if ( idx >= arr->length || stop > arr->length ) return -1;
for ( i = idx; i < stop; ++i ) {

View File

@ -1,32 +0,0 @@
From 77d935b7ae7871a1940cd827e850e6063044ec45 Mon Sep 17 00:00:00 2001
From: Tobias Stoeckmann <tobias@stoeckmann.org>
Date: Mon, 4 May 2020 19:46:45 +0200
Subject: [PATCH 2/2] Prevent division by zero in linkhash.
If a linkhash with a size of zero is created, then modulo operations
are prone to division by zero operations.
Purely protective measure against bad usage.
---
linkhash.c | 3 +++
1 file changed, 3 insertions(+)
--- a/linkhash.c
+++ b/linkhash.c
@@ -12,6 +12,7 @@
#include "config.h"
+#include <assert.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
@@ -498,6 +499,8 @@ struct lh_table* lh_table_new(int size,
int i;
struct lh_table *t;
+ /* Allocate space for elements to avoid divisions by zero. */
+ assert(size > 0);
t = (struct lh_table*)calloc(1, sizeof(struct lh_table));
if (!t)
return NULL;

View File

@ -1,86 +0,0 @@
From d07b91014986900a3a75f306d302e13e005e9d67 Mon Sep 17 00:00:00 2001
From: Tobias Stoeckmann <tobias@stoeckmann.org>
Date: Mon, 4 May 2020 19:47:25 +0200
Subject: [PATCH] Fix integer overflows.
The data structures linkhash and printbuf are limited to 2 GB in size
due to a signed integer being used to track their current size.
If too much data is added, then size variable can overflow, which is
an undefined behaviour in C programming language.
Assuming that a signed int overflow just leads to a negative value,
like it happens on many sytems (Linux i686/amd64 with gcc), then
printbuf is vulnerable to an out of boundary write on 64 bit systems.
---
linkhash.c | 7 +++++--
printbuf.c | 19 ++++++++++++++++---
2 files changed, 21 insertions(+), 5 deletions(-)
--- a/linkhash.c
+++ b/linkhash.c
@@ -579,9 +579,12 @@ int lh_table_insert_w_hash(struct lh_tab
{
unsigned long n;
- if (t->count >= t->size * LH_LOAD_FACTOR)
- if (lh_table_resize(t, t->size * 2) != 0)
+ if (t->count >= t->size * LH_LOAD_FACTOR) {
+ /* Avoid signed integer overflow with large tables. */
+ int new_size = INT_MAX / 2 < t->size ? t->size * 2 : INT_MAX;
+ if (t->size == INT_MAX || lh_table_resize(t, new_size) != 0)
return -1;
+ }
n = h % t->size;
--- a/printbuf.c
+++ b/printbuf.c
@@ -15,6 +15,7 @@
#include "config.h"
+#include <limits.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
@@ -65,9 +66,16 @@ static int printbuf_extend(struct printb
if (p->size >= min_size)
return 0;
- new_size = p->size * 2;
- if (new_size < min_size + 8)
- new_size = min_size + 8;
+ /* Prevent signed integer overflows with large buffers. */
+ if (min_size > INT_MAX - 8)
+ return -1;
+ if (p->size > INT_MAX / 2)
+ new_size = min_size + 8;
+ else {
+ new_size = p->size * 2;
+ if (new_size < min_size + 8)
+ new_size = min_size + 8;
+ }
#ifdef PRINTBUF_DEBUG
MC_DEBUG("printbuf_memappend: realloc "
"bpos=%d min_size=%d old_size=%d new_size=%d\n",
@@ -82,6 +90,9 @@ static int printbuf_extend(struct printb
int printbuf_memappend(struct printbuf *p, const char *buf, int size)
{
+ /* Prevent signed integer overflows with large buffers. */
+ if (size > INT_MAX - p->bpos - 1)
+ return -1;
if (p->size <= p->bpos + size + 1) {
if (printbuf_extend(p, p->bpos + size + 1) < 0)
return -1;
@@ -98,6 +109,9 @@ int printbuf_memset(struct printbuf *pb,
if (offset == -1)
offset = pb->bpos;
+ /* Prevent signed integer overflows with large buffers. */
+ if (len > INT_MAX - offset)
+ return -1;
size_needed = offset + len;
if (pb->size < size_needed)
{

View File

@ -1,29 +0,0 @@
From 519dfe1591d85432986f9762d41d1a883198c157 Mon Sep 17 00:00:00 2001
From: Eric Haszlakiewicz <erh+git@nimenees.com>
Date: Sun, 10 May 2020 03:32:19 +0000
Subject: [PATCH] Issue #599: Fix the backwards check in
lh_table_insert_w_hash() that was preventing adding more than 11 objects. Add
a test to check for this too.
---
linkhash.c | 2 +-
tests/test4.c | 29 +++++++++++++++++++++++++++++
tests/test4.expected | 1 +
3 files changed, 31 insertions(+), 1 deletion(-)
diff --git a/linkhash.c b/linkhash.c
index 51e90b1..f930efd 100644
--- a/linkhash.c
+++ b/linkhash.c
@@ -582,7 +582,7 @@ int lh_table_insert_w_hash(struct lh_table *t, const void *k, const void *v, con
if (t->count >= t->size * LH_LOAD_FACTOR) {
/* Avoid signed integer overflow with large tables. */
- int new_size = INT_MAX / 2 < t->size ? t->size * 2 : INT_MAX;
+ int new_size = (t->size > INT_MAX / 2) ? INT_MAX : (t->size * 2);
if (t->size == INT_MAX || lh_table_resize(t, new_size) != 0)
return -1;
}
--
2.26.2

View File

@ -12,9 +12,9 @@ PKG_RELEASE:=4
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL=$(PROJECT_GIT)/project/odhcpd.git
PKG_SOURCE_DATE:=2020-05-04
PKG_SOURCE_VERSION:=5ce077026b991f49d96464587386f93d92f56385
PKG_MIRROR_HASH:=5fcb4e9f219398ac09ab87e942d1a9a3f4c58431dceefa30b429a19d2dba8ff6
PKG_SOURCE_DATE:=2020-06-21
PKG_SOURCE_VERSION:=5da52992a3926b36e53d0a5d55955a6ccbc35872
PKG_MIRROR_HASH:=6e1f06fd1467d078dc8b4c5ee3cf13a695aa7222e98b2193479e862a4bd21049
PKG_MAINTAINER:=Hans Dedecker <dedeckeh@gmail.com>
PKG_LICENSE:=GPL-2.0

View File

@ -8,7 +8,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=curl
PKG_VERSION:=7.70.0
PKG_VERSION:=7.71.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
@ -16,7 +16,7 @@ PKG_SOURCE_URL:=https://dl.uxnr.de/mirror/curl/ \
https://curl.mirror.anstey.ca/ \
https://curl.askapache.com/download/ \
https://curl.haxx.se/download/
PKG_HASH:=032f43f2674008c761af19bf536374128c16241fb234699a55f9fb603fcfbae7
PKG_HASH:=cdf18794393d8bead915312708a9e5d819c6e9919de14b20d5c8e7987abd9772
PKG_LICENSE:=MIT
PKG_LICENSE_FILES:=COPYING

View File

@ -1,6 +1,6 @@
--- a/Makefile.am
+++ b/Makefile.am
@@ -189,7 +189,7 @@ CLEANFILES = $(VC6_LIBDSP) $(VC6_SRCDSP)
@@ -192,7 +192,7 @@ CLEANFILES = $(VC6_LIBDSP) $(VC6_SRCDSP)
bin_SCRIPTS = curl-config
SUBDIRS = lib src
@ -9,10 +9,10 @@
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = libcurl.pc
@@ -300,8 +300,8 @@ cygwinbin:
@@ -303,8 +303,8 @@ cygwinbin:
# We extend the standard install with a custom hook:
install-data-hook:
(cd include && $(MAKE) install)
(cd include && $(MAKE) install)
- (cd docs && $(MAKE) install)
- (cd docs/libcurl && $(MAKE) install)
+ #(cd docs && $(MAKE) install)

View File

@ -32,22 +32,23 @@ for json_file in work_dir.glob("*.json"):
image_info["profiles"][device_id]["images"][0]
)
output["default_packages"] = run(
[
"make",
"--no-print-directory",
"-C",
f"target/linux/{output['target'].split('/')[0]}",
"val.DEFAULT_PACKAGES",
],
capture_output=True,
check=True,
env=environ.copy().update({"TOPDIR": Path().cwd()}),
text=True,
).stdout.split()
if output:
default_packages, output["arch_packages"] = run(
[
"make",
"--no-print-directory",
"-C",
f"target/linux/{output['target'].split('/')[0]}",
"val.DEFAULT_PACKAGES",
"val.ARCH_PACKAGES",
],
capture_output=True,
check=True,
env=environ.copy().update({"TOPDIR": Path().cwd()}),
text=True,
).stdout.splitlines()
output["default_packages"] = default_packages.split()
output_path.write_text(json.dumps(output, sort_keys=True, separators=(",", ":")))
else:
print("JSON info file script could not find any JSON files for target")

View File

@ -1,6 +1,6 @@
--- a/arch/powerpc/platforms/4xx/pci.c
+++ b/arch/powerpc/platforms/4xx/pci.c
@@ -1905,9 +1905,9 @@ static void __init ppc4xx_configure_pcie
@@ -1903,9 +1903,9 @@ static void __init ppc4xx_configure_pcie
* if it works
*/
out_le32(mbase + PECFG_PIM0LAL, 0x00000000);

View File

@ -1,6 +1,6 @@
--- a/arch/powerpc/platforms/4xx/pci.c
+++ b/arch/powerpc/platforms/4xx/pci.c
@@ -1904,9 +1904,9 @@ static void __init ppc4xx_configure_pcie
@@ -1902,9 +1902,9 @@ static void __init ppc4xx_configure_pcie
* if it works
*/
out_le32(mbase + PECFG_PIM0LAL, 0x00000000);

View File

@ -1566,7 +1566,7 @@ ar934x_nfc_remove(struct platform_device *pdev)
nfc = platform_get_drvdata(pdev);
if (nfc) {
mtd = ar934x_nfc_to_mtd(nfc);
nand_release(mtd);
nand_release(&nfc->nand_chip);
ar934x_nfc_free_buf(nfc);
free_irq(nfc->irq, nfc);
}

View File

@ -335,7 +335,7 @@ static int rb4xx_nand_probe(struct platform_device *pdev)
return 0;
err_release_nand:
nand_release(mtd);
nand_release(&info->chip);
err_set_drvdata:
platform_set_drvdata(pdev, NULL);
err_free_info:
@ -356,7 +356,7 @@ static int rb4xx_nand_remove(struct platform_device *pdev)
{
struct rb4xx_nand_info *info = platform_get_drvdata(pdev);
nand_release(rbinfo_to_mtd(info));
nand_release(&info->chip));
platform_set_drvdata(pdev, NULL);
kfree(info);
gpio_free(RB4XX_NAND_GPIO_NCE);

View File

@ -393,7 +393,7 @@ static int rb750_nand_probe(struct platform_device *pdev)
return 0;
err_release_nand:
nand_release(mtd);
nand_release(&info->chip);
err_set_drvdata:
platform_set_drvdata(pdev, NULL);
err_free_info:
@ -405,7 +405,7 @@ static int rb750_nand_remove(struct platform_device *pdev)
{
struct rb750_nand_info *info = platform_get_drvdata(pdev);
nand_release(rbinfo_to_mtd(info));
nand_release(&info->chip);
platform_set_drvdata(pdev, NULL);
kfree(info);

View File

@ -434,7 +434,7 @@ static int rb91x_nand_probe(struct platform_device *pdev)
return 0;
err_release_nand:
nand_release(mtd);
nand_release(&rbni->chip);
return ret;
}
@ -442,7 +442,7 @@ static int rb91x_nand_remove(struct platform_device *pdev)
{
struct rb91x_nand_info *info = platform_get_drvdata(pdev);
nand_release(rbinfo_to_mtd(info));
nand_release(&rbni->chip);
return 0;
}

View File

@ -276,7 +276,7 @@
case IPV6_2292HOPOPTS:
--- a/net/ipv6/ip6_gre.c
+++ b/net/ipv6/ip6_gre.c
@@ -397,7 +397,7 @@ static void ip6gre_err(struct sk_buff *s
@@ -400,7 +400,7 @@ static void ip6gre_err(struct sk_buff *s
return;
ipv6h = (const struct ipv6hdr *)skb->data;
greh = (const struct gre_base_hdr *)(skb->data + offset);
@ -850,7 +850,7 @@
*sum = csum_fold(csum_partial(diff, sizeof(diff),
--- a/drivers/net/vxlan.c
+++ b/drivers/net/vxlan.c
@@ -1868,15 +1868,15 @@ static int vxlan_build_skb(struct sk_buf
@@ -1872,15 +1872,15 @@ static int vxlan_build_skb(struct sk_buf
return err;
vxh = __skb_push(skb, sizeof(*vxh));

View File

@ -109,10 +109,6 @@
mtd-mac-address-increment = <1>;
};
&gpio {
status = "okay";
};
&uart {
status = "okay";
};

View File

@ -156,10 +156,6 @@
mtd-mac-address-increment = <1>;
};
&gpio {
status = "okay";
};
&uart {
status = "okay";
};

View File

@ -57,8 +57,6 @@
interrupt-controller;
#interrupt-cells = <2>;
status = "disabled";
};
pinmux: pinmux@18040028 {

View File

@ -56,8 +56,6 @@
};
&gpio {
status = "okay";
led_enable {
gpio-hog;
output-low;

View File

@ -67,10 +67,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&usb {
dr_mode = "host";
status = "okay";

View File

@ -55,10 +55,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&usb {
dr_mode = "host";
status = "okay";

View File

@ -54,10 +54,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&usb {
dr_mode = "host";
status = "okay";

View File

@ -73,10 +73,6 @@
compatible = "syscon", "simple-mfd";
};
&gpio {
status = "okay";
};
&spi {
status = "okay";

View File

@ -48,10 +48,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&usb {
dr_mode = "host";
status = "okay";

View File

@ -58,10 +58,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&usb {
dr_mode = "host";
status = "okay";

View File

@ -65,10 +65,6 @@
mtd-mac-address = <&uboot 0x1fc00>;
};
&gpio {
status = "okay";
};
&uart {
status = "okay";
};

View File

@ -0,0 +1,152 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
/dts-v1/;
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include "ar9331.dtsi"
/ {
compatible = "glinet,gl-mifi", "qca,ar9331";
model = "GL.iNet GL-MiFi";
aliases {
serial0 = &uart;
label-mac-device = &eth0;
};
leds {
compatible = "gpio-leds";
wlan {
label = "gl-mifi:green:wlan";
gpios = <&gpio 1 GPIO_ACTIVE_HIGH>;
linux,default-trigger = "phy0tpt";
};
lan {
label = "gl-mifi:green:lan";
gpios = <&gpio 16 GPIO_ACTIVE_HIGH>;
};
wan {
label = "gl-mifi:green:wan";
gpios = <&gpio 27 GPIO_ACTIVE_HIGH>;
};
3g4g {
label = "gl-mifi:green:3g4g";
gpios = <&gpio 0 GPIO_ACTIVE_HIGH>;
};
};
keys {
compatible = "gpio-keys";
reset {
label = "reset";
linux,code = <KEY_RESTART>;
gpios = <&gpio 11 GPIO_ACTIVE_HIGH>;
debounce-interval = <60>;
};
};
reg_usb_vbus: reg_usb_vbus {
compatible = "regulator-fixed";
regulator-name = "usb_vbus";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&gpio 6 GPIO_ACTIVE_LOW>;
};
gpio-export {
compatible = "gpio-export";
minipcie {
gpio-export,name = "minipcie";
gpio-export,output = <0>;
gpios = <&gpio 7 GPIO_ACTIVE_LOW>;
};
};
};
&uart {
status = "okay";
};
&usb {
status = "okay";
dr_mode = "host";
vbus-supply = <&reg_usb_vbus>;
};
&usb_phy {
status = "okay";
};
&spi {
status = "okay";
num-chipselects = <1>;
flash@0 {
compatible = "jedec,spi-nor";
spi-max-frequency = <33000000>;
reg = <0>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "u-boot";
reg = <0x000000 0x040000>;
read-only;
};
partition@40000 {
label = "u-boot-env";
reg = <0x040000 0x010000>;
};
partition@50000 {
compatible = "denx,uimage";
label = "firmware";
reg = <0x050000 0xfa0000>;
};
art: partition@ff0000 {
label = "art";
reg = <0xff0000 0x010000>;
read-only;
};
};
};
};
&eth0 {
status = "okay";
mtd-mac-address = <&art 0x0>;
gmac-config {
device = <&gmac>;
switch-phy-addr-swap = <0>;
switch-phy-swap = <0>;
};
};
&eth1 {
status = "okay";
mtd-mac-address = <&art 0x0>;
};
&wmac {
status = "okay";
mtd-cal-data = <&art 0x1000>;
};

View File

@ -92,10 +92,6 @@
compatible = "syscon", "simple-mfd";
};
&gpio {
status = "okay";
};
&uart {
status = "okay";
};

View File

@ -101,10 +101,6 @@
compatible = "syscon", "simple-mfd";
};
&gpio {
status = "okay";
};
&uart {
status = "okay";
};

View File

@ -91,10 +91,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&usb {
#address-cells = <1>;
#size-cells = <0>;

View File

@ -87,10 +87,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&usb {
#address-cells = <1>;
#size-cells = <0>;

View File

@ -99,10 +99,6 @@
compatible = "syscon", "simple-mfd";
};
&gpio {
status = "okay";
};
&uart {
status = "okay";
};

View File

@ -104,10 +104,6 @@
mtd-mac-address-increment = <(-1)>;
};
&gpio {
status = "okay";
};
&uart {
status = "okay";
};

View File

@ -142,10 +142,6 @@
mtd-mac-address-increment = <(-1)>;
};
&gpio {
status = "okay";
};
&uart {
status = "okay";
};

View File

@ -89,10 +89,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&spi {
num-cs = <1>;

View File

@ -134,10 +134,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&spi {
num-cs = <1>;

View File

@ -29,10 +29,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&pcie {
status = "okay";
};

View File

@ -61,10 +61,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&spi {
status = "okay";
num-cs = <1>;

View File

@ -71,8 +71,6 @@
};
&gpio {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&jtag_disable_pins>;

View File

@ -0,0 +1,153 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
/dts-v1/;
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include "ar9344.dtsi"
/ {
compatible = "compex,wpj344-16m", "qca,ar9344";
model = "Compex WPJ344 (16MB flash)";
aliases {
label-mac-device = &eth0;
led-boot = &led_status;
led-failsafe = &led_status;
led-running = &led_status;
led-upgrade = &led_status;
};
leds {
compatible = "gpio-leds";
led_status: status {
label = "wpj344:green:status";
gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
};
sig1 {
label = "wpj344:red:sig1";
gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
};
sig2 {
label = "wpj344:yellow:sig2";
gpios = <&gpio 20 GPIO_ACTIVE_LOW>;
};
sig3 {
label = "wpj344:green:sig3";
gpios = <&gpio 21 GPIO_ACTIVE_LOW>;
};
sig4 {
label = "wpj344:green:sig4";
gpios = <&gpio 22 GPIO_ACTIVE_LOW>;
};
};
keys {
compatible = "gpio-keys";
reset {
linux,code = <KEY_RESTART>;
gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
debounce-interval = <60>;
};
};
};
&ref {
clock-frequency = <40000000>;
};
&uart {
status = "okay";
};
&spi {
status = "okay";
num-cs = <1>;
flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <25000000>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
uboot: partition@0 {
label = "u-boot";
reg = <0x000000 0x030000>;
read-only;
};
partition@30000 {
label = "firmware";
reg = <0x030000 0xfc0000>;
compatible = "denx,uimage";
};
art: partition@ff0000 {
label = "art";
reg = <0xff0000 0x010000>;
read-only;
};
};
};
};
&usb {
status = "okay";
};
&usb_phy {
status = "okay";
};
&pcie {
status = "okay";
};
&wmac {
status = "okay";
mtd-cal-data = <&art 0x1000>;
};
&mdio0 {
status = "okay";
phy-mask = <0>;
phy0: ethernet-phy@0 {
reg = <0>;
phy-mode = "rgmii";
qca,ar8327-initvals = <
0x04 0x07600000 /* PORT0 PAD MODE CTRL */
0x10 0x80000080 /* POWER_ON_STRIP */
0x50 0x00000000 /* LED_CTRL0 */
0x54 0xc737c737 /* LED_CTRL1 */
0x58 0x00000000 /* LED_CTRL2 */
0x5c 0x00c30c00 /* LED_CTRL3 */
0x7c 0x0000007e /* PORT0_STATUS */
>;
};
};
&eth0 {
status = "okay";
pll-data = <0x06000000 0x00000101 0x00001616>;
mtd-mac-address = <&uboot 0x2e010>;
phy-mode = "rgmii";
phy-handle = <&phy0>;
};

View File

@ -65,8 +65,6 @@
};
&gpio {
status = "okay";
wlan_power {
gpio-hog;
line-name = "WLAN power";

View File

@ -111,10 +111,6 @@
};
};
&gpio {
status = "okay";
};
&wmac {
status = "okay";
qca,no-eeprom;

View File

@ -240,8 +240,6 @@
};
&gpio {
status = "okay";
lna0 {
gpio-hog;
line-name = "netgear:ext:lna0";

View File

@ -71,10 +71,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&spi {
status = "okay";

View File

@ -78,10 +78,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&spi {
status = "okay";

View File

@ -70,10 +70,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&spi {
status = "okay";

View File

@ -82,8 +82,6 @@
};
&gpio {
status = "okay";
gpio_ext_lna0 {
gpio-hog;
gpios = <14 0>;

View File

@ -69,8 +69,6 @@
};
&gpio {
status = "okay";
gpio_ext_lna0 {
gpio-hog;
gpios = <15 0>;

View File

@ -78,8 +78,6 @@
};
&gpio {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&jtag_disable_pins>;
};

View File

@ -148,24 +148,6 @@
};
};
nand: nand@1b000200 {
compatible = "qca,ar934x-nand";
reg = <0x1b000200 0xb8>;
interrupts = <21>;
interrupt-parent = <&miscintc>;
resets = <&rst 14>;
reset-names = "nand";
nand-ecc-mode = "hw";
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
gmac: gmac@18070000 {
compatible = "qca,ar9340-gmac";
reg = <0x18070000 0x14>;
@ -195,6 +177,24 @@
status = "disabled";
};
nand: nand@1b000200 {
compatible = "qca,ar934x-nand";
reg = <0x1b000200 0xb8>;
interrupts = <21>;
interrupt-parent = <&miscintc>;
resets = <&rst 14>;
reset-names = "nand";
nand-ecc-mode = "hw";
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
spi: spi@1f000000 {
compatible = "qca,ar934x-spi";
reg = <0x1f000000 0x1c>;

View File

@ -44,10 +44,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&spi {
status = "okay";

View File

@ -80,10 +80,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&usb_phy0 {
status = "okay";
};

View File

@ -85,10 +85,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&usb_phy0 {
status = "okay";
};

View File

@ -104,10 +104,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&spi {
status = "okay";
num-cs = <1>;

View File

@ -76,10 +76,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&usb_phy0 {
status = "okay";
};

View File

@ -72,10 +72,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&usb_phy0 {
status = "okay";
};

View File

@ -255,10 +255,6 @@
};
};
&gpio {
status = "okay";
};
&wmac {
status = "okay";

View File

@ -182,24 +182,6 @@
};
};
nand: nand@1b800200 {
compatible = "qca,ar934x-nand";
reg = <0x1b800200 0xb8>;
interrupts = <21>;
interrupt-parent = <&miscintc>;
resets = <&rst 14>;
reset-names = "nand";
nand-ecc-mode = "hw";
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
gmac: gmac@18070000 {
compatible = "qca,qca9550-gmac";
reg = <0x18070000 0x58>;
@ -301,6 +283,24 @@
status = "disabled";
};
nand: nand@1b800200 {
compatible = "qca,ar934x-nand";
reg = <0x1b800200 0xb8>;
interrupts = <21>;
interrupt-parent = <&miscintc>;
resets = <&rst 14>;
reset-names = "nand";
nand-ecc-mode = "hw";
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
spi: spi@1f000000 {
compatible = "qca,ar934x-spi";
reg = <0x1f000000 0x1c>;

View File

@ -100,10 +100,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&spi {
status = "okay";

View File

@ -121,10 +121,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&pcie {
status = "okay";
};

View File

@ -57,10 +57,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&spi {
status = "okay";
num-cs = <1>;

View File

@ -74,10 +74,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&pcie {
status = "okay";
};

View File

@ -51,10 +51,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&pcie {
status = "okay";
};

View File

@ -48,10 +48,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&spi {
status = "okay";

View File

@ -145,10 +145,6 @@
};
};
&gpio {
status = "okay";
};
&mdio0 {
status = "okay";

View File

@ -152,10 +152,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&usb_phy0 {
status = "okay";
};

View File

@ -19,10 +19,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&mdio0 {
status = "okay";

View File

@ -108,10 +108,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&usb_phy0 {
status = "okay";
};

View File

@ -112,10 +112,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&spi {
status = "okay";

View File

@ -88,10 +88,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&mdio0 {
status = "okay";

View File

@ -43,10 +43,6 @@
status = "okay";
};
&gpio {
status = "okay";
};
&pcie {
status = "okay";
};

View File

@ -31,10 +31,6 @@
phy-handle = <&phy0>;
};
&gpio {
status = "okay";
};
&mdio0 {
status = "okay";

View File

@ -1535,9 +1535,12 @@ static int ar934x_nfc_probe(struct platform_device *pdev)
goto err_free_buf;
}
#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 20, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 19, 130)
nand->dummy_controller.ops = &ar934x_nfc_controller_ops;
ret = nand_scan(mtd, 1);
#elif LINUX_VERSION_CODE < KERNEL_VERSION(4, 20, 0)
nand->dummy_controller.ops = &ar934x_nfc_controller_ops;
ret = nand_scan(nand, 1);
#else
nand->legacy.dummy_controller.ops = &ar934x_nfc_controller_ops;
ret = nand_scan(nand, 1);
@ -1569,12 +1572,7 @@ static int ar934x_nfc_remove(struct platform_device *pdev)
nfc = platform_get_drvdata(pdev);
if (nfc) {
#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 20, 0)
mtd = ar934x_nfc_to_mtd(nfc);
nand_release(mtd);
#else
nand_release(&nfc->nand_chip);
#endif
ar934x_nfc_free_buf(nfc);
}

View File

@ -232,7 +232,11 @@ static int rb4xx_nand_probe(struct platform_device *pdev)
nand->chip.dev_ready = rb4xx_nand_dev_ready;
nand->chip.chip_delay = 25;
#if LINUX_VERSION_CODE < KERNEL_VERSION(4,19,130)
ret = nand_scan(mtd, 1);
#else
ret = nand_scan(&nand->chip, 1);
#endif
#else
nand->chip.legacy.read_byte = rb4xx_nand_read_byte;
nand->chip.legacy.write_buf = rb4xx_nand_write_buf;
@ -248,11 +252,7 @@ static int rb4xx_nand_probe(struct platform_device *pdev)
ret = mtd_device_register(mtd, NULL, 0);
if (ret) {
#if LINUX_VERSION_CODE < KERNEL_VERSION(4,20,0)
nand_release(mtd);
#else
nand_release(&nand->chip);
#endif
return ret;
}
@ -263,11 +263,7 @@ static int rb4xx_nand_remove(struct platform_device *pdev)
{
struct rb4xx_nand *nand = platform_get_drvdata(pdev);
#if LINUX_VERSION_CODE < KERNEL_VERSION(4,20,0)
nand_release(nand_to_mtd(&nand->chip));
#else
nand_release(&nand->chip);
#endif
return 0;
}

View File

@ -115,6 +115,13 @@ engenius,ecb1750|\
enterasys,ws-ap3705i)
ucidef_set_led_netdev "lan" "LAN" "$boardname:blue:lan" "eth0"
;;
compex,wpj344-16m)
ucidef_set_rssimon "wlan0" "200000" "1"
ucidef_set_led_rssi "sig1" "SIG1" "wpj344:red:sig1" "wlan0" "85" "100"
ucidef_set_led_rssi "sig2" "SIG2" "wpj344:yellow:sig2" "wlan0" "75" "100"
ucidef_set_led_rssi "sig3" "SIG3" "wpj344:green:sig3" "wlan0" "65" "100"
ucidef_set_led_rssi "sig4" "SIG4" "wpj344:green:sig4" "wlan0" "50" "100"
;;
compex,wpj531-16m)
ucidef_set_rssimon "wlan0" "200000" "1"
ucidef_set_led_rssi "sig1" "SIG1" "wpj531:red:sig1" "wlan0" "85" "100"
@ -146,6 +153,10 @@ glinet,gl-ar300m-lite)
glinet,gl-ar300m16)
ucidef_set_led_netdev "lan" "LAN" "gl-ar300m:green:lan" "eth0"
;;
glinet,gl-mifi)
ucidef_set_led_switch "lan" "LAN" "$boardname:green:lan" "switch0" "0x02"
ucidef_set_led_netdev "wan" "WAN" "$boardname:green:wan" "eth1"
;;
glinet,gl-x750)
ucidef_set_led_netdev "wan" "WAN" "$boardname:green:wan" "eth1"
;;

View File

@ -131,6 +131,10 @@ ath79_setup_interfaces()
ucidef_add_switch "switch0" \
"0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth1"
;;
compex,wpj344-16m)
ucidef_add_switch "switch0" \
"0@eth0" "3:lan" "2:wan"
;;
devolo,dvl1200e|\
devolo,dvl1750e|\
ocedo,ursus)
@ -366,6 +370,9 @@ ath79_setup_macs()
lan_mac=$(fritz_tffs -n maca -i $(find_mtd_part "tffs (1)"))
wan_mac=$(fritz_tffs -n macb -i $(find_mtd_part "tffs (1)"))
;;
compex,wpj344-16m)
wan_mac=$(mtd_get_mac_binary u-boot 0x2e018)
;;
devolo,magic-2-wifi)
label_mac=$(macaddr_add "$(mtd_get_mac_binary art 0x1002)" 3)
;;

View File

@ -8,6 +8,9 @@ case "$board" in
engenius,epg5000)
migrate_leds ":wlan-2g=:wlan2g" ":wlan-5g=:wlan5g"
;;
glinet,gl-mifi)
migrate_leds ":net=:3g4g"
;;
tplink,archer-c25-v1|\
tplink,archer-c58-v1|\
tplink,archer-c59-v1|\

View File

@ -441,6 +441,19 @@ define Device/comfast_cf-wr752ac-v1
endef
TARGET_DEVICES += comfast_cf-wr752ac-v1
define Device/compex_wpj344-16m
SOC := ar9344
DEVICE_PACKAGES := kmod-usb2
IMAGE_SIZE := 16128k
DEVICE_VENDOR := Compex
DEVICE_MODEL := WPJ344
DEVICE_VARIANT := 16M
SUPPORTED_DEVICES += wpj344
IMAGES += cpximg-6a08.bin
IMAGE/cpximg-6a08.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | mkmylofw_16m 0x690 3
endef
TARGET_DEVICES += compex_wpj344-16m
define Device/compex_wpj531-16m
SOC := qca9531
DEVICE_PACKAGES := kmod-usb2
@ -808,6 +821,16 @@ define Device/glinet_gl-ar750
endef
TARGET_DEVICES += glinet_gl-ar750
define Device/glinet_gl-mifi
SOC := ar9331
DEVICE_VENDOR := GL.iNET
DEVICE_MODEL := GL-MiFi
DEVICE_PACKAGES := kmod-usb-chipidea2
IMAGE_SIZE := 16000k
SUPPORTED_DEVICES += gl-mifi
endef
TARGET_DEVICES += glinet_gl-mifi
define Device/glinet_gl-x750
SOC := qca9531
DEVICE_VENDOR := GL.iNet

View File

@ -10,7 +10,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
--- a/drivers/usb/host/ehci-platform.c
+++ b/drivers/usb/host/ehci-platform.c
@@ -161,6 +161,11 @@ static int ehci_platform_probe(struct pl
@@ -271,6 +271,11 @@ static int ehci_platform_probe(struct pl
ehci = hcd_to_ehci(hcd);
if (pdata == &ehci_platform_defaults && dev->dev.of_node) {

View File

@ -267,7 +267,7 @@
case IPV6_2292HOPOPTS:
--- a/net/ipv6/ip6_gre.c
+++ b/net/ipv6/ip6_gre.c
@@ -452,7 +452,7 @@ static void ip6gre_err(struct sk_buff *s
@@ -455,7 +455,7 @@ static void ip6gre_err(struct sk_buff *s
return;
ipv6h = (const struct ipv6hdr *)skb->data;
greh = (const struct gre_base_hdr *)(skb->data + offset);
@ -728,7 +728,7 @@
EXPORT_SYMBOL(xfrm_parse_spi);
--- a/net/ipv4/tcp_input.c
+++ b/net/ipv4/tcp_input.c
@@ -3896,14 +3896,16 @@ static bool tcp_parse_aligned_timestamp(
@@ -3906,14 +3906,16 @@ static bool tcp_parse_aligned_timestamp(
{
const __be32 *ptr = (const __be32 *)(th + 1);

View File

@ -10,7 +10,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
--- a/drivers/usb/host/ehci-platform.c
+++ b/drivers/usb/host/ehci-platform.c
@@ -159,6 +159,11 @@ static int ehci_platform_probe(struct pl
@@ -269,6 +269,11 @@ static int ehci_platform_probe(struct pl
ehci = hcd_to_ehci(hcd);
if (pdata == &ehci_platform_defaults && dev->dev.of_node) {

View File

@ -706,7 +706,7 @@
EXPORT_SYMBOL(xfrm_parse_spi);
--- a/net/ipv4/tcp_input.c
+++ b/net/ipv4/tcp_input.c
@@ -3958,14 +3958,16 @@ static bool tcp_parse_aligned_timestamp(
@@ -3968,14 +3968,16 @@ static bool tcp_parse_aligned_timestamp(
{
const __be32 *ptr = (const __be32 *)(th + 1);

View File

@ -36,7 +36,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
- reg
--- a/drivers/tty/serial/amba-pl011.c
+++ b/drivers/tty/serial/amba-pl011.c
@@ -2659,6 +2659,11 @@ static int pl011_probe(struct amba_devic
@@ -2660,6 +2660,11 @@ static int pl011_probe(struct amba_devic
if (IS_ERR(uap->clk))
return PTR_ERR(uap->clk);

View File

@ -26,7 +26,7 @@ Signed-off-by: Phil Howard <phil@pimoroni.com>
struct nvmem_config nvmem_cfg = {
.name = "rv3028_nvram",
.word_size = 1,
@@ -669,6 +671,21 @@ static int rv3028_probe(struct i2c_clien
@@ -671,6 +673,21 @@ static int rv3028_probe(struct i2c_clien
if (ret)
return ret;

View File

@ -18,7 +18,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
@@ -2151,7 +2151,7 @@ static void bcmgenet_init_tx_ring(struct
@@ -2149,7 +2149,7 @@ static void bcmgenet_init_tx_ring(struct
bcmgenet_tdma_ring_writel(priv, index, 0, TDMA_PROD_INDEX);
bcmgenet_tdma_ring_writel(priv, index, 0, TDMA_CONS_INDEX);
@ -27,7 +27,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
/* Disable rate control for now */
bcmgenet_tdma_ring_writel(priv, index, flow_period_val,
TDMA_FLOW_PERIOD);
@@ -3575,9 +3575,12 @@ static int bcmgenet_probe(struct platfor
@@ -3573,9 +3573,12 @@ static int bcmgenet_probe(struct platfor
netif_set_real_num_rx_queues(priv->dev, priv->hw_params->rx_queues + 1);
/* Set default coalescing parameters */

View File

@ -15,7 +15,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
@@ -1452,6 +1452,103 @@ command_cleanup:
@@ -1453,6 +1453,103 @@ command_cleanup:
}
/*
@ -119,7 +119,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
*/
@@ -5327,6 +5424,7 @@ static const struct hc_driver xhci_hc_dr
@@ -5334,6 +5431,7 @@ static const struct hc_driver xhci_hc_dr
.endpoint_reset = xhci_endpoint_reset,
.check_bandwidth = xhci_check_bandwidth,
.reset_bandwidth = xhci_reset_bandwidth,

View File

@ -33,7 +33,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
#define USB_VENDOR_ID_BELKIN 0x050d
#define USB_DEVICE_ID_FLIP_KVM 0x3201
@@ -1231,6 +1234,9 @@
@@ -1234,6 +1237,9 @@
#define USB_VENDOR_ID_XAT 0x2505
#define USB_DEVICE_ID_XAT_CSR 0x0220
@ -53,7 +53,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
{ HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_MULTI_TOUCH), HID_QUIRK_MULTI_INPUT },
{ HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_PIXART_USB_OPTICAL_MOUSE), HID_QUIRK_ALWAYS_POLL },
{ HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_PIXART_USB_OPTICAL_MOUSE2), HID_QUIRK_ALWAYS_POLL },
@@ -177,6 +178,7 @@ static const struct hid_device_id hid_qu
@@ -178,6 +179,7 @@ static const struct hid_device_id hid_qu
{ HID_USB_DEVICE(USB_VENDOR_ID_WISEGROUP_LTD2, USB_DEVICE_ID_SMARTJOY_DUAL_PLUS), HID_QUIRK_NOGET | HID_QUIRK_MULTI_INPUT },
{ HID_USB_DEVICE(USB_VENDOR_ID_WISEGROUP, USB_DEVICE_ID_QUAD_USB_JOYPAD), HID_QUIRK_NOGET | HID_QUIRK_MULTI_INPUT },
{ HID_USB_DEVICE(USB_VENDOR_ID_XIN_MO, USB_DEVICE_ID_XIN_MO_DUAL_ARCADE), HID_QUIRK_MULTI_INPUT },

View File

@ -38,7 +38,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
static inline void bcmgenet_writel(u32 value, void __iomem *offset)
{
/* MIPS chips strapped for BE will automagically configure the
@@ -1997,6 +2001,11 @@ static void reset_umac(struct bcmgenet_p
@@ -1995,6 +1999,11 @@ static void reset_umac(struct bcmgenet_p
bcmgenet_rbuf_ctrl_set(priv, 0);
udelay(10);

View File

@ -13,7 +13,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
@@ -3476,7 +3476,7 @@ static int bcmgenet_probe(struct platfor
@@ -3474,7 +3474,7 @@ static int bcmgenet_probe(struct platfor
priv = netdev_priv(dev);
priv->irq0 = platform_get_irq(pdev, 0);
priv->irq1 = platform_get_irq(pdev, 1);

View File

@ -65,7 +65,7 @@ Cc: linux-rockchip@lists.infradead.org
--- a/drivers/pci/controller/dwc/pcie-designware-host.c
+++ b/drivers/pci/controller/dwc/pcie-designware-host.c
@@ -343,12 +343,8 @@ int dw_pcie_host_init(struct pcie_port *
@@ -345,12 +345,8 @@ int dw_pcie_host_init(struct pcie_port *
if (!bridge)
return -ENOMEM;
@ -82,7 +82,7 @@ Cc: linux-rockchip@lists.infradead.org
--- a/drivers/pci/controller/pci-aardvark.c
+++ b/drivers/pci/controller/pci-aardvark.c
@@ -1023,7 +1023,8 @@ static int advk_pcie_probe(struct platfo
@@ -1019,7 +1019,8 @@ static int advk_pcie_probe(struct platfo
return ret;
}
@ -224,7 +224,7 @@ Cc: linux-rockchip@lists.infradead.org
return ret;
--- a/drivers/pci/controller/pcie-rcar.c
+++ b/drivers/pci/controller/pcie-rcar.c
@@ -1143,7 +1143,8 @@ static int rcar_pcie_probe(struct platfo
@@ -1144,7 +1144,8 @@ static int rcar_pcie_probe(struct platfo
pcie->dev = dev;
platform_set_drvdata(pdev, pcie);

View File

@ -1,6 +1,6 @@
--- a/arch/mips/bcm47xx/board.c
+++ b/arch/mips/bcm47xx/board.c
@@ -160,6 +160,7 @@ struct bcm47xx_board_type_list1 bcm47xx_board_list_board_id[] __initconst = {
@@ -160,6 +160,7 @@ struct bcm47xx_board_type_list1 bcm47xx_
{{BCM47XX_BOARD_LUXUL_XVW_P30_V1, "Luxul XVW-P30 V1"}, "luxul_xvwp30_v1"},
{{BCM47XX_BOARD_LUXUL_XWR_600_V1, "Luxul XWR-600 V1"}, "luxul_xwr600_v1"},
{{BCM47XX_BOARD_LUXUL_XWR_1750_V1, "Luxul XWR-1750 V1"}, "luxul_xwr1750_v1"},
@ -10,24 +10,24 @@
{{BCM47XX_BOARD_NETGEAR_WGR614_V10, "Netgear WGR614 V10"}, "U12H139T01_NETGEAR"},
--- a/arch/mips/bcm47xx/buttons.c
+++ b/arch/mips/bcm47xx/buttons.c
@@ -384,6 +384,13 @@ bcm47xx_buttons_motorola_wr850gv2v3[] __initconst = {
@@ -385,6 +385,13 @@ bcm47xx_buttons_motorola_wr850gv2v3[] __
/* Netgear */
+static const struct gpio_keys_button
static const struct gpio_keys_button
+bcm47xx_buttons_netgear_r6200_v1[] __initconst = {
+ BCM47XX_GPIO_KEY(2, KEY_RFKILL),
+ BCM47XX_GPIO_KEY(3, KEY_RESTART),
+ BCM47XX_GPIO_KEY(4, KEY_WPS_BUTTON),
+};
+
static const struct gpio_keys_button
+static const struct gpio_keys_button
bcm47xx_buttons_netgear_wndr3400v1[] __initconst = {
BCM47XX_GPIO_KEY(4, KEY_RESTART),
@@ -664,6 +671,9 @@ int __init bcm47xx_buttons_register(void)
BCM47XX_GPIO_KEY(6, KEY_WPS_BUTTON),
@@ -664,6 +671,9 @@ int __init bcm47xx_buttons_register(void
err = bcm47xx_copy_bdata(bcm47xx_buttons_motorola_wr850gv2v3);
break;
+ case BCM47XX_BOARD_NETGEAR_R6200_V1:
+ err = bcm47xx_copy_bdata(bcm47xx_buttons_netgear_r6200_v1);
+ break;
@ -39,7 +39,7 @@
@@ -98,6 +98,7 @@ enum bcm47xx_board {
BCM47XX_BOARD_MOTOROLA_WR850GP,
BCM47XX_BOARD_MOTOROLA_WR850GV2V3,
+ BCM47XX_BOARD_NETGEAR_R6200_V1,
BCM47XX_BOARD_NETGEAR_WGR614V8,
BCM47XX_BOARD_NETGEAR_WGR614V9,

Some files were not shown because too many files have changed in this diff Show More