Loading fw/htt.h +56 −30 Original line number Diff line number Diff line Loading @@ -235,9 +235,10 @@ * 3.108 Add HTT_H2T_MSG_TYPE_UMAC_HANG_RECOVERY_PREREQUISITE_SETUP def. * 3.109 Add HTT_T2H RX_ADDBA_EXTN,RX_DELBA_EXTN defs. * 3.110 Add more word_mask fields in htt_tx_monitor_cfg_t. * 3.111 Add RXPCU filter enable flag in RX_RING_SELECTION_CFG msg. */ #define HTT_CURRENT_VERSION_MAJOR 3 #define HTT_CURRENT_VERSION_MINOR 110 #define HTT_CURRENT_VERSION_MINOR 111 #define HTT_NUM_TX_FRAG_DESC 1024 Loading Loading @@ -5535,38 +5536,43 @@ enum htt_srng_ring_id { * * The message would appear as follows: * * |31 28|27|26|25|24|23 16|15 | 11| 10|9 8|7 0| * |-----+--+--+--+--+----------------+----+---+---+---+---------------| * |31 28|27|26|25|24|23|22|21 19|18 16|15 | 11| 10|9 8|7 0| * |-----+--+--+--+--+-----------------+----+---+---+---+---------------| * |rsvd1|DT|OV|PS|SS| ring_id | pdev_id | msg_type | * |-------------------------------------------------------------------| * | rsvd2 | ring_buffer_size | * |-------------------------------------------------------------------| * |-----------------------+-----+-----+--------------------------------| * |rsvd2|RX|RXHDL| CLD | CLC | CLM | ring_buffer_size | * |--------------------------------------------------------------------| * | packet_type_enable_flags_0 | * |-------------------------------------------------------------------| * |--------------------------------------------------------------------| * | packet_type_enable_flags_1 | * |-------------------------------------------------------------------| * |--------------------------------------------------------------------| * | packet_type_enable_flags_2 | * |-------------------------------------------------------------------| * |--------------------------------------------------------------------| * | packet_type_enable_flags_3 | * |-------------------------------------------------------------------| * |--------------------------------------------------------------------| * | tlv_filter_in_flags | * |-------------------------------------------------------------------| * |-----------------------------------+--------------------------------| * | rx_header_offset | rx_packet_offset | * |-------------------------------------------------------------------| * |-----------------------------------+--------------------------------| * | rx_mpdu_start_offset | rx_mpdu_end_offset | * |-------------------------------------------------------------------| * |-----------------------------------+--------------------------------| * | rx_msdu_start_offset | rx_msdu_end_offset | * |-------------------------------------------------------------------| * |-----------------------------------+--------------------------------| * | rsvd3 | rx_attention_offset | * |-------------------------------------------------------------------| * |--------------------------------------------------------------------| * | rsvd4 | mo| fp| rx_drop_threshold | * | |ndp|ndp| | * |-------------------------------------------------------------------| * |--------------------------------------------------------------------| * Where: * PS = pkt_swap * SS = status_swap * OV = rx_offsets_valid * DT = drop_thresh_valid * CLM = config_length_mgmt * CLC = config_length_ctrl * CLD = config_length_data * RXHDL = rx_hdr_len * RX = rxpcu_filter_enable_flag * The message is interpreted as follows: * dword0 - b'0:7 - msg_type: This will be set to * 0xc (HTT_H2T_MSG_TYPE_RX_RING_SELECTION_CFG) Loading Loading @@ -5620,7 +5626,15 @@ enum htt_srng_ring_id { * 10 - 128bytes * 11 - 256bytes * default - 128 bytes * b'27:31 - rsvd2: Reserved for future use * b'27 - rxpcu_filter_enable_flag * For Scan Radio Host CPU utilization is very high. * In order to reduce CPU utilization we need to filter out * certain configured MAC frames. * To filter out configured MAC address frames, RxPCU should * be zero which means allow all frames for MD at RxOLE * host wil fiter out frames. * RxPCU (Filter IN) -> RxOLE (Filter In/Filter Out) * b'28:31 - rsvd2: Reserved for future use * dword2 - b'0:31 - packet_type_enable_flags_0: * Enable MGMT packet from 0b0000 to 0b1001 * bits from low to high: FP, MD, MO - 3 bits Loading Loading @@ -5759,7 +5773,8 @@ PREPACK struct htt_rx_ring_selection_cfg_t { config_length_ctrl:3, config_length_data:3, rx_hdr_len: 2, rsvd2: 5; rxpcu_filter_enable_flag:1, rsvd2: 4; A_UINT32 packet_type_enable_flags_0; A_UINT32 packet_type_enable_flags_1; A_UINT32 packet_type_enable_flags_2; Loading Loading @@ -5933,6 +5948,17 @@ PREPACK struct htt_rx_ring_selection_cfg_t { ((_var) |= ((_val) << HTT_RX_RING_SELECTION_CFG_RX_HDR_LEN_S));\ } while(0) #define HTT_RX_RING_SELECTION_CFG_RXPCU_FILTER_M 0x08000000 #define HTT_RX_RING_SELECTION_CFG_RXPXU_FILTER_S 27 #define HTT_RX_RING_SELECTION_CFG_RXPCU_FILTER_GET(_var) \ (((_var) & HTT_RX_RING_SELECTION_CFG_RXPCU_FILTER_M) >> \ HTT_RX_RING_SELECTION_CFG_RXPXU_FILTER_S) #define HTT_RX_RING_SELECTION_CFG_RXPCU_FILTER_SET(_var, _val) \ do { \ HTT_CHECK_SET_VAL( HTT_RX_RING_SELECTION_CFG_RXPCU_FILTER, _val); \ ((_var) |= ((_val) << HTT_RX_RING_SELECTION_CFG_RXPXU_FILTER_S));\ } while(0) #define HTT_RX_RING_SELECTION_CFG_PKT_TYPE_ENABLE_FLAG_0_M 0xffffffff #define HTT_RX_RING_SELECTION_CFG_PKT_TYPE_ENABLE_FLAG_0_S 0 #define HTT_RX_RING_SELECTION_CFG_PKT_TYPE_ENABLE_FLAG_0_GET(_var) \ Loading Loading
fw/htt.h +56 −30 Original line number Diff line number Diff line Loading @@ -235,9 +235,10 @@ * 3.108 Add HTT_H2T_MSG_TYPE_UMAC_HANG_RECOVERY_PREREQUISITE_SETUP def. * 3.109 Add HTT_T2H RX_ADDBA_EXTN,RX_DELBA_EXTN defs. * 3.110 Add more word_mask fields in htt_tx_monitor_cfg_t. * 3.111 Add RXPCU filter enable flag in RX_RING_SELECTION_CFG msg. */ #define HTT_CURRENT_VERSION_MAJOR 3 #define HTT_CURRENT_VERSION_MINOR 110 #define HTT_CURRENT_VERSION_MINOR 111 #define HTT_NUM_TX_FRAG_DESC 1024 Loading Loading @@ -5535,38 +5536,43 @@ enum htt_srng_ring_id { * * The message would appear as follows: * * |31 28|27|26|25|24|23 16|15 | 11| 10|9 8|7 0| * |-----+--+--+--+--+----------------+----+---+---+---+---------------| * |31 28|27|26|25|24|23|22|21 19|18 16|15 | 11| 10|9 8|7 0| * |-----+--+--+--+--+-----------------+----+---+---+---+---------------| * |rsvd1|DT|OV|PS|SS| ring_id | pdev_id | msg_type | * |-------------------------------------------------------------------| * | rsvd2 | ring_buffer_size | * |-------------------------------------------------------------------| * |-----------------------+-----+-----+--------------------------------| * |rsvd2|RX|RXHDL| CLD | CLC | CLM | ring_buffer_size | * |--------------------------------------------------------------------| * | packet_type_enable_flags_0 | * |-------------------------------------------------------------------| * |--------------------------------------------------------------------| * | packet_type_enable_flags_1 | * |-------------------------------------------------------------------| * |--------------------------------------------------------------------| * | packet_type_enable_flags_2 | * |-------------------------------------------------------------------| * |--------------------------------------------------------------------| * | packet_type_enable_flags_3 | * |-------------------------------------------------------------------| * |--------------------------------------------------------------------| * | tlv_filter_in_flags | * |-------------------------------------------------------------------| * |-----------------------------------+--------------------------------| * | rx_header_offset | rx_packet_offset | * |-------------------------------------------------------------------| * |-----------------------------------+--------------------------------| * | rx_mpdu_start_offset | rx_mpdu_end_offset | * |-------------------------------------------------------------------| * |-----------------------------------+--------------------------------| * | rx_msdu_start_offset | rx_msdu_end_offset | * |-------------------------------------------------------------------| * |-----------------------------------+--------------------------------| * | rsvd3 | rx_attention_offset | * |-------------------------------------------------------------------| * |--------------------------------------------------------------------| * | rsvd4 | mo| fp| rx_drop_threshold | * | |ndp|ndp| | * |-------------------------------------------------------------------| * |--------------------------------------------------------------------| * Where: * PS = pkt_swap * SS = status_swap * OV = rx_offsets_valid * DT = drop_thresh_valid * CLM = config_length_mgmt * CLC = config_length_ctrl * CLD = config_length_data * RXHDL = rx_hdr_len * RX = rxpcu_filter_enable_flag * The message is interpreted as follows: * dword0 - b'0:7 - msg_type: This will be set to * 0xc (HTT_H2T_MSG_TYPE_RX_RING_SELECTION_CFG) Loading Loading @@ -5620,7 +5626,15 @@ enum htt_srng_ring_id { * 10 - 128bytes * 11 - 256bytes * default - 128 bytes * b'27:31 - rsvd2: Reserved for future use * b'27 - rxpcu_filter_enable_flag * For Scan Radio Host CPU utilization is very high. * In order to reduce CPU utilization we need to filter out * certain configured MAC frames. * To filter out configured MAC address frames, RxPCU should * be zero which means allow all frames for MD at RxOLE * host wil fiter out frames. * RxPCU (Filter IN) -> RxOLE (Filter In/Filter Out) * b'28:31 - rsvd2: Reserved for future use * dword2 - b'0:31 - packet_type_enable_flags_0: * Enable MGMT packet from 0b0000 to 0b1001 * bits from low to high: FP, MD, MO - 3 bits Loading Loading @@ -5759,7 +5773,8 @@ PREPACK struct htt_rx_ring_selection_cfg_t { config_length_ctrl:3, config_length_data:3, rx_hdr_len: 2, rsvd2: 5; rxpcu_filter_enable_flag:1, rsvd2: 4; A_UINT32 packet_type_enable_flags_0; A_UINT32 packet_type_enable_flags_1; A_UINT32 packet_type_enable_flags_2; Loading Loading @@ -5933,6 +5948,17 @@ PREPACK struct htt_rx_ring_selection_cfg_t { ((_var) |= ((_val) << HTT_RX_RING_SELECTION_CFG_RX_HDR_LEN_S));\ } while(0) #define HTT_RX_RING_SELECTION_CFG_RXPCU_FILTER_M 0x08000000 #define HTT_RX_RING_SELECTION_CFG_RXPXU_FILTER_S 27 #define HTT_RX_RING_SELECTION_CFG_RXPCU_FILTER_GET(_var) \ (((_var) & HTT_RX_RING_SELECTION_CFG_RXPCU_FILTER_M) >> \ HTT_RX_RING_SELECTION_CFG_RXPXU_FILTER_S) #define HTT_RX_RING_SELECTION_CFG_RXPCU_FILTER_SET(_var, _val) \ do { \ HTT_CHECK_SET_VAL( HTT_RX_RING_SELECTION_CFG_RXPCU_FILTER, _val); \ ((_var) |= ((_val) << HTT_RX_RING_SELECTION_CFG_RXPXU_FILTER_S));\ } while(0) #define HTT_RX_RING_SELECTION_CFG_PKT_TYPE_ENABLE_FLAG_0_M 0xffffffff #define HTT_RX_RING_SELECTION_CFG_PKT_TYPE_ENABLE_FLAG_0_S 0 #define HTT_RX_RING_SELECTION_CFG_PKT_TYPE_ENABLE_FLAG_0_GET(_var) \ Loading