Linux Kernel
3.7.1
|
#include <linux/slab.h>
#include <linux/kernel.h>
#include <linux/if_arp.h>
#include <linux/netdevice.h>
#include <linux/workqueue.h>
#include <linux/export.h>
#include <linux/moduleparam.h>
#include "i2400m.h"
#include "debug-levels.h"
Go to the source code of this file.
Data Structures | |
struct | i2400m_report_hook_args |
struct | i2400m_roq_data |
struct | i2400m_roq |
struct | i2400m_roq_log |
struct | i2400m_roq_log::i2400m_roq_log_entry |
Macros | |
#define | D_SUBMODULE rx |
Enumerations | |
enum | { I2400M_ROQ_LOG_LENGTH = 32 } |
Functions | |
module_param_named (rx_reorder_disabled, i2400m_rx_reorder_disabled, int, 0644) | |
MODULE_PARM_DESC (rx_reorder_disabled,"If true, RX reordering will be disabled.") | |
void | i2400m_report_hook_work (struct work_struct *ws) |
int | i2400m_rx (struct i2400m *i2400m, struct sk_buff *skb) |
EXPORT_SYMBOL_GPL (i2400m_rx) | |
void | i2400m_unknown_barker (struct i2400m *i2400m, const void *buf, size_t size) |
EXPORT_SYMBOL (i2400m_unknown_barker) | |
int | i2400m_rx_setup (struct i2400m *i2400m) |
void | i2400m_rx_release (struct i2400m *i2400m) |
EXPORT_SYMBOL | ( | i2400m_unknown_barker | ) |
EXPORT_SYMBOL_GPL | ( | i2400m_rx | ) |
void i2400m_report_hook_work | ( | struct work_struct * | ws | ) |
i2400m_rx - Receive a buffer of data from the device
: device descriptor : skbuff where the data has been received
Parse in a buffer of data that contains an RX message sent from the device. See the file header for the format. Run all checks on the buffer header, then run over each payload's descriptors, verify their consistency and act on each payload's contents. If everything is successful, update the device's statistics.
Note: You need to set the skb to contain only the length of the received buffer; for that, use skb_trim(skb, RECEIVED_SIZE).
Returns:
0 if ok, < 0 errno on error
If ok, this function owns now the skb and the caller DOESN'T have to run kfree_skb() on it. However, on error, the caller still owns the skb and it is responsible for releasing it.
module_param_named | ( | rx_reorder_disabled | , |
i2400m_rx_reorder_disabled | , | ||
int | , | ||
0644 | |||
) |
MODULE_PARM_DESC | ( | rx_reorder_disabled | , |
"If | true, | ||
RX reordering will be disabled." | |||
) |