View | Details | Raw Unified | Return to bug 12588 | Differences between
and this patch

Collapse All | Expand All

(-)a/drivers/net/wireless/rtl818x/rtl8180_dev.c (-4 / +8 lines)
Lines 103-108 static void rtl8180_handle_rx(struct ieee80211_hw *dev) Link Here
103
{
103
{
104
	struct rtl8180_priv *priv = dev->priv;
104
	struct rtl8180_priv *priv = dev->priv;
105
	unsigned int count = 32;
105
	unsigned int count = 32;
106
	u8 signal;
106
107
107
	while (count--) {
108
	while (count--) {
108
		struct rtl8180_rx_desc *entry = &priv->rx_ring[priv->rx_idx];
109
		struct rtl8180_rx_desc *entry = &priv->rx_ring[priv->rx_idx];
Lines 130-139 static void rtl8180_handle_rx(struct ieee80211_hw *dev) Link Here
130
			skb_put(skb, flags & 0xFFF);
131
			skb_put(skb, flags & 0xFFF);
131
132
132
			rx_status.antenna = (flags2 >> 15) & 1;
133
			rx_status.antenna = (flags2 >> 15) & 1;
133
			/* TODO: improve signal/rssi reporting */
134
			rx_status.signal = (flags2 >> 8) & 0x7F;
135
			/* XXX: is this correct? */
136
			rx_status.rate_idx = (flags >> 20) & 0xF;
134
			rx_status.rate_idx = (flags >> 20) & 0xF;
135
			/* TODO: improve signal/rssi reporting for !rtl8185 */
136
			signal = (flags2 >> 17) & 0x7F;
137
			if (rx_status.rate_idx > 3)
138
				signal = 90 - clamp_t(u8, signal, 25, 90);
139
			else
140
				signal = 95 - clamp_t(u8, signal, 30, 95);
141
			rx_status.signal = signal;
137
			rx_status.freq = dev->conf.channel->center_freq;
142
			rx_status.freq = dev->conf.channel->center_freq;
138
			rx_status.band = dev->conf.channel->band;
143
			rx_status.band = dev->conf.channel->band;
139
			rx_status.mactime = le64_to_cpu(entry->tsft);
144
			rx_status.mactime = le64_to_cpu(entry->tsft);
140
- 

Return to bug 12588