net: ipa: move endpoint configuration data definitions
Move the definitions of the structures defining endpoint-specific configuration data out of "ipa_data.h" and into "ipa_endpoint.h". This is a trivial movement of code without any other change, to prepare for the next few patches. Signed-off-by: Alex Elder <elder@linaro.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
75944b040b
commit
f0488c540e
|
@ -95,68 +95,6 @@ struct gsi_channel_data {
|
|||
u8 tlv_count;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct ipa_endpoint_tx_data - configuration data for TX endpoints
|
||||
* @seq_type: primary packet processing sequencer type
|
||||
* @seq_rep_type: sequencer type for replication processing
|
||||
* @status_endpoint: endpoint to which status elements are sent
|
||||
*
|
||||
* The @status_endpoint is only valid if the endpoint's @status_enable
|
||||
* flag is set.
|
||||
*/
|
||||
struct ipa_endpoint_tx_data {
|
||||
enum ipa_seq_type seq_type;
|
||||
enum ipa_seq_rep_type seq_rep_type;
|
||||
enum ipa_endpoint_name status_endpoint;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct ipa_endpoint_rx_data - configuration data for RX endpoints
|
||||
* @buffer_size: requested receive buffer size (bytes)
|
||||
* @pad_align: power-of-2 boundary to which packet payload is aligned
|
||||
* @aggr_close_eof: whether aggregation closes on end-of-frame
|
||||
*
|
||||
* With each packet it transfers, the IPA hardware can perform certain
|
||||
* transformations of its packet data. One of these is adding pad bytes
|
||||
* to the end of the packet data so the result ends on a power-of-2 boundary.
|
||||
*
|
||||
* It is also able to aggregate multiple packets into a single receive buffer.
|
||||
* Aggregation is "open" while a buffer is being filled, and "closes" when
|
||||
* certain criteria are met. One of those criteria is the sender indicating
|
||||
* a "frame" consisting of several transfers has ended.
|
||||
*/
|
||||
struct ipa_endpoint_rx_data {
|
||||
u32 buffer_size;
|
||||
u32 pad_align;
|
||||
bool aggr_close_eof;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct ipa_endpoint_config_data - IPA endpoint hardware configuration
|
||||
* @resource_group: resource group to assign endpoint to
|
||||
* @checksum: whether checksum offload is enabled
|
||||
* @qmap: whether endpoint uses QMAP protocol
|
||||
* @aggregation: whether endpoint supports aggregation
|
||||
* @status_enable: whether endpoint uses status elements
|
||||
* @dma_mode: whether endpoint operates in DMA mode
|
||||
* @dma_endpoint: peer endpoint, if operating in DMA mode
|
||||
* @tx: TX-specific endpoint information (see above)
|
||||
* @rx: RX-specific endpoint information (see above)
|
||||
*/
|
||||
struct ipa_endpoint_config_data {
|
||||
u32 resource_group;
|
||||
bool checksum;
|
||||
bool qmap;
|
||||
bool aggregation;
|
||||
bool status_enable;
|
||||
bool dma_mode;
|
||||
enum ipa_endpoint_name dma_endpoint;
|
||||
union {
|
||||
struct ipa_endpoint_tx_data tx;
|
||||
struct ipa_endpoint_rx_data rx;
|
||||
};
|
||||
};
|
||||
|
||||
/**
|
||||
* struct ipa_endpoint_data - IPA endpoint configuration data
|
||||
* @filter_support: whether endpoint supports filtering
|
||||
|
|
|
@ -40,6 +40,68 @@ enum ipa_endpoint_name {
|
|||
|
||||
#define IPA_ENDPOINT_MAX 32 /* Max supported by driver */
|
||||
|
||||
/**
|
||||
* struct ipa_endpoint_tx_data - configuration data for TX endpoints
|
||||
* @seq_type: primary packet processing sequencer type
|
||||
* @seq_rep_type: sequencer type for replication processing
|
||||
* @status_endpoint: endpoint to which status elements are sent
|
||||
*
|
||||
* The @status_endpoint is only valid if the endpoint's @status_enable
|
||||
* flag is set.
|
||||
*/
|
||||
struct ipa_endpoint_tx_data {
|
||||
enum ipa_seq_type seq_type;
|
||||
enum ipa_seq_rep_type seq_rep_type;
|
||||
enum ipa_endpoint_name status_endpoint;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct ipa_endpoint_rx_data - configuration data for RX endpoints
|
||||
* @buffer_size: requested receive buffer size (bytes)
|
||||
* @pad_align: power-of-2 boundary to which packet payload is aligned
|
||||
* @aggr_close_eof: whether aggregation closes on end-of-frame
|
||||
*
|
||||
* With each packet it transfers, the IPA hardware can perform certain
|
||||
* transformations of its packet data. One of these is adding pad bytes
|
||||
* to the end of the packet data so the result ends on a power-of-2 boundary.
|
||||
*
|
||||
* It is also able to aggregate multiple packets into a single receive buffer.
|
||||
* Aggregation is "open" while a buffer is being filled, and "closes" when
|
||||
* certain criteria are met. One of those criteria is the sender indicating
|
||||
* a "frame" consisting of several transfers has ended.
|
||||
*/
|
||||
struct ipa_endpoint_rx_data {
|
||||
u32 buffer_size;
|
||||
u32 pad_align;
|
||||
bool aggr_close_eof;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct ipa_endpoint_config_data - IPA endpoint hardware configuration
|
||||
* @resource_group: resource group to assign endpoint to
|
||||
* @checksum: whether checksum offload is enabled
|
||||
* @qmap: whether endpoint uses QMAP protocol
|
||||
* @aggregation: whether endpoint supports aggregation
|
||||
* @status_enable: whether endpoint uses status elements
|
||||
* @dma_mode: whether endpoint operates in DMA mode
|
||||
* @dma_endpoint: peer endpoint, if operating in DMA mode
|
||||
* @tx: TX-specific endpoint information (see above)
|
||||
* @rx: RX-specific endpoint information (see above)
|
||||
*/
|
||||
struct ipa_endpoint_config_data {
|
||||
u32 resource_group;
|
||||
bool checksum;
|
||||
bool qmap;
|
||||
bool aggregation;
|
||||
bool status_enable;
|
||||
bool dma_mode;
|
||||
enum ipa_endpoint_name dma_endpoint;
|
||||
union {
|
||||
struct ipa_endpoint_tx_data tx;
|
||||
struct ipa_endpoint_rx_data rx;
|
||||
};
|
||||
};
|
||||
|
||||
/**
|
||||
* enum ipa_replenish_flag: RX buffer replenish flags
|
||||
*
|
||||
|
|
Loading…
Reference in New Issue