Commit c873512e authored by Paolo Abeni's avatar Paolo Abeni
Browse files


Merge in late fixes to prepare for the 6.6 net-next PR.

No conflicts.

Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
parents 6c9cfb85 90ca51e8
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -20,7 +20,7 @@ which is at a different MDIO base address in different switch families.
			  6171, 6172, 6175, 6176, 6185, 6240, 6320, 6321,
			  6341, 6350, 6351, 6352
- "marvell,mv88e6190"	: Switch has base address 0x00. Use with models:
			  6163, 6190, 6190X, 6191, 6290, 6390, 6390X
			  6190, 6190X, 6191, 6290, 6361, 6390, 6390X
- "marvell,mv88e6250"	: Switch has base address 0x08 or 0x18. Use with model:
			  6220, 6250

+1 −1
Original line number Diff line number Diff line
@@ -464,7 +464,7 @@ static void arcnet_reply_tasklet(struct tasklet_struct *t)

	ret = sock_queue_err_skb(sk, ackskb);
	if (ret)
		kfree_skb(ackskb);
		dev_kfree_skb_irq(ackskb);

	local_irq_enable();
};
+7 −4
Original line number Diff line number Diff line
@@ -464,6 +464,7 @@ void pdsc_teardown(struct pdsc *pdsc, bool removing)
{
	int i;

	if (!pdsc->pdev->is_virtfn)
		pdsc_devcmd_reset(pdsc);
	pdsc_qcq_free(pdsc, &pdsc->notifyqcq);
	pdsc_qcq_free(pdsc, &pdsc->adminqcq);
@@ -524,6 +525,7 @@ static void pdsc_fw_down(struct pdsc *pdsc)
	}

	/* Notify clients of fw_down */
	if (pdsc->fw_reporter)
		devlink_health_report(pdsc->fw_reporter, "FW down reported", pdsc);
	pdsc_notify(PDS_EVENT_RESET, &reset_event);

@@ -554,6 +556,7 @@ static void pdsc_fw_up(struct pdsc *pdsc)

	/* Notify clients of fw_up */
	pdsc->fw_recoveries++;
	if (pdsc->fw_reporter)
		devlink_health_reporter_state_update(pdsc->fw_reporter,
						     DEVLINK_HEALTH_REPORTER_STATE_HEALTHY);
	pdsc_notify(PDS_EVENT_RESET, &reset_event);
+3 −6
Original line number Diff line number Diff line
@@ -121,7 +121,7 @@ static const char *pdsc_devcmd_str(int opcode)
	}
}

static int pdsc_devcmd_wait(struct pdsc *pdsc, int max_seconds)
static int pdsc_devcmd_wait(struct pdsc *pdsc, u8 opcode, int max_seconds)
{
	struct device *dev = pdsc->dev;
	unsigned long start_time;
@@ -131,9 +131,6 @@ static int pdsc_devcmd_wait(struct pdsc *pdsc, int max_seconds)
	int done = 0;
	int err = 0;
	int status;
	int opcode;

	opcode = ioread8(&pdsc->cmd_regs->cmd.opcode);

	start_time = jiffies;
	max_wait = start_time + (max_seconds * HZ);
@@ -180,10 +177,10 @@ int pdsc_devcmd_locked(struct pdsc *pdsc, union pds_core_dev_cmd *cmd,

	memcpy_toio(&pdsc->cmd_regs->cmd, cmd, sizeof(*cmd));
	pdsc_devcmd_dbell(pdsc);
	err = pdsc_devcmd_wait(pdsc, max_seconds);
	err = pdsc_devcmd_wait(pdsc, cmd->opcode, max_seconds);
	memcpy_fromio(comp, &pdsc->cmd_regs->comp, sizeof(*comp));

	if (err == -ENXIO || err == -ETIMEDOUT)
	if ((err == -ENXIO || err == -ETIMEDOUT) && pdsc->wq)
		queue_work(pdsc->wq, &pdsc->health_work);

	return err;
+3 −0
Original line number Diff line number Diff line
@@ -10,6 +10,9 @@ pdsc_viftype *pdsc_dl_find_viftype_by_id(struct pdsc *pdsc,
{
	int vt;

	if (!pdsc->viftype_status)
		return NULL;

	for (vt = 0; vt < PDS_DEV_TYPE_MAX; vt++) {
		if (pdsc->viftype_status[vt].dl_id == dl_id)
			return &pdsc->viftype_status[vt];
Loading