Commit 8f57d478 authored by Mika Westerberg's avatar Mika Westerberg
Browse files

thunderbolt: Convert basic adapter register names to follow the USB4 spec



Now that USB4 spec has names for these basic registers we can use them
instead. This makes it easier to match certain register to the spec.

No functional changes.

Signed-off-by: default avatarMika Westerberg <mika.westerberg@linux.intel.com>
parent af99f696
Loading
Loading
Loading
Loading
+9 −9
Original line number Diff line number Diff line
@@ -553,17 +553,17 @@ int tb_port_add_nfc_credits(struct tb_port *port, int credits)
	if (credits == 0 || port->sw->is_unplugged)
		return 0;

	nfc_credits = port->config.nfc_credits & TB_PORT_NFC_CREDITS_MASK;
	nfc_credits = port->config.nfc_credits & ADP_CS_4_NFC_BUFFERS_MASK;
	nfc_credits += credits;

	tb_port_dbg(port, "adding %d NFC credits to %lu",
		    credits, port->config.nfc_credits & TB_PORT_NFC_CREDITS_MASK);
	tb_port_dbg(port, "adding %d NFC credits to %lu", credits,
		    port->config.nfc_credits & ADP_CS_4_NFC_BUFFERS_MASK);

	port->config.nfc_credits &= ~TB_PORT_NFC_CREDITS_MASK;
	port->config.nfc_credits &= ~ADP_CS_4_NFC_BUFFERS_MASK;
	port->config.nfc_credits |= nfc_credits;

	return tb_port_write(port, &port->config.nfc_credits,
			     TB_CFG_PORT, 4, 1);
			     TB_CFG_PORT, ADP_CS_4, 1);
}

/**
@@ -578,14 +578,14 @@ int tb_port_set_initial_credits(struct tb_port *port, u32 credits)
	u32 data;
	int ret;

	ret = tb_port_read(port, &data, TB_CFG_PORT, 5, 1);
	ret = tb_port_read(port, &data, TB_CFG_PORT, ADP_CS_5, 1);
	if (ret)
		return ret;

	data &= ~TB_PORT_LCA_MASK;
	data |= (credits << TB_PORT_LCA_SHIFT) & TB_PORT_LCA_MASK;
	data &= ~ADP_CS_5_LCA_MASK;
	data |= (credits << ADP_CS_5_LCA_SHIFT) & ADP_CS_5_LCA_MASK;

	return tb_port_write(port, &data, TB_CFG_PORT, 5, 1);
	return tb_port_write(port, &data, TB_CFG_PORT, ADP_CS_5, 1);
}

/**
+8 −7
Original line number Diff line number Diff line
@@ -211,13 +211,14 @@ struct tb_regs_port_header {

} __packed;

/* DWORD 4 */
#define TB_PORT_NFC_CREDITS_MASK	GENMASK(19, 0)
#define TB_PORT_MAX_CREDITS_SHIFT	20
#define TB_PORT_MAX_CREDITS_MASK	GENMASK(26, 20)
/* DWORD 5 */
#define TB_PORT_LCA_SHIFT		22
#define TB_PORT_LCA_MASK		GENMASK(28, 22)
/* Basic adapter configuration registers */
#define ADP_CS_4				0x04
#define ADP_CS_4_NFC_BUFFERS_MASK		GENMASK(9, 0)
#define ADP_CS_4_TOTAL_BUFFERS_MASK		GENMASK(29, 20)
#define ADP_CS_4_TOTAL_BUFFERS_SHIFT		20
#define ADP_CS_5				0x05
#define ADP_CS_5_LCA_MASK			GENMASK(28, 22)
#define ADP_CS_5_LCA_SHIFT			22

/* Display Port adapter registers */

+5 −5
Original line number Diff line number Diff line
@@ -324,12 +324,12 @@ static void tb_dp_init_video_path(struct tb_path *path, bool discover)
	path->weight = 1;

	if (discover) {
		path->nfc_credits = nfc_credits & TB_PORT_NFC_CREDITS_MASK;
		path->nfc_credits = nfc_credits & ADP_CS_4_NFC_BUFFERS_MASK;
	} else {
		u32 max_credits;

		max_credits = (nfc_credits & TB_PORT_MAX_CREDITS_MASK) >>
			TB_PORT_MAX_CREDITS_SHIFT;
		max_credits = (nfc_credits & ADP_CS_4_TOTAL_BUFFERS_MASK) >>
			ADP_CS_4_TOTAL_BUFFERS_SHIFT;
		/* Leave some credits for AUX path */
		path->nfc_credits = min(max_credits - 2, 12U);
	}
@@ -478,8 +478,8 @@ static u32 tb_dma_credits(struct tb_port *nhi)
{
	u32 max_credits;

	max_credits = (nhi->config.nfc_credits & TB_PORT_MAX_CREDITS_MASK) >>
		TB_PORT_MAX_CREDITS_SHIFT;
	max_credits = (nhi->config.nfc_credits & ADP_CS_4_TOTAL_BUFFERS_MASK) >>
		ADP_CS_4_TOTAL_BUFFERS_SHIFT;
	return min(max_credits, 13U);
}