ret = lbs_cmd_reg_access(cmdptr, cmd_action, pdata_buf);
                break;
 
-       case CMD_802_11_SET_AFC:
-       case CMD_802_11_GET_AFC:
-
-               cmdptr->command = cpu_to_le16(cmd_no);
-               cmdptr->size = cpu_to_le16(sizeof(struct cmd_ds_802_11_afc) +
-                                          sizeof(struct cmd_header));
-
-               memmove(&cmdptr->params.afc,
-                       pdata_buf, sizeof(struct cmd_ds_802_11_afc));
-
-               ret = 0;
-               goto done;
-
 #ifdef CONFIG_LIBERTAS_MESH
 
        case CMD_BT_ACCESS:
 
                ret = lbs_ret_reg_access(priv, respcmd, resp);
                break;
 
-       case CMD_RET(CMD_802_11_SET_AFC):
-       case CMD_RET(CMD_802_11_GET_AFC):
-               spin_lock_irqsave(&priv->driver_lock, flags);
-               memmove((void *)priv->cur_cmd->callback_arg, &resp->params.afc,
-                       sizeof(struct cmd_ds_802_11_afc));
-               spin_unlock_irqrestore(&priv->driver_lock, flags);
-
-               break;
-
        case CMD_RET(CMD_802_11_BEACON_STOP):
                break;
 
 
        u8 data[256];
 } __packed;
 
+/* Automatic Frequency Control */
 struct cmd_ds_802_11_afc {
+       struct cmd_header hdr;
+
        __le16 afc_auto;
        union {
                struct {
                struct cmd_ds_bbp_reg_access bbpreg;
                struct cmd_ds_rf_reg_access rfreg;
 
-               struct cmd_ds_802_11_afc afc;
                struct cmd_ds_802_11_led_ctrl ledgpio;
 
                struct cmd_ds_bt_access bt;