2 * This file is part of wl18xx
4 * Copyright (C) 2011 Texas Instruments Inc.
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * version 2 as published by the Free Software Foundation.
10 * This program is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
22 #include "../wlcore/cmd.h"
23 #include "../wlcore/debug.h"
24 #include "../wlcore/acx.h"
28 int wl18xx_acx_host_if_cfg_bitmap(struct wl1271
*wl
, u32 host_cfg_bitmap
,
29 u32 sdio_blk_size
, u32 extra_mem_blks
,
32 struct wl18xx_acx_host_config_bitmap
*bitmap_conf
;
35 wl1271_debug(DEBUG_ACX
, "acx cfg bitmap %d blk %d spare %d field %d",
36 host_cfg_bitmap
, sdio_blk_size
, extra_mem_blks
,
39 bitmap_conf
= kzalloc(sizeof(*bitmap_conf
), GFP_KERNEL
);
45 bitmap_conf
->host_cfg_bitmap
= cpu_to_le32(host_cfg_bitmap
);
46 bitmap_conf
->host_sdio_block_size
= cpu_to_le32(sdio_blk_size
);
47 bitmap_conf
->extra_mem_blocks
= cpu_to_le32(extra_mem_blks
);
48 bitmap_conf
->length_field_size
= cpu_to_le32(len_field_size
);
50 ret
= wl1271_cmd_configure(wl
, ACX_HOST_IF_CFG_BITMAP
,
51 bitmap_conf
, sizeof(*bitmap_conf
));
53 wl1271_warning("wl1271 bitmap config opt failed: %d", ret
);
63 int wl18xx_acx_set_checksum_state(struct wl1271
*wl
)
65 struct wl18xx_acx_checksum_state
*acx
;
68 wl1271_debug(DEBUG_ACX
, "acx checksum state");
70 acx
= kzalloc(sizeof(*acx
), GFP_KERNEL
);
76 acx
->checksum_state
= CHECKSUM_OFFLOAD_ENABLED
;
78 ret
= wl1271_cmd_configure(wl
, ACX_CHECKSUM_CONFIG
, acx
, sizeof(*acx
));
80 wl1271_warning("failed to set Tx checksum state: %d", ret
);