rx_agg
#define TPA_AGG_AGG_ID(rx_agg) \
((le32_to_cpu((rx_agg)->rx_agg_cmp_v) & \
struct rx_agg_cmp *rx_agg)
u16 agg_id = TPA_AGG_AGG_ID(rx_agg);
tpa_info->agg_arr[tpa_info->agg_count++] = *rx_agg;
struct rx_agg_cmp *rx_agg)
u16 agg_id = TPA_AGG_AGG_ID(rx_agg);
tpa_info->agg_arr[tpa_info->agg_count++] = *rx_agg;
#define TPA_AGG_AGG_ID(rx_agg) \
((le32_to_cpu((rx_agg)->rx_agg_cmp_v) & \
r8152_submit_rx(struct r8152 *tp, struct rx_agg *agg, gfp_t mem_flags);
struct rx_agg *agg;
static void free_rx_agg(struct r8152 *tp, struct rx_agg *agg)
static struct rx_agg *alloc_rx_agg(struct r8152 *tp, gfp_t mflags)
struct rx_agg *rx_agg;
rx_agg = kmalloc_node(sizeof(*rx_agg), mflags, node);
if (!rx_agg)
rx_agg->page = alloc_pages(mflags | __GFP_COMP | __GFP_NOWARN, order);
if (!rx_agg->page)
rx_agg->buffer = page_address(rx_agg->page);
rx_agg->urb = usb_alloc_urb(0, mflags);
if (!rx_agg->urb)
rx_agg->context = tp;
INIT_LIST_HEAD(&rx_agg->list);
INIT_LIST_HEAD(&rx_agg->info_list);
list_add_tail(&rx_agg->info_list, &tp->rx_info);
return rx_agg;
__free_pages(rx_agg->page, order);
kfree(rx_agg);
struct rx_agg *agg, *agg_next;
static inline int agg_offset(struct rx_agg *agg, void *addr)
static struct rx_agg *rtl_get_free_rx(struct r8152 *tp, gfp_t mflags)
struct rx_agg *agg, *agg_next, *agg_free = NULL;
struct rx_agg *agg, *agg_free;
agg = list_entry(cursor, struct rx_agg, list);
int r8152_submit_rx(struct r8152 *tp, struct rx_agg *agg, gfp_t mem_flags)
struct rx_agg *agg, *agg_next;
struct rx_agg *agg, *agg_next;
d->rx_agg);
int rx_agg;
++priv->debug->rx_agg;