Skip to content

Commit 90bf8cc

Browse files
committed
tgupdate: merge t/upstream base into t/upstream
2 parents e8e4be8 + 1b24e46 commit 90bf8cc

File tree

10 files changed

+40
-12
lines changed

10 files changed

+40
-12
lines changed

Documentation/devicetree/bindings/net/qcom,ethqos.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,12 @@ properties:
2121
oneOf:
2222
- items:
2323
- enum:
24-
- qcom,qcs8300-ethqos
25-
- const: qcom,sa8775p-ethqos
24+
- qcom,qcs615-ethqos
25+
- const: qcom,qcs404-ethqos
2626
- items:
2727
- enum:
28-
- qcom,qcs615-ethqos
29-
- const: qcom,sm8150-ethqos
28+
- qcom,qcs8300-ethqos
29+
- const: qcom,sa8775p-ethqos
3030
- enum:
3131
- qcom,qcs404-ethqos
3232
- qcom,sa8775p-ethqos

drivers/net/ethernet/hisilicon/hns3/hnae3.c

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,21 @@ EXPORT_SYMBOL(hnae3_unregister_ae_algo_prepare);
4040
*/
4141
static DEFINE_MUTEX(hnae3_common_lock);
4242

43+
/* ensure the drivers being unloaded one by one */
44+
static DEFINE_MUTEX(hnae3_unload_lock);
45+
46+
void hnae3_acquire_unload_lock(void)
47+
{
48+
mutex_lock(&hnae3_unload_lock);
49+
}
50+
EXPORT_SYMBOL(hnae3_acquire_unload_lock);
51+
52+
void hnae3_release_unload_lock(void)
53+
{
54+
mutex_unlock(&hnae3_unload_lock);
55+
}
56+
EXPORT_SYMBOL(hnae3_release_unload_lock);
57+
4358
static bool hnae3_client_match(enum hnae3_client_type client_type)
4459
{
4560
if (client_type == HNAE3_CLIENT_KNIC ||

drivers/net/ethernet/hisilicon/hns3/hnae3.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -963,4 +963,6 @@ int hnae3_register_client(struct hnae3_client *client);
963963
void hnae3_set_client_init_flag(struct hnae3_client *client,
964964
struct hnae3_ae_dev *ae_dev,
965965
unsigned int inited);
966+
void hnae3_acquire_unload_lock(void);
967+
void hnae3_release_unload_lock(void);
966968
#endif

drivers/net/ethernet/hisilicon/hns3/hns3_enet.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6002,9 +6002,11 @@ module_init(hns3_init_module);
60026002
*/
60036003
static void __exit hns3_exit_module(void)
60046004
{
6005+
hnae3_acquire_unload_lock();
60056006
pci_unregister_driver(&hns3_driver);
60066007
hnae3_unregister_client(&client);
60076008
hns3_dbg_unregister_debugfs();
6009+
hnae3_release_unload_lock();
60086010
}
60096011
module_exit(hns3_exit_module);
60106012

drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12919,9 +12919,11 @@ static int __init hclge_init(void)
1291912919

1292012920
static void __exit hclge_exit(void)
1292112921
{
12922+
hnae3_acquire_unload_lock();
1292212923
hnae3_unregister_ae_algo_prepare(&ae_algo);
1292312924
hnae3_unregister_ae_algo(&ae_algo);
1292412925
destroy_workqueue(hclge_wq);
12926+
hnae3_release_unload_lock();
1292512927
}
1292612928
module_init(hclge_init);
1292712929
module_exit(hclge_exit);

drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3410,8 +3410,10 @@ static int __init hclgevf_init(void)
34103410

34113411
static void __exit hclgevf_exit(void)
34123412
{
3413+
hnae3_acquire_unload_lock();
34133414
hnae3_unregister_ae_algo(&ae_algovf);
34143415
destroy_workqueue(hclgevf_wq);
3416+
hnae3_release_unload_lock();
34153417
}
34163418
module_init(hclgevf_init);
34173419
module_exit(hclgevf_exit);

drivers/net/ethernet/mediatek/airoha_eth.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -266,11 +266,11 @@
266266
#define REG_GDM3_FWD_CFG GDM3_BASE
267267
#define GDM3_PAD_EN_MASK BIT(28)
268268

269-
#define REG_GDM4_FWD_CFG (GDM4_BASE + 0x100)
269+
#define REG_GDM4_FWD_CFG GDM4_BASE
270270
#define GDM4_PAD_EN_MASK BIT(28)
271271
#define GDM4_SPORT_OFFSET0_MASK GENMASK(11, 8)
272272

273-
#define REG_GDM4_SRC_PORT_SET (GDM4_BASE + 0x33c)
273+
#define REG_GDM4_SRC_PORT_SET (GDM4_BASE + 0x23c)
274274
#define GDM4_SPORT_OFF2_MASK GENMASK(19, 16)
275275
#define GDM4_SPORT_OFF1_MASK GENMASK(15, 12)
276276
#define GDM4_SPORT_OFF0_MASK GENMASK(11, 8)

net/ncsi/ncsi-manage.c

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1385,6 +1385,12 @@ static void ncsi_probe_channel(struct ncsi_dev_priv *ndp)
13851385
nd->state = ncsi_dev_state_probe_package;
13861386
break;
13871387
case ncsi_dev_state_probe_package:
1388+
if (ndp->package_probe_id >= 8) {
1389+
/* Last package probed, finishing */
1390+
ndp->flags |= NCSI_DEV_PROBED;
1391+
break;
1392+
}
1393+
13881394
ndp->pending_req_num = 1;
13891395

13901396
nca.type = NCSI_PKT_CMD_SP;
@@ -1501,13 +1507,8 @@ static void ncsi_probe_channel(struct ncsi_dev_priv *ndp)
15011507
if (ret)
15021508
goto error;
15031509

1504-
/* Probe next package */
1510+
/* Probe next package after receiving response */
15051511
ndp->package_probe_id++;
1506-
if (ndp->package_probe_id >= 8) {
1507-
/* Probe finished */
1508-
ndp->flags |= NCSI_DEV_PROBED;
1509-
break;
1510-
}
15111512
nd->state = ncsi_dev_state_probe_package;
15121513
ndp->active_package = NULL;
15131514
break;

net/nfc/nci/hci.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -542,6 +542,8 @@ static u8 nci_hci_create_pipe(struct nci_dev *ndev, u8 dest_host,
542542

543543
pr_debug("pipe created=%d\n", pipe);
544544

545+
if (pipe >= NCI_HCI_MAX_PIPES)
546+
pipe = NCI_HCI_INVALID_PIPE;
545547
return pipe;
546548
}
547549

net/sched/sch_ets.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,8 @@ ets_class_from_arg(struct Qdisc *sch, unsigned long arg)
9191
{
9292
struct ets_sched *q = qdisc_priv(sch);
9393

94+
if (arg == 0 || arg > q->nbands)
95+
return NULL;
9496
return &q->classes[arg - 1];
9597
}
9698

0 commit comments

Comments
 (0)