Search Linux Wireless

Re: [RFC v2] mac80211: add general rate information to Tx status

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Feb 5, 2008 5:45 PM, Tomas Winkler <tomas.winkler@xxxxxxxxx> wrote:
> From: Ron Rindjunsky <ron.rindjunsky@xxxxxxxxx>
>
> This patch introduces data structures meant to contain actual
> configuration in which Tx was made in HW, for general purposes
> and for rate scaling in specific.
> it includes the rate, general flags for the rate (e.g. Tx antenna)
> and the number of retries for the rate.
>
> Signed-off-by: Ron Rindjunsky <ron.rindjunsky@xxxxxxxxx>
> Signed-off-by: Tomas Winkler <tomas.winkler@xxxxxxxxx>
> ---
>  include/net/mac80211.h |   22 +++++++++++++++++++++-
>  1 files changed, 21 insertions(+), 1 deletions(-)
>
> diff --git a/include/net/mac80211.h b/include/net/mac80211.h
> index 460da54..ec966c8 100644
> --- a/include/net/mac80211.h
> +++ b/include/net/mac80211.h
> @@ -318,6 +318,22 @@ struct ieee80211_rx_status {
>  };
>
>  /**
> + * struct ieee80211_tx_rate_ctrl - rate ctrl data
> + *
> + * The low-level driver should provide this struct as part
> + * of the ieee80211_tx_status. this struct should give information
> + * about the tx that is not part of the plcp rates table.
> + * @bitrate: rate used.
> + * @flags: Tx information (e.g. antenna selectd, guard interval, etc.)
> + * @retry_count: number of retries for this specific rate
> + */
> +struct ieee80211_tx_rate_ctrl {
> +       u32 bitrate;
> +       u32 flags;
> +       u8 retry_count;
> +};
> +
> +/**
>   * enum ieee80211_tx_status_flags - transmit status flags
>   *
>   * Status flags to indicate various transmit conditions.
> @@ -343,7 +359,7 @@ enum ieee80211_tx_status_flags {
>   * @control: a copy of the &struct ieee80211_tx_control passed to the driver
>   *     in the tx() callback.
>   * @flags: transmit status flags, defined above
> - * @retry_count: number of retries
> + * @retry_count: total number of retries
>   * @excessive_retries: set to 1 if the frame was retried many times
>   *     but not acknowledged
>   * @ampdu_ack_len: number of aggregated frames.
> @@ -353,6 +369,8 @@ enum ieee80211_tx_status_flags {
>   * @ack_signal: signal strength of the ACK frame
>   * @queue_length: ?? REMOVE
>   * @queue_number: ?? REMOVE
> + * @rate_ctrl_num: number of rate_ctrl allocated
> + * @rate_ctrl: info for rate at which the packet was actually transmitted
>   */
>  struct ieee80211_tx_status {
>         struct ieee80211_tx_control control;
> @@ -364,6 +382,8 @@ struct ieee80211_tx_status {
>         int ack_signal;
>         int queue_length;
>         int queue_number;
> +       size_t rate_ctrl_num;
> +       struct ieee80211_tx_rate_ctrl rate_ctrl[0];
>  };
>
>  /**
> --
> 1.5.2.2


Felix will this work for you?

Thanks
Tomas
> ---------------------------------------------------------------------
> Intel Israel (74) Limited
>
> This e-mail and any attachments may contain confidential material for
> the sole use of the intended recipient(s). Any review or distribution
> by others is strictly prohibited. If you are not the intended
> recipient, please contact the sender and delete all copies.
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>
-
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux