X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=carlfw%2Fsrc%2Fcmd.c;h=2bbfcffaa71f1cacbdda4b33ddcee3e60eef8c72;hb=f064ea52ed3ab342b7f2d31ac88239ceac5bc214;hp=6c9f45e91c06ef0dddfe6e2582e9e0f16c3915bd;hpb=fa4d2c34ac5c90976d3821827e7dadb372ad0678;p=carl9170fw.git diff --git a/carlfw/src/cmd.c b/carlfw/src/cmd.c index 6c9f45e..2bbfcff 100644 --- a/carlfw/src/cmd.c +++ b/carlfw/src/cmd.c @@ -6,7 +6,7 @@ * Copyright (c) 2000-2005 ZyDAS Technology Corporation * Copyright (c) 2007-2009 Atheros Communications, Inc. * Copyright 2009 Johannes Berg - * Copyright 2009, 2010 Christian Lamparter + * Copyright 2009-2011 Christian Lamparter * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -81,12 +81,18 @@ void handle_cmd(struct carl9170_rsp *resp) read_tsf((uint32_t *)resp->tsf.tsf); break; + case CARL9170_CMD_RX_FILTER: + resp->hdr.len = 0; + fw.wlan.rx_filter = cmd->rx_filter.rx_filter; + break; + #ifdef CONFIG_CARL9170FW_CAB_QUEUE case CARL9170_CMD_BCN_CTRL: resp->hdr.len = 0; if (cmd->bcn_ctrl.mode & CARL9170_BCN_CTRL_CAB_TRIGGER) { - wlan_cab_modify_dtim_beacon(cmd->bcn_ctrl.vif_id); + wlan_modify_beacon(cmd->bcn_ctrl.vif_id, + cmd->bcn_ctrl.bcn_addr, cmd->bcn_ctrl.bcn_len); set(AR9170_MAC_REG_BCN_ADDR, cmd->bcn_ctrl.bcn_addr); set(AR9170_MAC_REG_BCN_LENGTH, cmd->bcn_ctrl.bcn_len); set(AR9170_MAC_REG_BCN_CTRL, AR9170_BCN_CTRL_READY); @@ -122,13 +128,11 @@ void handle_cmd(struct carl9170_rsp *resp) rf_notify_set_channel(); break; -# ifdef CONFIG_CARL9170FW_PSM case CARL9170_CMD_PSM: resp->hdr.len = 0; fw.phy.psm.state = le32_to_cpu(cmd->psm.state); rf_psm(); break; -# endif /* CONFIG_CARL9170FW_PSM */ #endif /* CONFIG_CARL9170FW_RADIO_FUNCTIOS */ default: