Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9fe109c1 authored by Malcolm Priestley's avatar Malcolm Priestley Committed by Greg Kroah-Hartman
Browse files

staging: vt6656: vnt_update_ifs vendor changes to uSIFS/uDIFS



The latest vendor code makes changes to uSIFS and uDIFS.

The orginal codes have been rearranged into a fall through switch
statement.

These reduce the time that device allows to TX packets and
improves throughput.

Signed-off-by: default avatarMalcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 4473c8cc
Loading
Loading
Loading
Loading
+30 −0
Original line number Diff line number Diff line
@@ -408,6 +408,36 @@ void vnt_update_ifs(struct vnt_private *priv)
	priv->uCwMax = C_CWMAX;
	priv->uEIFS = C_EIFS;

	switch (priv->byRFType) {
	case RF_VT3226D0:
		if (priv->byBBType != BB_TYPE_11B) {
			priv->uSIFS -= 1;
			priv->uDIFS -= 1;
			break;
		}
	case RF_AIROHA7230:
	case RF_AL2230:
	case RF_AL2230S:
		if (priv->byBBType != BB_TYPE_11B)
			break;
	case RF_RFMD2959:
	case RF_VT3226:
	case RF_VT3342A0:
		priv->uSIFS -= 3;
		priv->uDIFS -= 3;
		break;
	case RF_MAXIM2829:
		if (priv->byBBType == BB_TYPE_11A) {
			priv->uSIFS -= 5;
			priv->uDIFS -= 5;
		} else {
			priv->uSIFS -= 2;
			priv->uDIFS -= 2;
		}

		break;
	}

	data[0] = (u8)priv->uSIFS;
	data[1] = (u8)priv->uDIFS;
	data[2] = (u8)priv->uEIFS;