KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
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))))
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
--- a/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;
/**
* 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);
for_each_subsys(ss, ssid) {
if (ss->early_init) {
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);
--- a/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;
}
/* Writes out a full display list for an active plane to the plane's
* 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 */
if (vc4_state->is_yuv) {
}
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_Y);
--- a/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 drm_crtc_state *crtc_state;
unsigned int vscale_factor;
.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;
}
/* Don't waste cycles mixing with plane alpha if the set alpha
* is opaque or there is no per-pixel alpha information.
* 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 &&
fb->format->has_alpha;
/* 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:
return false;
}
return VC4_SCALING_NONE;
if (3 * dst >= 2 * src)
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;
vc4_state->x_scaling[0] = vc4_get_scaling_mode(vc4_state->src_w[0],
vc4_state->is_unity = (vc4_state->x_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_get_scaling_mode(vc4_state->src_w[1],
/* YUV conversion requires that horizontal scaling be enabled
* 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)
{
struct vc4_plane_state *vc4_state = to_vc4_plane_state(state);
u32 lbm;
/* 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)
return 0;
if (!vc4_state->is_yuv) {
if (vc4_state->y_scaling[0] == VC4_SCALING_TPZ)
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);
ret = drm_mm_insert_node_generic(&vc4->hvs->lbm_mm,
&vc4_state->lbm,
void vc4_plane_async_set_fb(struct drm_plane *plane,
--- a/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;
}
void vc4_plane_async_set_fb(struct drm_plane *plane,
--- a/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;
}
--- a/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;
unsigned int i;
--- a/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
* still cover any sane usecase.
*/
};
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);
u32 tile_w, tile, x_off, pix_per_tile;
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
* out.
*/
for (i = 0; i < num_planes; i++) {
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_SET_FIELD(state->alpha >> 4,
SCALER5_CTL2_ALPHA) |
(mix_plane_alpha ?
SCALER5_CTL2_ALPHA_MIX : 0) |
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 */
for (i = 1; i < num_planes; i++) {
vc4_dlist_write(vc4_state,
VC4_SET_FIELD(fb->pitches[i],
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:
return false;
}
case DRM_FORMAT_RGBX1010102:
case DRM_FORMAT_BGRX1010102:
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 vc4_plane *vc4_plane;
u32 formats[ARRAY_SIZE(hvs_formats)];
static const uint64_t modifiers[] = {
DRM_FORMAT_MOD_BROADCOM_VC4_T_TILED,
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)
return ERR_PTR(-ENOMEM);
--- a/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);
for (i = 0; i < ARRAY_SIZE(hvs_formats); i++) {
--- a/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;
}
static void gc_worker(struct work_struct *work)
{
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);
scanned++;
--- a/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_len = 0;
} \
\
/* __*init sections */ \
-@@ -888,6 +898,8 @@
+@@ -898,6 +908,8 @@
EXIT_TEXT \
EXIT_DATA \
EXIT_CALL \
__u16 tc_index; /* traffic control index */
--- a/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 grow;
if (netif_elide_gro(skb->dev))
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);
}
static int __netdev_upper_dev_link(struct net_device *dev,
struct net_device *upper_dev, bool master,
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)
return ret;
ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
&changeupper_info.info);
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);
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
&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)
return err;
dev->addr_assign_type = NET_ADDR_SET;
static int netif_rx_internal(struct sk_buff *skb);
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;
local_irq_save(flags);
____napi_schedule(this_cpu_ptr(&softnet_data), n);
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)
{
____napi_schedule(this_cpu_ptr(&softnet_data), n);
}
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;
}
void netif_napi_add(struct net_device *dev, struct napi_struct *napi,
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
napi->poll_owner = -1;
#endif
set_bit(NAPI_STATE_SCHED, &napi->state);
set_bit(NAPI_STATE_NPSVC, &napi->state);
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)
{
might_sleep();
if (napi_hash_del(napi))
synchronize_net();
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)
{
/* Some drivers may have called napi_schedule
* 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;
}
}
/**
-@@ -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];
struct kernfs_node *kn;
struct lock_class_key *key = NULL;
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);
}
}
/**
-@@ -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];
struct kernfs_node *kn;
struct lock_class_key *key = NULL;
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);
}
#define ENETC_SIPCAPR0_RSS BIT(8)
#define ENETC_SIPCAPR1 0x24
#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 ENETC_MAX_NUM_VFS 2
#define ENETC_CBD_FLAGS_SF BIT(7) /* short format */
#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);
enetc_txbdr_wr(hw, bdr_idx, ENETC_TBMR, val);
}
--- a/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_PMACE BIT(1)
#define ENETC_PFPMR_MWLM BIT(0)
--- a/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_SET_TX_MTU(val) ((val) << 16)
#define ENETC_SET_MAXFRM(val) ((val) & 0xffff)
+}
--- a/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
- of_node_put(priv->phy_node);
+@@ -852,6 +852,61 @@ static int enetc_init_port_rss_memory(st
+ return err;
}
+static void enetc_configure_sgmii(struct mii_bus *imdio)
static int enetc_pf_probe(struct pci_dev *pdev,
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)
dev_warn(&pdev->dev, "Fallback to PHY-less operation\n");
+ of_node_put(pf->phy_node);
}
- static void enetc_configure_sgmii(struct mii_bus *imdio)
-@@ -888,6 +891,10 @@ static int enetc_pf_probe(struct pci_dev
+ /* Initialize the entire shared memory for the flow steering entries
+@@ -933,6 +936,10 @@ static int enetc_pf_probe(struct pci_dev
pf->si = si;
pf->total_vfs = pci_sriov_get_totalvfs(pdev);
enetc_configure_port(pf);
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);
priv = netdev_priv(ndev);
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;
}
err = enetc_configure_serdes(priv);
if (err)
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:
enetc_mdio_remove(pf);
- enetc_of_put_phy(priv);
enetc_free_msix(priv);
- err_alloc_msix:
- enetc_free_si_resources(priv);
-@@ -946,6 +950,7 @@ err_alloc_si_res:
+ err_init_port_rss:
+ err_init_port_rfs:
+@@ -1005,6 +1009,7 @@ err_alloc_si_res:
si->ndev = NULL;
free_netdev(ndev);
err_alloc_netdev:
err_map_pf_space:
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);
enetc_mdio_remove(pf);
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;
if (priv->if_mode != PHY_INTERFACE_MODE_SGMII &&
return 0;
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)
enetc_configure_sgmii(pf->imdio);
rx_frm_cnt++;
--- a/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 */
#ifdef ioread64
#define enetc_rd_reg64(reg) ioread64((reg))
#else
-@@ -345,12 +352,102 @@ static inline u64 enetc_rd_reg64(void __
+@@ -347,12 +354,102 @@ static inline u64 enetc_rd_reg64(void __
}
#endif
#define enetc_mdio_rd(mdio_priv, off) \
--- a/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);
}
--- a/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))
/* accessors for data-path, due to MDIO issue on LS1028 these should be called
*/
#define enetc_rd_reg_hot(reg) ioread32((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
#define enetc_rd(hw, off) enetc_rd_reg((hw)->reg + (off))
--- a/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);
}
--- a/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;
free_netdev(ndev);
err_alloc_netdev:
+#define ENETC_CBS_BW_MASK GENMASK(6, 0)
#define ENETC_PTCCBSR1(n) (0x1114 + (n) * 8) /* n = 0 to 7*/
#define ENETC_RSSHASH_KEY_SIZE 40
- #define ENETC_PRSSK(n) (0x1410 + (n) * 4) /* n = [0..9] */
-@@ -677,6 +679,8 @@ struct enetc_cbd {
+ #define ENETC_PRSSCAPR 0x1404
+@@ -679,6 +681,8 @@ struct enetc_cbd {
u8 status_flags;
};
#define ENETC_SIPCAPR0_RSS BIT(8)
#define ENETC_SIPCAPR1 0x24
#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_PM0_IF_MODE 0x8300
/* MAC counters */
#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_TLCOL 0x82E8
#define ENETC_PM0_TECOL 0x82F0
/* Port counters */
#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_EX BIT(6)
#define ENETC_TXBD_FLAGS_F BIT(7)
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_TCP BIT(6)
union enetc_rx_bd {
struct {
__le64 addr;
-@@ -629,21 +652,307 @@ enum bdcr_cmd_class {
+@@ -631,21 +654,307 @@ enum bdcr_cmd_class {
BDCR_CMD_RFS,
BDCR_CMD_PORT_GCL,
BDCR_CMD_RECV_CLASSIFIER,
/* gate control list entry */
struct gce {
__le32 period;
-@@ -660,13 +969,55 @@ struct tgs_gcl_data {
+@@ -662,13 +971,55 @@ struct tgs_gcl_data {
struct gce entry[0];
};
};
}; /* Long format */
__le32 data[6];
-@@ -681,11 +1032,88 @@ struct enetc_cbd {
+@@ -683,11 +1034,88 @@ struct enetc_cbd {
#define ENETC_CLK 400000000ULL
/* pick up primary MAC address from SI */
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",
enetc_drv_name, enetc_drv_ver);
return 0;
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",
enetc_drv_name, enetc_drv_ver);
static int enetc_of_get_phy(struct enetc_pf *pf)
{
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);
}
--- a/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_SET_TX_MTU(val) ((val) << 16)
#define ENETC_SET_MAXFRM(val) ((val) & 0xffff)
arch/mips/ralink/reset.c | 4 ++--
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
+++ 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;
return -1;
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;