mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-30 02:29:01 +00:00
kernel: bump 5.4 to 5.4.99
Ran update_kernel.sh in a fresh clone without any existing toolchains.
No manual changes needed.
Build system: x86_64
Build-tested: bcm27xx/bcm2711
Signed-off-by: John Audia <graysky@archlinux.us>
(cherry-picked from commit 5d3a6fd970
)
This commit is contained in:
parent
cbe4beb442
commit
76d1168d0d
@ -6,9 +6,9 @@ ifdef CONFIG_TESTING_KERNEL
|
|||||||
KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
|
KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
LINUX_VERSION-5.4 = .98
|
LINUX_VERSION-5.4 = .99
|
||||||
|
|
||||||
LINUX_KERNEL_HASH-5.4.98 = 83a248d6fbe388f133769d736f36b754767abc9d66f1c034b537ad778fbd46b1
|
LINUX_KERNEL_HASH-5.4.99 = 5bdad12c69253d30d836dd51e0b2a9a04a6749cc6b4b2412561a1efcb1351a27
|
||||||
|
|
||||||
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
|
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
|
||||||
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
|
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
|
||||||
|
@ -17,7 +17,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
|
|
||||||
--- a/kernel/cgroup/cgroup.c
|
--- a/kernel/cgroup/cgroup.c
|
||||||
+++ b/kernel/cgroup/cgroup.c
|
+++ b/kernel/cgroup/cgroup.c
|
||||||
@@ -5720,6 +5720,8 @@ int __init cgroup_init_early(void)
|
@@ -5722,6 +5722,8 @@ int __init cgroup_init_early(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
static u16 cgroup_disable_mask __initdata;
|
static u16 cgroup_disable_mask __initdata;
|
||||||
@ -26,7 +26,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* cgroup_init - cgroup initialization
|
* cgroup_init - cgroup initialization
|
||||||
@@ -5759,6 +5761,12 @@ int __init cgroup_init(void)
|
@@ -5761,6 +5763,12 @@ int __init cgroup_init(void)
|
||||||
|
|
||||||
mutex_unlock(&cgroup_mutex);
|
mutex_unlock(&cgroup_mutex);
|
||||||
|
|
||||||
@ -39,7 +39,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
for_each_subsys(ss, ssid) {
|
for_each_subsys(ss, ssid) {
|
||||||
if (ss->early_init) {
|
if (ss->early_init) {
|
||||||
struct cgroup_subsys_state *css =
|
struct cgroup_subsys_state *css =
|
||||||
@@ -6178,6 +6186,28 @@ static int __init cgroup_disable(char *s
|
@@ -6180,6 +6188,28 @@ static int __init cgroup_disable(char *s
|
||||||
}
|
}
|
||||||
__setup("cgroup_disable=", cgroup_disable);
|
__setup("cgroup_disable=", cgroup_disable);
|
||||||
|
|
||||||
|
@ -18,7 +18,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
|||||||
|
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_plane.c
|
--- a/drivers/gpu/drm/vc4/vc4_plane.c
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_plane.c
|
+++ b/drivers/gpu/drm/vc4/vc4_plane.c
|
||||||
@@ -577,6 +577,53 @@ static int vc4_plane_allocate_lbm(struct
|
@@ -585,6 +585,53 @@ static int vc4_plane_allocate_lbm(struct
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -72,7 +72,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
|||||||
/* Writes out a full display list for an active plane to the plane's
|
/* Writes out a full display list for an active plane to the plane's
|
||||||
* private dlist state.
|
* private dlist state.
|
||||||
*/
|
*/
|
||||||
@@ -856,9 +903,20 @@ static int vc4_plane_mode_set(struct drm
|
@@ -864,9 +911,20 @@ static int vc4_plane_mode_set(struct drm
|
||||||
|
|
||||||
/* Colorspace conversion words */
|
/* Colorspace conversion words */
|
||||||
if (vc4_state->is_yuv) {
|
if (vc4_state->is_yuv) {
|
||||||
@ -96,7 +96,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
|||||||
}
|
}
|
||||||
|
|
||||||
vc4_state->lbm_offset = 0;
|
vc4_state->lbm_offset = 0;
|
||||||
@@ -1265,5 +1323,13 @@ struct drm_plane *vc4_plane_init(struct
|
@@ -1275,5 +1333,13 @@ struct drm_plane *vc4_plane_init(struct
|
||||||
DRM_MODE_REFLECT_X |
|
DRM_MODE_REFLECT_X |
|
||||||
DRM_MODE_REFLECT_Y);
|
DRM_MODE_REFLECT_Y);
|
||||||
|
|
||||||
|
@ -95,7 +95,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
|
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_plane.c
|
--- a/drivers/gpu/drm/vc4/vc4_plane.c
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_plane.c
|
+++ b/drivers/gpu/drm/vc4/vc4_plane.c
|
||||||
@@ -492,6 +492,11 @@ static void vc4_plane_calc_load(struct d
|
@@ -500,6 +500,11 @@ static void vc4_plane_calc_load(struct d
|
||||||
struct vc4_plane_state *vc4_state;
|
struct vc4_plane_state *vc4_state;
|
||||||
struct drm_crtc_state *crtc_state;
|
struct drm_crtc_state *crtc_state;
|
||||||
unsigned int vscale_factor;
|
unsigned int vscale_factor;
|
||||||
|
@ -186,7 +186,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
.pixel_order = HVS_PIXEL_ORDER_XBGR,
|
.pixel_order = HVS_PIXEL_ORDER_XBGR,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -828,35 +843,6 @@ static int vc4_plane_mode_set(struct drm
|
@@ -836,35 +851,6 @@ static int vc4_plane_mode_set(struct drm
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -222,7 +222,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
/* Don't waste cycles mixing with plane alpha if the set alpha
|
/* Don't waste cycles mixing with plane alpha if the set alpha
|
||||||
* is opaque or there is no per-pixel alpha information.
|
* is opaque or there is no per-pixel alpha information.
|
||||||
* In any case we use the alpha property value as the fixed alpha.
|
* In any case we use the alpha property value as the fixed alpha.
|
||||||
@@ -864,20 +850,120 @@ static int vc4_plane_mode_set(struct drm
|
@@ -872,20 +858,120 @@ static int vc4_plane_mode_set(struct drm
|
||||||
mix_plane_alpha = state->alpha != DRM_BLEND_ALPHA_OPAQUE &&
|
mix_plane_alpha = state->alpha != DRM_BLEND_ALPHA_OPAQUE &&
|
||||||
fb->format->has_alpha;
|
fb->format->has_alpha;
|
||||||
|
|
||||||
@ -356,7 +356,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
|
|
||||||
|
|
||||||
/* Pointer Word 0/1/2: RGB / Y / Cb / Cr Pointers
|
/* Pointer Word 0/1/2: RGB / Y / Cb / Cr Pointers
|
||||||
@@ -1266,6 +1352,10 @@ static bool vc4_format_mod_supported(str
|
@@ -1276,6 +1362,10 @@ static bool vc4_format_mod_supported(str
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -32,7 +32,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
return VC4_SCALING_NONE;
|
return VC4_SCALING_NONE;
|
||||||
if (3 * dst >= 2 * src)
|
if (3 * dst >= 2 * src)
|
||||||
return VC4_SCALING_PPF;
|
return VC4_SCALING_PPF;
|
||||||
@@ -369,9 +370,11 @@ static int vc4_plane_setup_clipping_and_
|
@@ -377,9 +378,11 @@ static int vc4_plane_setup_clipping_and_
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
vc4_state->x_scaling[0] = vc4_get_scaling_mode(vc4_state->src_w[0],
|
vc4_state->x_scaling[0] = vc4_get_scaling_mode(vc4_state->src_w[0],
|
||||||
@ -46,7 +46,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
|
|
||||||
vc4_state->is_unity = (vc4_state->x_scaling[0] == VC4_SCALING_NONE &&
|
vc4_state->is_unity = (vc4_state->x_scaling[0] == VC4_SCALING_NONE &&
|
||||||
vc4_state->y_scaling[0] == VC4_SCALING_NONE);
|
vc4_state->y_scaling[0] == VC4_SCALING_NONE);
|
||||||
@@ -384,10 +387,12 @@ static int vc4_plane_setup_clipping_and_
|
@@ -392,10 +395,12 @@ static int vc4_plane_setup_clipping_and_
|
||||||
|
|
||||||
vc4_state->x_scaling[1] =
|
vc4_state->x_scaling[1] =
|
||||||
vc4_get_scaling_mode(vc4_state->src_w[1],
|
vc4_get_scaling_mode(vc4_state->src_w[1],
|
||||||
@ -61,7 +61,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
|
|
||||||
/* YUV conversion requires that horizontal scaling be enabled
|
/* YUV conversion requires that horizontal scaling be enabled
|
||||||
* on the UV plane even if vc4_get_scaling_mode() returned
|
* on the UV plane even if vc4_get_scaling_mode() returned
|
||||||
@@ -437,10 +442,7 @@ static void vc4_write_ppf(struct vc4_pla
|
@@ -445,10 +450,7 @@ static void vc4_write_ppf(struct vc4_pla
|
||||||
static u32 vc4_lbm_size(struct drm_plane_state *state)
|
static u32 vc4_lbm_size(struct drm_plane_state *state)
|
||||||
{
|
{
|
||||||
struct vc4_plane_state *vc4_state = to_vc4_plane_state(state);
|
struct vc4_plane_state *vc4_state = to_vc4_plane_state(state);
|
||||||
@ -73,7 +73,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
u32 lbm;
|
u32 lbm;
|
||||||
|
|
||||||
/* LBM is not needed when there's no vertical scaling. */
|
/* LBM is not needed when there's no vertical scaling. */
|
||||||
@@ -448,6 +450,11 @@ static u32 vc4_lbm_size(struct drm_plane
|
@@ -456,6 +458,11 @@ static u32 vc4_lbm_size(struct drm_plane
|
||||||
vc4_state->y_scaling[1] == VC4_SCALING_NONE)
|
vc4_state->y_scaling[1] == VC4_SCALING_NONE)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
@ -85,7 +85,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
if (!vc4_state->is_yuv) {
|
if (!vc4_state->is_yuv) {
|
||||||
if (vc4_state->y_scaling[0] == VC4_SCALING_TPZ)
|
if (vc4_state->y_scaling[0] == VC4_SCALING_TPZ)
|
||||||
lbm = pix_per_line * 8;
|
lbm = pix_per_line * 8;
|
||||||
@@ -583,7 +590,9 @@ static int vc4_plane_allocate_lbm(struct
|
@@ -591,7 +598,9 @@ static int vc4_plane_allocate_lbm(struct
|
||||||
spin_lock_irqsave(&vc4->hvs->mm_lock, irqflags);
|
spin_lock_irqsave(&vc4->hvs->mm_lock, irqflags);
|
||||||
ret = drm_mm_insert_node_generic(&vc4->hvs->lbm_mm,
|
ret = drm_mm_insert_node_generic(&vc4->hvs->lbm_mm,
|
||||||
&vc4_state->lbm,
|
&vc4_state->lbm,
|
||||||
|
@ -81,7 +81,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
void vc4_plane_async_set_fb(struct drm_plane *plane,
|
void vc4_plane_async_set_fb(struct drm_plane *plane,
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_plane.c
|
--- a/drivers/gpu/drm/vc4/vc4_plane.c
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_plane.c
|
+++ b/drivers/gpu/drm/vc4/vc4_plane.c
|
||||||
@@ -1437,3 +1437,41 @@ struct drm_plane *vc4_plane_init(struct
|
@@ -1447,3 +1447,41 @@ struct drm_plane *vc4_plane_init(struct
|
||||||
|
|
||||||
return plane;
|
return plane;
|
||||||
}
|
}
|
||||||
|
@ -55,7 +55,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
void vc4_plane_async_set_fb(struct drm_plane *plane,
|
void vc4_plane_async_set_fb(struct drm_plane *plane,
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_plane.c
|
--- a/drivers/gpu/drm/vc4/vc4_plane.c
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_plane.c
|
+++ b/drivers/gpu/drm/vc4/vc4_plane.c
|
||||||
@@ -1438,39 +1438,41 @@ struct drm_plane *vc4_plane_init(struct
|
@@ -1448,39 +1448,41 @@ struct drm_plane *vc4_plane_init(struct
|
||||||
return plane;
|
return plane;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -23,7 +23,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
|
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_plane.c
|
--- a/drivers/gpu/drm/vc4/vc4_plane.c
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_plane.c
|
+++ b/drivers/gpu/drm/vc4/vc4_plane.c
|
||||||
@@ -1444,26 +1444,27 @@ int vc4_plane_create_additional_planes(s
|
@@ -1454,26 +1454,27 @@ int vc4_plane_create_additional_planes(s
|
||||||
struct drm_crtc *crtc;
|
struct drm_crtc *crtc;
|
||||||
unsigned int i;
|
unsigned int i;
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
|
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_plane.c
|
--- a/drivers/gpu/drm/vc4/vc4_plane.c
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_plane.c
|
+++ b/drivers/gpu/drm/vc4/vc4_plane.c
|
||||||
@@ -1453,7 +1453,7 @@ int vc4_plane_create_additional_planes(s
|
@@ -1463,7 +1463,7 @@ int vc4_plane_create_additional_planes(s
|
||||||
* modest number of planes to expose, that should hopefully
|
* modest number of planes to expose, that should hopefully
|
||||||
* still cover any sane usecase.
|
* still cover any sane usecase.
|
||||||
*/
|
*/
|
||||||
|
@ -38,7 +38,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
};
|
};
|
||||||
|
|
||||||
static const struct hvs_format *vc4_get_hvs_format(u32 drm_format)
|
static const struct hvs_format *vc4_get_hvs_format(u32 drm_format)
|
||||||
@@ -801,27 +808,33 @@ static int vc4_plane_mode_set(struct drm
|
@@ -809,27 +816,33 @@ static int vc4_plane_mode_set(struct drm
|
||||||
uint32_t param = fourcc_mod_broadcom_param(fb->modifier);
|
uint32_t param = fourcc_mod_broadcom_param(fb->modifier);
|
||||||
u32 tile_w, tile, x_off, pix_per_tile;
|
u32 tile_w, tile, x_off, pix_per_tile;
|
||||||
|
|
||||||
@ -90,7 +90,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -831,6 +844,13 @@ static int vc4_plane_mode_set(struct drm
|
@@ -839,6 +852,13 @@ static int vc4_plane_mode_set(struct drm
|
||||||
|
|
||||||
/* Adjust the base pointer to the first pixel to be scanned
|
/* Adjust the base pointer to the first pixel to be scanned
|
||||||
* out.
|
* out.
|
||||||
@ -104,7 +104,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
*/
|
*/
|
||||||
for (i = 0; i < num_planes; i++) {
|
for (i = 0; i < num_planes; i++) {
|
||||||
vc4_state->offsets[i] += param * tile_w * tile;
|
vc4_state->offsets[i] += param * tile_w * tile;
|
||||||
@@ -943,8 +963,8 @@ static int vc4_plane_mode_set(struct drm
|
@@ -951,8 +971,8 @@ static int vc4_plane_mode_set(struct drm
|
||||||
vc4_dlist_write(vc4_state,
|
vc4_dlist_write(vc4_state,
|
||||||
VC4_SET_FIELD(state->alpha >> 4,
|
VC4_SET_FIELD(state->alpha >> 4,
|
||||||
SCALER5_CTL2_ALPHA) |
|
SCALER5_CTL2_ALPHA) |
|
||||||
@ -115,7 +115,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
(mix_plane_alpha ?
|
(mix_plane_alpha ?
|
||||||
SCALER5_CTL2_ALPHA_MIX : 0) |
|
SCALER5_CTL2_ALPHA_MIX : 0) |
|
||||||
VC4_SET_FIELD(fb->format->has_alpha ?
|
VC4_SET_FIELD(fb->format->has_alpha ?
|
||||||
@@ -992,7 +1012,8 @@ static int vc4_plane_mode_set(struct drm
|
@@ -1000,7 +1020,8 @@ static int vc4_plane_mode_set(struct drm
|
||||||
|
|
||||||
/* Pitch word 1/2 */
|
/* Pitch word 1/2 */
|
||||||
for (i = 1; i < num_planes; i++) {
|
for (i = 1; i < num_planes; i++) {
|
||||||
@ -125,7 +125,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
vc4_dlist_write(vc4_state,
|
vc4_dlist_write(vc4_state,
|
||||||
VC4_SET_FIELD(fb->pitches[i],
|
VC4_SET_FIELD(fb->pitches[i],
|
||||||
SCALER_SRC_PITCH));
|
SCALER_SRC_PITCH));
|
||||||
@@ -1361,6 +1382,13 @@ static bool vc4_format_mod_supported(str
|
@@ -1371,6 +1392,13 @@ static bool vc4_format_mod_supported(str
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -139,7 +139,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
case DRM_FORMAT_RGBX1010102:
|
case DRM_FORMAT_RGBX1010102:
|
||||||
case DRM_FORMAT_BGRX1010102:
|
case DRM_FORMAT_BGRX1010102:
|
||||||
case DRM_FORMAT_RGBA1010102:
|
case DRM_FORMAT_RGBA1010102:
|
||||||
@@ -1393,8 +1421,11 @@ struct drm_plane *vc4_plane_init(struct
|
@@ -1403,8 +1431,11 @@ struct drm_plane *vc4_plane_init(struct
|
||||||
struct drm_plane *plane = NULL;
|
struct drm_plane *plane = NULL;
|
||||||
struct vc4_plane *vc4_plane;
|
struct vc4_plane *vc4_plane;
|
||||||
u32 formats[ARRAY_SIZE(hvs_formats)];
|
u32 formats[ARRAY_SIZE(hvs_formats)];
|
||||||
@ -151,7 +151,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
static const uint64_t modifiers[] = {
|
static const uint64_t modifiers[] = {
|
||||||
DRM_FORMAT_MOD_BROADCOM_VC4_T_TILED,
|
DRM_FORMAT_MOD_BROADCOM_VC4_T_TILED,
|
||||||
DRM_FORMAT_MOD_BROADCOM_SAND128,
|
DRM_FORMAT_MOD_BROADCOM_SAND128,
|
||||||
@@ -1409,13 +1440,17 @@ struct drm_plane *vc4_plane_init(struct
|
@@ -1419,13 +1450,17 @@ struct drm_plane *vc4_plane_init(struct
|
||||||
if (!vc4_plane)
|
if (!vc4_plane)
|
||||||
return ERR_PTR(-ENOMEM);
|
return ERR_PTR(-ENOMEM);
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
|
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_plane.c
|
--- a/drivers/gpu/drm/vc4/vc4_plane.c
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_plane.c
|
+++ b/drivers/gpu/drm/vc4/vc4_plane.c
|
||||||
@@ -1441,7 +1441,7 @@ struct drm_plane *vc4_plane_init(struct
|
@@ -1451,7 +1451,7 @@ struct drm_plane *vc4_plane_init(struct
|
||||||
return ERR_PTR(-ENOMEM);
|
return ERR_PTR(-ENOMEM);
|
||||||
|
|
||||||
for (i = 0; i < ARRAY_SIZE(hvs_formats); i++) {
|
for (i = 0; i < ARRAY_SIZE(hvs_formats); i++) {
|
||||||
|
@ -21,7 +21,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
--- a/net/netfilter/nf_conntrack_core.c
|
--- a/net/netfilter/nf_conntrack_core.c
|
||||||
+++ b/net/netfilter/nf_conntrack_core.c
|
+++ b/net/netfilter/nf_conntrack_core.c
|
||||||
@@ -1206,18 +1206,6 @@ static bool gc_worker_can_early_drop(con
|
@@ -1207,18 +1207,6 @@ static bool gc_worker_can_early_drop(con
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -40,7 +40,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
static void gc_worker(struct work_struct *work)
|
static void gc_worker(struct work_struct *work)
|
||||||
{
|
{
|
||||||
unsigned int min_interval = max(HZ / GC_MAX_BUCKETS_DIV, 1u);
|
unsigned int min_interval = max(HZ / GC_MAX_BUCKETS_DIV, 1u);
|
||||||
@@ -1254,10 +1242,8 @@ static void gc_worker(struct work_struct
|
@@ -1255,10 +1243,8 @@ static void gc_worker(struct work_struct
|
||||||
tmp = nf_ct_tuplehash_to_ctrack(h);
|
tmp = nf_ct_tuplehash_to_ctrack(h);
|
||||||
|
|
||||||
scanned++;
|
scanned++;
|
||||||
|
@ -66,7 +66,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
|
|
||||||
--- a/net/core/dev.c
|
--- a/net/core/dev.c
|
||||||
+++ b/net/core/dev.c
|
+++ b/net/core/dev.c
|
||||||
@@ -5403,8 +5403,7 @@ static void skb_gro_reset_offset(struct
|
@@ -5404,8 +5404,7 @@ static void skb_gro_reset_offset(struct
|
||||||
NAPI_GRO_CB(skb)->frag0 = NULL;
|
NAPI_GRO_CB(skb)->frag0 = NULL;
|
||||||
NAPI_GRO_CB(skb)->frag0_len = 0;
|
NAPI_GRO_CB(skb)->frag0_len = 0;
|
||||||
|
|
||||||
|
@ -56,7 +56,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
} \
|
} \
|
||||||
\
|
\
|
||||||
/* __*init sections */ \
|
/* __*init sections */ \
|
||||||
@@ -888,6 +898,8 @@
|
@@ -898,6 +908,8 @@
|
||||||
EXIT_TEXT \
|
EXIT_TEXT \
|
||||||
EXIT_DATA \
|
EXIT_DATA \
|
||||||
EXIT_CALL \
|
EXIT_CALL \
|
||||||
|
@ -32,7 +32,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
__u16 tc_index; /* traffic control index */
|
__u16 tc_index; /* traffic control index */
|
||||||
--- a/net/core/dev.c
|
--- a/net/core/dev.c
|
||||||
+++ b/net/core/dev.c
|
+++ b/net/core/dev.c
|
||||||
@@ -5468,6 +5468,9 @@ static enum gro_result dev_gro_receive(s
|
@@ -5469,6 +5469,9 @@ static enum gro_result dev_gro_receive(s
|
||||||
int same_flow;
|
int same_flow;
|
||||||
int grow;
|
int grow;
|
||||||
|
|
||||||
@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
if (netif_elide_gro(skb->dev))
|
if (netif_elide_gro(skb->dev))
|
||||||
goto normal;
|
goto normal;
|
||||||
|
|
||||||
@@ -7263,6 +7266,48 @@ static void __netdev_adjacent_dev_unlink
|
@@ -7264,6 +7267,48 @@ static void __netdev_adjacent_dev_unlink
|
||||||
&upper_dev->adj_list.lower);
|
&upper_dev->adj_list.lower);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
static int __netdev_upper_dev_link(struct net_device *dev,
|
static int __netdev_upper_dev_link(struct net_device *dev,
|
||||||
struct net_device *upper_dev, bool master,
|
struct net_device *upper_dev, bool master,
|
||||||
void *upper_priv, void *upper_info,
|
void *upper_priv, void *upper_info,
|
||||||
@@ -7313,6 +7358,7 @@ static int __netdev_upper_dev_link(struc
|
@@ -7314,6 +7359,7 @@ static int __netdev_upper_dev_link(struc
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
@ -99,7 +99,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
|
ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
|
||||||
&changeupper_info.info);
|
&changeupper_info.info);
|
||||||
ret = notifier_to_errno(ret);
|
ret = notifier_to_errno(ret);
|
||||||
@@ -7406,6 +7452,7 @@ void netdev_upper_dev_unlink(struct net_
|
@@ -7407,6 +7453,7 @@ void netdev_upper_dev_unlink(struct net_
|
||||||
|
|
||||||
__netdev_adjacent_dev_unlink_neighbour(dev, upper_dev);
|
__netdev_adjacent_dev_unlink_neighbour(dev, upper_dev);
|
||||||
|
|
||||||
@ -107,7 +107,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
|
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
|
||||||
&changeupper_info.info);
|
&changeupper_info.info);
|
||||||
|
|
||||||
@@ -8136,6 +8183,7 @@ int dev_set_mac_address(struct net_devic
|
@@ -8137,6 +8184,7 @@ int dev_set_mac_address(struct net_devic
|
||||||
if (err)
|
if (err)
|
||||||
return err;
|
return err;
|
||||||
dev->addr_assign_type = NET_ADDR_SET;
|
dev->addr_assign_type = NET_ADDR_SET;
|
||||||
|
@ -87,7 +87,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
static int netif_rx_internal(struct sk_buff *skb);
|
static int netif_rx_internal(struct sk_buff *skb);
|
||||||
static int call_netdevice_notifiers_info(unsigned long val,
|
static int call_netdevice_notifiers_info(unsigned long val,
|
||||||
@@ -5910,6 +5911,11 @@ void __napi_schedule(struct napi_struct
|
@@ -5911,6 +5912,11 @@ void __napi_schedule(struct napi_struct
|
||||||
{
|
{
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
|
|
||||||
@ -99,7 +99,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
local_irq_save(flags);
|
local_irq_save(flags);
|
||||||
____napi_schedule(this_cpu_ptr(&softnet_data), n);
|
____napi_schedule(this_cpu_ptr(&softnet_data), n);
|
||||||
local_irq_restore(flags);
|
local_irq_restore(flags);
|
||||||
@@ -5957,6 +5963,11 @@ EXPORT_SYMBOL(napi_schedule_prep);
|
@@ -5958,6 +5964,11 @@ EXPORT_SYMBOL(napi_schedule_prep);
|
||||||
*/
|
*/
|
||||||
void __napi_schedule_irqoff(struct napi_struct *n)
|
void __napi_schedule_irqoff(struct napi_struct *n)
|
||||||
{
|
{
|
||||||
@ -111,7 +111,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
____napi_schedule(this_cpu_ptr(&softnet_data), n);
|
____napi_schedule(this_cpu_ptr(&softnet_data), n);
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(__napi_schedule_irqoff);
|
EXPORT_SYMBOL(__napi_schedule_irqoff);
|
||||||
@@ -6218,6 +6229,84 @@ static void init_gro_hash(struct napi_st
|
@@ -6219,6 +6230,84 @@ static void init_gro_hash(struct napi_st
|
||||||
napi->gro_bitmask = 0;
|
napi->gro_bitmask = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -196,7 +196,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
void netif_napi_add(struct net_device *dev, struct napi_struct *napi,
|
void netif_napi_add(struct net_device *dev, struct napi_struct *napi,
|
||||||
int (*poll)(struct napi_struct *, int), int weight)
|
int (*poll)(struct napi_struct *, int), int weight)
|
||||||
{
|
{
|
||||||
@@ -6237,6 +6326,7 @@ void netif_napi_add(struct net_device *d
|
@@ -6238,6 +6327,7 @@ void netif_napi_add(struct net_device *d
|
||||||
#ifdef CONFIG_NETPOLL
|
#ifdef CONFIG_NETPOLL
|
||||||
napi->poll_owner = -1;
|
napi->poll_owner = -1;
|
||||||
#endif
|
#endif
|
||||||
@ -204,7 +204,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
set_bit(NAPI_STATE_SCHED, &napi->state);
|
set_bit(NAPI_STATE_SCHED, &napi->state);
|
||||||
set_bit(NAPI_STATE_NPSVC, &napi->state);
|
set_bit(NAPI_STATE_NPSVC, &napi->state);
|
||||||
list_add_rcu(&napi->dev_list, &dev->napi_list);
|
list_add_rcu(&napi->dev_list, &dev->napi_list);
|
||||||
@@ -6277,6 +6367,7 @@ static void flush_gro_hash(struct napi_s
|
@@ -6278,6 +6368,7 @@ static void flush_gro_hash(struct napi_s
|
||||||
void netif_napi_del(struct napi_struct *napi)
|
void netif_napi_del(struct napi_struct *napi)
|
||||||
{
|
{
|
||||||
might_sleep();
|
might_sleep();
|
||||||
@ -212,7 +212,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
if (napi_hash_del(napi))
|
if (napi_hash_del(napi))
|
||||||
synchronize_net();
|
synchronize_net();
|
||||||
list_del_init(&napi->dev_list);
|
list_del_init(&napi->dev_list);
|
||||||
@@ -6289,50 +6380,18 @@ EXPORT_SYMBOL(netif_napi_del);
|
@@ -6290,50 +6381,18 @@ EXPORT_SYMBOL(netif_napi_del);
|
||||||
|
|
||||||
static int napi_poll(struct napi_struct *n, struct list_head *repoll)
|
static int napi_poll(struct napi_struct *n, struct list_head *repoll)
|
||||||
{
|
{
|
||||||
@ -267,7 +267,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
/* Some drivers may have called napi_schedule
|
/* Some drivers may have called napi_schedule
|
||||||
* prior to exhausting their budget.
|
* prior to exhausting their budget.
|
||||||
@@ -10270,6 +10329,10 @@ static int __init net_dev_init(void)
|
@@ -10271,6 +10330,10 @@ static int __init net_dev_init(void)
|
||||||
sd->backlog.weight = weight_p;
|
sd->backlog.weight = weight_p;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -87,7 +87,7 @@ Signed-off-by: Li Yang <leoyang.li@nxp.com>
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -3871,6 +3887,7 @@ static int cgroup_add_file(struct cgroup
|
@@ -3873,6 +3889,7 @@ static int cgroup_add_file(struct cgroup
|
||||||
{
|
{
|
||||||
char name[CGROUP_FILE_NAME_MAX];
|
char name[CGROUP_FILE_NAME_MAX];
|
||||||
struct kernfs_node *kn;
|
struct kernfs_node *kn;
|
||||||
@ -95,7 +95,7 @@ Signed-off-by: Li Yang <leoyang.li@nxp.com>
|
|||||||
struct lock_class_key *key = NULL;
|
struct lock_class_key *key = NULL;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
@@ -3901,6 +3918,14 @@ static int cgroup_add_file(struct cgroup
|
@@ -3903,6 +3920,14 @@ static int cgroup_add_file(struct cgroup
|
||||||
spin_unlock_irq(&cgroup_file_kn_lock);
|
spin_unlock_irq(&cgroup_file_kn_lock);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -89,7 +89,7 @@ Signed-off-by: Li Yang <leoyang.li@nxp.com>
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -3887,7 +3871,6 @@ static int cgroup_add_file(struct cgroup
|
@@ -3889,7 +3873,6 @@ static int cgroup_add_file(struct cgroup
|
||||||
{
|
{
|
||||||
char name[CGROUP_FILE_NAME_MAX];
|
char name[CGROUP_FILE_NAME_MAX];
|
||||||
struct kernfs_node *kn;
|
struct kernfs_node *kn;
|
||||||
@ -97,7 +97,7 @@ Signed-off-by: Li Yang <leoyang.li@nxp.com>
|
|||||||
struct lock_class_key *key = NULL;
|
struct lock_class_key *key = NULL;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
@@ -3918,14 +3901,6 @@ static int cgroup_add_file(struct cgroup
|
@@ -3920,14 +3903,6 @@ static int cgroup_add_file(struct cgroup
|
||||||
spin_unlock_irq(&cgroup_file_kn_lock);
|
spin_unlock_irq(&cgroup_file_kn_lock);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -141,7 +141,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
#define ENETC_SIPCAPR0_RSS BIT(8)
|
#define ENETC_SIPCAPR0_RSS BIT(8)
|
||||||
#define ENETC_SIPCAPR1 0x24
|
#define ENETC_SIPCAPR1 0x24
|
||||||
#define ENETC_SITGTGR 0x30
|
#define ENETC_SITGTGR 0x30
|
||||||
@@ -444,22 +445,6 @@ union enetc_rx_bd {
|
@@ -446,22 +447,6 @@ union enetc_rx_bd {
|
||||||
#define EMETC_MAC_ADDR_FILT_RES 3 /* # of reserved entries at the beginning */
|
#define EMETC_MAC_ADDR_FILT_RES 3 /* # of reserved entries at the beginning */
|
||||||
#define ENETC_MAX_NUM_VFS 2
|
#define ENETC_MAX_NUM_VFS 2
|
||||||
|
|
||||||
@ -164,7 +164,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
#define ENETC_CBD_FLAGS_SF BIT(7) /* short format */
|
#define ENETC_CBD_FLAGS_SF BIT(7) /* short format */
|
||||||
#define ENETC_CBD_STATUS_MASK 0xf
|
#define ENETC_CBD_STATUS_MASK 0xf
|
||||||
|
|
||||||
@@ -558,3 +543,70 @@ static inline void enetc_set_bdr_prio(st
|
@@ -560,3 +545,70 @@ static inline void enetc_set_bdr_prio(st
|
||||||
val |= ENETC_TBMR_SET_PRIO(prio);
|
val |= ENETC_TBMR_SET_PRIO(prio);
|
||||||
enetc_txbdr_wr(hw, bdr_idx, ENETC_TBMR, val);
|
enetc_txbdr_wr(hw, bdr_idx, ENETC_TBMR, val);
|
||||||
}
|
}
|
||||||
|
@ -19,7 +19,7 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
|||||||
|
|
||||||
--- a/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
--- a/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
||||||
+++ b/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
+++ b/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
||||||
@@ -198,6 +198,7 @@ enum enetc_bdr_type {TX, RX};
|
@@ -200,6 +200,7 @@ enum enetc_bdr_type {TX, RX};
|
||||||
#define ENETC_PFPMR 0x1900
|
#define ENETC_PFPMR 0x1900
|
||||||
#define ENETC_PFPMR_PMACE BIT(1)
|
#define ENETC_PFPMR_PMACE BIT(1)
|
||||||
#define ENETC_PFPMR_MWLM BIT(0)
|
#define ENETC_PFPMR_MWLM BIT(0)
|
||||||
|
@ -23,7 +23,7 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
|||||||
|
|
||||||
--- a/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
--- a/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
||||||
+++ b/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
+++ b/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
||||||
@@ -221,6 +221,23 @@ enum enetc_bdr_type {TX, RX};
|
@@ -223,6 +223,23 @@ enum enetc_bdr_type {TX, RX};
|
||||||
#define ENETC_PM0_MAXFRM 0x8014
|
#define ENETC_PM0_MAXFRM 0x8014
|
||||||
#define ENETC_SET_TX_MTU(val) ((val) << 16)
|
#define ENETC_SET_TX_MTU(val) ((val) << 16)
|
||||||
#define ENETC_SET_MAXFRM(val) ((val) & 0xffff)
|
#define ENETC_SET_MAXFRM(val) ((val) & 0xffff)
|
||||||
@ -79,8 +79,8 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
|||||||
+}
|
+}
|
||||||
--- a/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
--- a/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
||||||
+++ b/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
+++ b/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
||||||
@@ -807,6 +807,61 @@ static void enetc_of_put_phy(struct enet
|
@@ -852,6 +852,61 @@ static int enetc_init_port_rss_memory(st
|
||||||
of_node_put(priv->phy_node);
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
+static void enetc_configure_sgmii(struct mii_bus *imdio)
|
+static void enetc_configure_sgmii(struct mii_bus *imdio)
|
||||||
@ -141,7 +141,7 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
|||||||
static int enetc_pf_probe(struct pci_dev *pdev,
|
static int enetc_pf_probe(struct pci_dev *pdev,
|
||||||
const struct pci_device_id *ent)
|
const struct pci_device_id *ent)
|
||||||
{
|
{
|
||||||
@@ -871,6 +926,10 @@ static int enetc_pf_probe(struct pci_dev
|
@@ -928,6 +983,10 @@ static int enetc_pf_probe(struct pci_dev
|
||||||
if (err)
|
if (err)
|
||||||
dev_warn(&pdev->dev, "Fallback to PHY-less operation\n");
|
dev_warn(&pdev->dev, "Fallback to PHY-less operation\n");
|
||||||
|
|
||||||
|
@ -124,8 +124,8 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
|||||||
+ of_node_put(pf->phy_node);
|
+ of_node_put(pf->phy_node);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void enetc_configure_sgmii(struct mii_bus *imdio)
|
/* Initialize the entire shared memory for the flow steering entries
|
||||||
@@ -888,6 +891,10 @@ static int enetc_pf_probe(struct pci_dev
|
@@ -933,6 +936,10 @@ static int enetc_pf_probe(struct pci_dev
|
||||||
pf->si = si;
|
pf->si = si;
|
||||||
pf->total_vfs = pci_sriov_get_totalvfs(pdev);
|
pf->total_vfs = pci_sriov_get_totalvfs(pdev);
|
||||||
|
|
||||||
@ -136,7 +136,7 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
|||||||
enetc_configure_port(pf);
|
enetc_configure_port(pf);
|
||||||
|
|
||||||
enetc_get_si_caps(si);
|
enetc_get_si_caps(si);
|
||||||
@@ -902,6 +909,8 @@ static int enetc_pf_probe(struct pci_dev
|
@@ -947,6 +954,8 @@ static int enetc_pf_probe(struct pci_dev
|
||||||
enetc_pf_netdev_setup(si, ndev, &enetc_ndev_ops);
|
enetc_pf_netdev_setup(si, ndev, &enetc_ndev_ops);
|
||||||
|
|
||||||
priv = netdev_priv(ndev);
|
priv = netdev_priv(ndev);
|
||||||
@ -145,7 +145,7 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
|||||||
|
|
||||||
enetc_init_si_rings_params(priv);
|
enetc_init_si_rings_params(priv);
|
||||||
|
|
||||||
@@ -917,10 +926,6 @@ static int enetc_pf_probe(struct pci_dev
|
@@ -974,10 +983,6 @@ static int enetc_pf_probe(struct pci_dev
|
||||||
goto err_alloc_msix;
|
goto err_alloc_msix;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -156,15 +156,15 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
|||||||
err = enetc_configure_serdes(priv);
|
err = enetc_configure_serdes(priv);
|
||||||
if (err)
|
if (err)
|
||||||
dev_warn(&pdev->dev, "Attempted serdes config but failed\n");
|
dev_warn(&pdev->dev, "Attempted serdes config but failed\n");
|
||||||
@@ -938,7 +943,6 @@ static int enetc_pf_probe(struct pci_dev
|
@@ -995,7 +1000,6 @@ static int enetc_pf_probe(struct pci_dev
|
||||||
|
|
||||||
err_reg_netdev:
|
err_reg_netdev:
|
||||||
enetc_mdio_remove(pf);
|
enetc_mdio_remove(pf);
|
||||||
- enetc_of_put_phy(priv);
|
- enetc_of_put_phy(priv);
|
||||||
enetc_free_msix(priv);
|
enetc_free_msix(priv);
|
||||||
err_alloc_msix:
|
err_init_port_rss:
|
||||||
enetc_free_si_resources(priv);
|
err_init_port_rfs:
|
||||||
@@ -946,6 +950,7 @@ err_alloc_si_res:
|
@@ -1005,6 +1009,7 @@ err_alloc_si_res:
|
||||||
si->ndev = NULL;
|
si->ndev = NULL;
|
||||||
free_netdev(ndev);
|
free_netdev(ndev);
|
||||||
err_alloc_netdev:
|
err_alloc_netdev:
|
||||||
@ -172,7 +172,7 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
|||||||
err_map_pf_space:
|
err_map_pf_space:
|
||||||
enetc_pci_remove(pdev);
|
enetc_pci_remove(pdev);
|
||||||
|
|
||||||
@@ -968,7 +973,7 @@ static void enetc_pf_remove(struct pci_d
|
@@ -1027,7 +1032,7 @@ static void enetc_pf_remove(struct pci_d
|
||||||
unregister_netdev(si->ndev);
|
unregister_netdev(si->ndev);
|
||||||
|
|
||||||
enetc_mdio_remove(pf);
|
enetc_mdio_remove(pf);
|
||||||
|
@ -23,7 +23,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
|
|||||||
enetc_port_wr(hw, ENETC_PM0_IF_MODE, ENETC_PM0_IFM_XGMII);
|
enetc_port_wr(hw, ENETC_PM0_IF_MODE, ENETC_PM0_IFM_XGMII);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -844,7 +845,8 @@ static int enetc_configure_serdes(struct
|
@@ -889,7 +890,8 @@ static int enetc_configure_serdes(struct
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
if (priv->if_mode != PHY_INTERFACE_MODE_SGMII &&
|
if (priv->if_mode != PHY_INTERFACE_MODE_SGMII &&
|
||||||
@ -33,7 +33,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
|
|||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
err = enetc_imdio_init(pf);
|
err = enetc_imdio_init(pf);
|
||||||
@@ -854,7 +856,8 @@ static int enetc_configure_serdes(struct
|
@@ -899,7 +901,8 @@ static int enetc_configure_serdes(struct
|
||||||
if (priv->if_mode == PHY_INTERFACE_MODE_SGMII)
|
if (priv->if_mode == PHY_INTERFACE_MODE_SGMII)
|
||||||
enetc_configure_sgmii(pf->imdio);
|
enetc_configure_sgmii(pf->imdio);
|
||||||
|
|
||||||
|
@ -254,7 +254,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
|
|||||||
rx_frm_cnt++;
|
rx_frm_cnt++;
|
||||||
--- a/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
--- a/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
||||||
+++ b/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
+++ b/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
||||||
@@ -325,8 +325,15 @@ struct enetc_hw {
|
@@ -327,8 +327,15 @@ struct enetc_hw {
|
||||||
};
|
};
|
||||||
|
|
||||||
/* general register accessors */
|
/* general register accessors */
|
||||||
@ -272,7 +272,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
|
|||||||
#ifdef ioread64
|
#ifdef ioread64
|
||||||
#define enetc_rd_reg64(reg) ioread64((reg))
|
#define enetc_rd_reg64(reg) ioread64((reg))
|
||||||
#else
|
#else
|
||||||
@@ -345,12 +352,102 @@ static inline u64 enetc_rd_reg64(void __
|
@@ -347,12 +354,102 @@ static inline u64 enetc_rd_reg64(void __
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -397,7 +397,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
|
|||||||
#define enetc_mdio_rd(mdio_priv, off) \
|
#define enetc_mdio_rd(mdio_priv, off) \
|
||||||
--- a/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
--- a/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
||||||
+++ b/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
+++ b/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
||||||
@@ -987,6 +987,9 @@ static void enetc_pf_remove(struct pci_d
|
@@ -1046,6 +1046,9 @@ static void enetc_pf_remove(struct pci_d
|
||||||
enetc_pci_remove(pdev);
|
enetc_pci_remove(pdev);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -259,7 +259,7 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
|||||||
|
|
||||||
--- a/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
--- a/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
||||||
+++ b/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
+++ b/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
||||||
@@ -329,7 +329,7 @@ struct enetc_hw {
|
@@ -331,7 +331,7 @@ struct enetc_hw {
|
||||||
#define enetc_wr_reg(reg, val) enetc_wr_reg_wa((reg), (val))
|
#define enetc_wr_reg(reg, val) enetc_wr_reg_wa((reg), (val))
|
||||||
|
|
||||||
/* accessors for data-path, due to MDIO issue on LS1028 these should be called
|
/* accessors for data-path, due to MDIO issue on LS1028 these should be called
|
||||||
@ -268,7 +268,7 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
|||||||
*/
|
*/
|
||||||
#define enetc_rd_reg_hot(reg) ioread32((reg))
|
#define enetc_rd_reg_hot(reg) ioread32((reg))
|
||||||
#define enetc_wr_reg_hot(reg, val) iowrite32((val), (reg))
|
#define enetc_wr_reg_hot(reg, val) iowrite32((val), (reg))
|
||||||
@@ -352,90 +352,45 @@ static inline u64 enetc_rd_reg64(void __
|
@@ -354,90 +354,45 @@ static inline u64 enetc_rd_reg64(void __
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -371,7 +371,7 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
|||||||
#define enetc_rd(hw, off) enetc_rd_reg((hw)->reg + (off))
|
#define enetc_rd(hw, off) enetc_rd_reg((hw)->reg + (off))
|
||||||
--- a/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
--- a/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
||||||
+++ b/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
+++ b/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
||||||
@@ -987,8 +987,9 @@ static void enetc_pf_remove(struct pci_d
|
@@ -1046,8 +1046,9 @@ static void enetc_pf_remove(struct pci_d
|
||||||
enetc_pci_remove(pdev);
|
enetc_pci_remove(pdev);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -48,7 +48,7 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
|
|||||||
|
|
||||||
--- a/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
--- a/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
||||||
+++ b/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
+++ b/drivers/net/ethernet/freescale/enetc/enetc_pf.c
|
||||||
@@ -953,6 +953,7 @@ err_alloc_si_res:
|
@@ -1012,6 +1012,7 @@ err_alloc_si_res:
|
||||||
si->ndev = NULL;
|
si->ndev = NULL;
|
||||||
free_netdev(ndev);
|
free_netdev(ndev);
|
||||||
err_alloc_netdev:
|
err_alloc_netdev:
|
||||||
|
@ -78,8 +78,8 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
+#define ENETC_CBS_BW_MASK GENMASK(6, 0)
|
+#define ENETC_CBS_BW_MASK GENMASK(6, 0)
|
||||||
#define ENETC_PTCCBSR1(n) (0x1114 + (n) * 8) /* n = 0 to 7*/
|
#define ENETC_PTCCBSR1(n) (0x1114 + (n) * 8) /* n = 0 to 7*/
|
||||||
#define ENETC_RSSHASH_KEY_SIZE 40
|
#define ENETC_RSSHASH_KEY_SIZE 40
|
||||||
#define ENETC_PRSSK(n) (0x1410 + (n) * 4) /* n = [0..9] */
|
#define ENETC_PRSSCAPR 0x1404
|
||||||
@@ -677,6 +679,8 @@ struct enetc_cbd {
|
@@ -679,6 +681,8 @@ struct enetc_cbd {
|
||||||
u8 status_flags;
|
u8 status_flags;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -296,7 +296,7 @@ Signed-off-by: Po Liu <Po.Liu@nxp.com>
|
|||||||
#define ENETC_SIPCAPR0_RSS BIT(8)
|
#define ENETC_SIPCAPR0_RSS BIT(8)
|
||||||
#define ENETC_SIPCAPR1 0x24
|
#define ENETC_SIPCAPR1 0x24
|
||||||
#define ENETC_SITGTGR 0x30
|
#define ENETC_SITGTGR 0x30
|
||||||
@@ -241,10 +242,20 @@ enum enetc_bdr_type {TX, RX};
|
@@ -243,10 +244,20 @@ enum enetc_bdr_type {TX, RX};
|
||||||
#define ENETC_PCS_IF_MODE_SGMII_AN 0x0003
|
#define ENETC_PCS_IF_MODE_SGMII_AN 0x0003
|
||||||
|
|
||||||
#define ENETC_PM0_IF_MODE 0x8300
|
#define ENETC_PM0_IF_MODE 0x8300
|
||||||
@ -317,7 +317,7 @@ Signed-off-by: Po Liu <Po.Liu@nxp.com>
|
|||||||
|
|
||||||
/* MAC counters */
|
/* MAC counters */
|
||||||
#define ENETC_PM0_REOCT 0x8100
|
#define ENETC_PM0_REOCT 0x8100
|
||||||
@@ -298,6 +309,15 @@ enum enetc_bdr_type {TX, RX};
|
@@ -300,6 +311,15 @@ enum enetc_bdr_type {TX, RX};
|
||||||
#define ENETC_PM0_TSCOL 0x82E0
|
#define ENETC_PM0_TSCOL 0x82E0
|
||||||
#define ENETC_PM0_TLCOL 0x82E8
|
#define ENETC_PM0_TLCOL 0x82E8
|
||||||
#define ENETC_PM0_TECOL 0x82F0
|
#define ENETC_PM0_TECOL 0x82F0
|
||||||
@ -333,7 +333,7 @@ Signed-off-by: Po Liu <Po.Liu@nxp.com>
|
|||||||
|
|
||||||
/* Port counters */
|
/* Port counters */
|
||||||
#define ENETC_PICDR(n) (0x0700 + (n) * 8) /* n = [0..3] */
|
#define ENETC_PICDR(n) (0x0700 + (n) * 8) /* n = [0..3] */
|
||||||
@@ -456,6 +476,7 @@ union enetc_tx_bd {
|
@@ -458,6 +478,7 @@ union enetc_tx_bd {
|
||||||
#define ENETC_TXBD_FLAGS_CSUM BIT(3)
|
#define ENETC_TXBD_FLAGS_CSUM BIT(3)
|
||||||
#define ENETC_TXBD_FLAGS_EX BIT(6)
|
#define ENETC_TXBD_FLAGS_EX BIT(6)
|
||||||
#define ENETC_TXBD_FLAGS_F BIT(7)
|
#define ENETC_TXBD_FLAGS_F BIT(7)
|
||||||
@ -341,7 +341,7 @@ Signed-off-by: Po Liu <Po.Liu@nxp.com>
|
|||||||
|
|
||||||
static inline void enetc_clear_tx_bd(union enetc_tx_bd *txbd)
|
static inline void enetc_clear_tx_bd(union enetc_tx_bd *txbd)
|
||||||
{
|
{
|
||||||
@@ -483,6 +504,8 @@ static inline __le16 enetc_txbd_l3_csoff
|
@@ -485,6 +506,8 @@ static inline __le16 enetc_txbd_l3_csoff
|
||||||
#define ENETC_TXBD_L4_UDP BIT(5)
|
#define ENETC_TXBD_L4_UDP BIT(5)
|
||||||
#define ENETC_TXBD_L4_TCP BIT(6)
|
#define ENETC_TXBD_L4_TCP BIT(6)
|
||||||
|
|
||||||
@ -350,7 +350,7 @@ Signed-off-by: Po Liu <Po.Liu@nxp.com>
|
|||||||
union enetc_rx_bd {
|
union enetc_rx_bd {
|
||||||
struct {
|
struct {
|
||||||
__le64 addr;
|
__le64 addr;
|
||||||
@@ -629,21 +652,307 @@ enum bdcr_cmd_class {
|
@@ -631,21 +654,307 @@ enum bdcr_cmd_class {
|
||||||
BDCR_CMD_RFS,
|
BDCR_CMD_RFS,
|
||||||
BDCR_CMD_PORT_GCL,
|
BDCR_CMD_PORT_GCL,
|
||||||
BDCR_CMD_RECV_CLASSIFIER,
|
BDCR_CMD_RECV_CLASSIFIER,
|
||||||
@ -662,7 +662,7 @@ Signed-off-by: Po Liu <Po.Liu@nxp.com>
|
|||||||
/* gate control list entry */
|
/* gate control list entry */
|
||||||
struct gce {
|
struct gce {
|
||||||
__le32 period;
|
__le32 period;
|
||||||
@@ -660,13 +969,55 @@ struct tgs_gcl_data {
|
@@ -662,13 +971,55 @@ struct tgs_gcl_data {
|
||||||
struct gce entry[0];
|
struct gce entry[0];
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -719,7 +719,7 @@ Signed-off-by: Po Liu <Po.Liu@nxp.com>
|
|||||||
};
|
};
|
||||||
}; /* Long format */
|
}; /* Long format */
|
||||||
__le32 data[6];
|
__le32 data[6];
|
||||||
@@ -681,11 +1032,88 @@ struct enetc_cbd {
|
@@ -683,11 +1034,88 @@ struct enetc_cbd {
|
||||||
|
|
||||||
#define ENETC_CLK 400000000ULL
|
#define ENETC_CLK 400000000ULL
|
||||||
|
|
||||||
@ -839,7 +839,7 @@ Signed-off-by: Po Liu <Po.Liu@nxp.com>
|
|||||||
/* pick up primary MAC address from SI */
|
/* pick up primary MAC address from SI */
|
||||||
enetc_get_primary_mac_addr(&si->hw, ndev->dev_addr);
|
enetc_get_primary_mac_addr(&si->hw, ndev->dev_addr);
|
||||||
}
|
}
|
||||||
@@ -942,6 +949,8 @@ static int enetc_pf_probe(struct pci_dev
|
@@ -999,6 +1006,8 @@ static int enetc_pf_probe(struct pci_dev
|
||||||
netif_info(priv, probe, ndev, "%s v%s\n",
|
netif_info(priv, probe, ndev, "%s v%s\n",
|
||||||
enetc_drv_name, enetc_drv_ver);
|
enetc_drv_name, enetc_drv_ver);
|
||||||
|
|
||||||
@ -848,7 +848,7 @@ Signed-off-by: Po Liu <Po.Liu@nxp.com>
|
|||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
err_reg_netdev:
|
err_reg_netdev:
|
||||||
@@ -974,6 +983,8 @@ static void enetc_pf_remove(struct pci_d
|
@@ -1033,6 +1042,8 @@ static void enetc_pf_remove(struct pci_d
|
||||||
netif_info(priv, drv, si->ndev, "%s v%s remove\n",
|
netif_info(priv, drv, si->ndev, "%s v%s remove\n",
|
||||||
enetc_drv_name, enetc_drv_ver);
|
enetc_drv_name, enetc_drv_ver);
|
||||||
|
|
||||||
|
@ -344,7 +344,7 @@ MDIO erratum.
|
|||||||
static int enetc_of_get_phy(struct enetc_pf *pf)
|
static int enetc_of_get_phy(struct enetc_pf *pf)
|
||||||
{
|
{
|
||||||
struct device *dev = &pf->si->pdev->dev;
|
struct device *dev = &pf->si->pdev->dev;
|
||||||
@@ -846,6 +893,30 @@ static void enetc_configure_sxgmii(struc
|
@@ -891,6 +938,30 @@ static void enetc_configure_sxgmii(struc
|
||||||
ENETC_PCS_CR_LANE_RESET | ENETC_PCS_CR_RESET_AN);
|
ENETC_PCS_CR_LANE_RESET | ENETC_PCS_CR_RESET_AN);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -17,7 +17,7 @@ Acked-by: Jason Liu <jason.hui.liu@nxp.com>
|
|||||||
|
|
||||||
--- a/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
--- a/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
||||||
+++ b/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
+++ b/drivers/net/ethernet/freescale/enetc/enetc_hw.h
|
||||||
@@ -224,6 +224,8 @@ enum enetc_bdr_type {TX, RX};
|
@@ -226,6 +226,8 @@ enum enetc_bdr_type {TX, RX};
|
||||||
#define ENETC_PM0_MAXFRM 0x8014
|
#define ENETC_PM0_MAXFRM 0x8014
|
||||||
#define ENETC_SET_TX_MTU(val) ((val) << 16)
|
#define ENETC_SET_TX_MTU(val) ((val) << 16)
|
||||||
#define ENETC_SET_MAXFRM(val) ((val) & 0xffff)
|
#define ENETC_SET_MAXFRM(val) ((val) & 0xffff)
|
||||||
|
@ -23,11 +23,9 @@ Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
|
|||||||
arch/mips/ralink/reset.c | 4 ++--
|
arch/mips/ralink/reset.c | 4 ++--
|
||||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
diff --git a/arch/mips/ralink/reset.c b/arch/mips/ralink/reset.c
|
|
||||||
index 8126f12604071..274d33078c5eb 100644
|
|
||||||
--- a/arch/mips/ralink/reset.c
|
--- a/arch/mips/ralink/reset.c
|
||||||
+++ b/arch/mips/ralink/reset.c
|
+++ b/arch/mips/ralink/reset.c
|
||||||
@@ -27,7 +27,7 @@ static int ralink_assert_device(struct reset_controller_dev *rcdev,
|
@@ -27,7 +27,7 @@ static int ralink_assert_device(struct r
|
||||||
{
|
{
|
||||||
u32 val;
|
u32 val;
|
||||||
|
|
||||||
@ -36,7 +34,7 @@ index 8126f12604071..274d33078c5eb 100644
|
|||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
val = rt_sysc_r32(SYSC_REG_RESET_CTRL);
|
val = rt_sysc_r32(SYSC_REG_RESET_CTRL);
|
||||||
@@ -42,7 +42,7 @@ static int ralink_deassert_device(struct reset_controller_dev *rcdev,
|
@@ -42,7 +42,7 @@ static int ralink_deassert_device(struct
|
||||||
{
|
{
|
||||||
u32 val;
|
u32 val;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user