Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4f21e7e4 authored by John W. Linville's avatar John W. Linville
Browse files
parents 5ba0eb4a 2470b36e
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -151,7 +151,7 @@ int iwl_send_add_sta(struct iwl_priv *priv,
		       sta_id, sta->sta.addr, flags & CMD_ASYNC ?  "a" : "");

	if (!(flags & CMD_ASYNC)) {
		cmd.flags |= CMD_WANT_SKB | CMD_WANT_HCMD;
		cmd.flags |= CMD_WANT_SKB;
		might_sleep();
	}

+1 −1
Original line number Diff line number Diff line
@@ -363,7 +363,7 @@ TRACE_EVENT(iwlwifi_dev_hcmd,
		__entry->flags = cmd->flags;
		memcpy(__get_dynamic_array(hcmd), hdr, sizeof(*hdr));

		for (i = 0; i < IWL_MAX_CMD_TFDS; i++) {
		for (i = 0; i < IWL_MAX_CMD_TBS_PER_TFD; i++) {
			if (!cmd->len[i])
				continue;
			memcpy((u8 *)__get_dynamic_array(hcmd) + offset,
+1 −2
Original line number Diff line number Diff line
@@ -1102,7 +1102,6 @@ void iwl_drv_stop(struct iwl_drv *drv)

/* shared module parameters */
struct iwl_mod_params iwlwifi_mod_params = {
	.amsdu_size_8K = 1,
	.restart_fw = 1,
	.plcp_check = true,
	.bt_coex_active = true,
@@ -1207,7 +1206,7 @@ MODULE_PARM_DESC(11n_disable,
	"disable 11n functionality, bitmap: 1: full, 2: agg TX, 4: agg RX");
module_param_named(amsdu_size_8K, iwlwifi_mod_params.amsdu_size_8K,
		   int, S_IRUGO);
MODULE_PARM_DESC(amsdu_size_8K, "enable 8K amsdu size");
MODULE_PARM_DESC(amsdu_size_8K, "enable 8K amsdu size (default 0)");
module_param_named(fw_restart, iwlwifi_mod_params.restart_fw, int, S_IRUGO);
MODULE_PARM_DESC(fw_restart, "restart firmware in case of error");

+1 −1
Original line number Diff line number Diff line
@@ -91,7 +91,7 @@ enum iwl_power_level {
 * @sw_crypto: using hardware encryption, default = 0
 * @disable_11n: disable 11n capabilities, default = 0,
 *	use IWL_DISABLE_HT_* constants
 * @amsdu_size_8K: enable 8K amsdu size, default = 1
 * @amsdu_size_8K: enable 8K amsdu size, default = 0
 * @restart_fw: restart firmware, default = 1
 * @plcp_check: enable plcp health check, default = true
 * @wd_disable: enable stuck queue check, default = 0
+9 −11
Original line number Diff line number Diff line
@@ -186,19 +186,13 @@ struct iwl_rx_packet {
 * @CMD_ASYNC: Return right away and don't want for the response
 * @CMD_WANT_SKB: valid only with CMD_SYNC. The caller needs the buffer of the
 *	response. The caller needs to call iwl_free_resp when done.
 * @CMD_WANT_HCMD: The caller needs to get the HCMD that was sent in the
 *	response handler. Chunks flagged by %IWL_HCMD_DFL_NOCOPY won't be
 *	copied. The pointer passed to the response handler is in the transport
 *	ownership and don't need to be freed by the op_mode. This also means
 *	that the pointer is invalidated after the op_mode's handler returns.
 * @CMD_ON_DEMAND: This command is sent by the test mode pipe.
 */
enum CMD_MODE {
	CMD_SYNC		= 0,
	CMD_ASYNC		= BIT(0),
	CMD_WANT_SKB		= BIT(1),
	CMD_WANT_HCMD		= BIT(2),
	CMD_ON_DEMAND		= BIT(3),
	CMD_ON_DEMAND		= BIT(2),
};

#define DEF_CMD_PAYLOAD_SIZE 320
@@ -217,7 +211,11 @@ struct iwl_device_cmd {

#define TFD_MAX_PAYLOAD_SIZE (sizeof(struct iwl_device_cmd))

#define IWL_MAX_CMD_TFDS	2
/*
 * number of transfer buffers (fragments) per transmit frame descriptor;
 * this is just the driver's idea, the hardware supports 20
 */
#define IWL_MAX_CMD_TBS_PER_TFD	2

/**
 * struct iwl_hcmd_dataflag - flag for each one of the chunks of the command
@@ -254,15 +252,15 @@ enum iwl_hcmd_dataflag {
 * @id: id of the host command
 */
struct iwl_host_cmd {
	const void *data[IWL_MAX_CMD_TFDS];
	const void *data[IWL_MAX_CMD_TBS_PER_TFD];
	struct iwl_rx_packet *resp_pkt;
	unsigned long _rx_page_addr;
	u32 _rx_page_order;
	int handler_status;

	u32 flags;
	u16 len[IWL_MAX_CMD_TFDS];
	u8 dataflags[IWL_MAX_CMD_TFDS];
	u16 len[IWL_MAX_CMD_TBS_PER_TFD];
	u8 dataflags[IWL_MAX_CMD_TBS_PER_TFD];
	u8 id;
};

Loading