aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/wl12xx/cmd.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/wl12xx/cmd.c')
-rw-r--r--drivers/net/wireless/wl12xx/cmd.c84
1 files changed, 84 insertions, 0 deletions
diff --git a/drivers/net/wireless/wl12xx/cmd.c b/drivers/net/wireless/wl12xx/cmd.c
index f3d332d11f81..c9a1fa523274 100644
--- a/drivers/net/wireless/wl12xx/cmd.c
+++ b/drivers/net/wireless/wl12xx/cmd.c
@@ -1234,3 +1234,87 @@ out_free:
1234out: 1234out:
1235 return ret; 1235 return ret;
1236} 1236}
1237
1238int wl12xx_cmd_config_fwlog(struct wl1271 *wl)
1239{
1240 struct wl12xx_cmd_config_fwlog *cmd;
1241 int ret = 0;
1242
1243 wl1271_debug(DEBUG_CMD, "cmd config firmware logger");
1244
1245 cmd = kzalloc(sizeof(*cmd), GFP_KERNEL);
1246 if (!cmd) {
1247 ret = -ENOMEM;
1248 goto out;
1249 }
1250
1251 cmd->logger_mode = wl->conf.fwlog.mode;
1252 cmd->log_severity = wl->conf.fwlog.severity;
1253 cmd->timestamp = wl->conf.fwlog.timestamp;
1254 cmd->output = wl->conf.fwlog.output;
1255 cmd->threshold = wl->conf.fwlog.threshold;
1256
1257 ret = wl1271_cmd_send(wl, CMD_CONFIG_FWLOGGER, cmd, sizeof(*cmd), 0);
1258 if (ret < 0) {
1259 wl1271_error("failed to send config firmware logger command");
1260 goto out_free;
1261 }
1262
1263out_free:
1264 kfree(cmd);
1265
1266out:
1267 return ret;
1268}
1269
1270int wl12xx_cmd_start_fwlog(struct wl1271 *wl)
1271{
1272 struct wl12xx_cmd_start_fwlog *cmd;
1273 int ret = 0;
1274
1275 wl1271_debug(DEBUG_CMD, "cmd start firmware logger");
1276
1277 cmd = kzalloc(sizeof(*cmd), GFP_KERNEL);
1278 if (!cmd) {
1279 ret = -ENOMEM;
1280 goto out;
1281 }
1282
1283 ret = wl1271_cmd_send(wl, CMD_START_FWLOGGER, cmd, sizeof(*cmd), 0);
1284 if (ret < 0) {
1285 wl1271_error("failed to send start firmware logger command");
1286 goto out_free;
1287 }
1288
1289out_free:
1290 kfree(cmd);
1291
1292out:
1293 return ret;
1294}
1295
1296int wl12xx_cmd_stop_fwlog(struct wl1271 *wl)
1297{
1298 struct wl12xx_cmd_stop_fwlog *cmd;
1299 int ret = 0;
1300
1301 wl1271_debug(DEBUG_CMD, "cmd stop firmware logger");
1302
1303 cmd = kzalloc(sizeof(*cmd), GFP_KERNEL);
1304 if (!cmd) {
1305 ret = -ENOMEM;
1306 goto out;
1307 }
1308
1309 ret = wl1271_cmd_send(wl, CMD_STOP_FWLOGGER, cmd, sizeof(*cmd), 0);
1310 if (ret < 0) {
1311 wl1271_error("failed to send stop firmware logger command");
1312 goto out_free;
1313 }
1314
1315out_free:
1316 kfree(cmd);
1317
1318out:
1319 return ret;
1320}