Commit 96f6975b authored by Malcolm Priestley's avatar Malcolm Priestley Committed by Greg Kroah-Hartman
Browse files

staging: vt6656: Create new function to set led state.



Create vnt_mac_set_led to set state and led.

state has two modes LEDSTS_TMLEN which sets the blink rate
on TX activity and LEDSTS_STS which sets the led.

As result of this patch ControlvMaskByte becomes dead code.

Signed-off-by: default avatarMalcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 285d58c4
Loading
Loading
Loading
Loading
+6 −8
Original line number Diff line number Diff line
@@ -1015,10 +1015,10 @@ void BSSvSecondCallBack(struct work_struct *work)
				pMgmt->eCurrState = WMAC_STATE_IDLE;
				netif_stop_queue(pDevice->dev);
				pDevice->bLinkPass = false;
				ControlvMaskByte(pDevice,
						 MESSAGE_REQUEST_MACREG,
						 MAC_REG_PAPEDELAY, LEDSTS_STS,

				vnt_mac_set_led(pDevice, LEDSTS_STS,
								LEDSTS_SLOW);

				pDevice->bRoaming = true;
				pDevice->bIsRoaming = false;

@@ -1126,9 +1126,7 @@ void BSSvSecondCallBack(struct work_struct *work)
				pMgmt->eCurrState = WMAC_STATE_STARTED;
				netif_stop_queue(pDevice->dev);
				pDevice->bLinkPass = false;
				ControlvMaskByte(pDevice,
						 MESSAGE_REQUEST_MACREG,
						 MAC_REG_PAPEDELAY, LEDSTS_STS,
				vnt_mac_set_led(pDevice, LEDSTS_STS,
								LEDSTS_SLOW);
			}
		}
+1 −3
Original line number Diff line number Diff line
@@ -442,9 +442,7 @@ int iwctl_siwmode(struct net_device *dev, struct iw_request_info *info,
				memset(pMgmt->abyCurrBSSID, 0, 6);
			}

			ControlvMaskByte(pDevice,
				MESSAGE_REQUEST_MACREG,	MAC_REG_PAPEDELAY,
					LEDSTS_STS, LEDSTS_SLOW);
			vnt_mac_set_led(pDevice, LEDSTS_STS, LEDSTS_SLOW);

			netif_stop_queue(pDevice->dev);

+13 −0
Original line number Diff line number Diff line
@@ -240,3 +240,16 @@ void MACvWriteBeaconInterval(struct vnt_private *priv, u16 interval)
	vnt_control_out(priv, MESSAGE_TYPE_WRITE,
		MAC_REG_BI, MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);
}

void vnt_mac_set_led(struct vnt_private *priv, u8 state, u8 led)
{
	u8 data[2];

	data[0] = led;
	data[1] = state;

	vnt_control_out(priv, MESSAGE_TYPE_WRITE_MASK, MAC_REG_PAPEDELAY,
			MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);

	return;
}
+1 −0
Original line number Diff line number Diff line
@@ -428,5 +428,6 @@ void MACvDisableProtectMD(struct vnt_private *);
void MACvEnableBarkerPreambleMd(struct vnt_private *);
void MACvDisableBarkerPreambleMd(struct vnt_private *);
void MACvWriteBeaconInterval(struct vnt_private *, u16);
void vnt_mac_set_led(struct vnt_private *priv, u8, u8);

#endif /* __MAC_H__ */
+2 −4
Original line number Diff line number Diff line
@@ -551,11 +551,9 @@ static int device_init_registers(struct vnt_private *pDevice)

	}

	ControlvMaskByte(pDevice, MESSAGE_REQUEST_MACREG,
				MAC_REG_PAPEDELAY, LEDSTS_TMLEN, 0x38);
	vnt_mac_set_led(pDevice, LEDSTS_TMLEN, 0x38);

	ControlvMaskByte(pDevice, MESSAGE_REQUEST_MACREG,
				MAC_REG_PAPEDELAY, LEDSTS_STS, LEDSTS_SLOW);
	vnt_mac_set_led(pDevice, LEDSTS_STS, LEDSTS_SLOW);

	MACvRegBitsOn(pDevice, MAC_REG_GPIOCTL0, 0x01);

Loading