mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-24 03:24:55 +08:00
wl1271: use channel 1 when configuring the data path
In the data path configuration, one of the parameters is the channel. We have been setting it to wl->channel, which is not correct in this case. This channel has nothing to do with the channel we're currently tuned to, since it is only used for calibration during this phase. Hardcoded the channel to 1, according to the reference driver. Signed-off-by: Luciano Coelho <luciano.coelho@nokia.com> Reviewed-by: Juuso Oikarinen <juuso.oikarinen@nokia.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
3ed8f2c614
commit
94210897e2
@ -505,7 +505,7 @@ int wl1271_cmd_configure(struct wl1271 *wl, u16 id, void *buf, size_t len)
|
||||
return 0;
|
||||
}
|
||||
|
||||
int wl1271_cmd_data_path(struct wl1271 *wl, u8 channel, bool enable)
|
||||
int wl1271_cmd_data_path(struct wl1271 *wl, bool enable)
|
||||
{
|
||||
struct cmd_enabledisable_path *cmd;
|
||||
int ret;
|
||||
@ -519,7 +519,8 @@ int wl1271_cmd_data_path(struct wl1271 *wl, u8 channel, bool enable)
|
||||
goto out;
|
||||
}
|
||||
|
||||
cmd->channel = channel;
|
||||
/* the channel here is only used for calibration, so hardcoded to 1 */
|
||||
cmd->channel = 1;
|
||||
|
||||
if (enable) {
|
||||
cmd_rx = CMD_ENABLE_RX;
|
||||
@ -532,22 +533,22 @@ int wl1271_cmd_data_path(struct wl1271 *wl, u8 channel, bool enable)
|
||||
ret = wl1271_cmd_send(wl, cmd_rx, cmd, sizeof(*cmd), 0);
|
||||
if (ret < 0) {
|
||||
wl1271_error("rx %s cmd for channel %d failed",
|
||||
enable ? "start" : "stop", channel);
|
||||
enable ? "start" : "stop", cmd->channel);
|
||||
goto out;
|
||||
}
|
||||
|
||||
wl1271_debug(DEBUG_BOOT, "rx %s cmd channel %d",
|
||||
enable ? "start" : "stop", channel);
|
||||
enable ? "start" : "stop", cmd->channel);
|
||||
|
||||
ret = wl1271_cmd_send(wl, cmd_tx, cmd, sizeof(*cmd), 0);
|
||||
if (ret < 0) {
|
||||
wl1271_error("tx %s cmd for channel %d failed",
|
||||
enable ? "start" : "stop", channel);
|
||||
enable ? "start" : "stop", cmd->channel);
|
||||
return ret;
|
||||
}
|
||||
|
||||
wl1271_debug(DEBUG_BOOT, "tx %s cmd channel %d",
|
||||
enable ? "start" : "stop", channel);
|
||||
enable ? "start" : "stop", cmd->channel);
|
||||
|
||||
out:
|
||||
kfree(cmd);
|
||||
|
@ -37,7 +37,7 @@ int wl1271_cmd_join(struct wl1271 *wl);
|
||||
int wl1271_cmd_test(struct wl1271 *wl, void *buf, size_t buf_len, u8 answer);
|
||||
int wl1271_cmd_interrogate(struct wl1271 *wl, u16 id, void *buf, size_t len);
|
||||
int wl1271_cmd_configure(struct wl1271 *wl, u16 id, void *buf, size_t len);
|
||||
int wl1271_cmd_data_path(struct wl1271 *wl, u8 channel, bool enable);
|
||||
int wl1271_cmd_data_path(struct wl1271 *wl, bool enable);
|
||||
int wl1271_cmd_ps_mode(struct wl1271 *wl, u8 ps_mode);
|
||||
int wl1271_cmd_read_memory(struct wl1271 *wl, u32 addr, void *answer,
|
||||
size_t len);
|
||||
|
@ -289,7 +289,7 @@ int wl1271_hw_init(struct wl1271 *wl)
|
||||
goto out_free_memmap;
|
||||
|
||||
/* Enable data path */
|
||||
ret = wl1271_cmd_data_path(wl, wl->channel, 1);
|
||||
ret = wl1271_cmd_data_path(wl, 1);
|
||||
if (ret < 0)
|
||||
goto out_free_memmap;
|
||||
|
||||
|
@ -384,7 +384,7 @@ static int wl1271_plt_init(struct wl1271 *wl)
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
|
||||
ret = wl1271_cmd_data_path(wl, wl->channel, 1);
|
||||
ret = wl1271_cmd_data_path(wl, 1);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user