net: stmmac: RX queue routing configuration
This patch adds the configuration of RX queues' routing. Signed-off-by: Joao Pinto <jpinto@synopsys.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
a8f5102af2
commit
abe80fdc6e
@@ -246,6 +246,15 @@ struct stmmac_extra_stats {
|
||||
#define STMMAC_TX_MAX_FRAMES 256
|
||||
#define STMMAC_TX_FRAMES 64
|
||||
|
||||
/* Packets types */
|
||||
enum packets_types {
|
||||
PACKET_AVCPQ = 0x1, /* AV Untagged Control packets */
|
||||
PACKET_PTPQ = 0x2, /* PTP Packets */
|
||||
PACKET_DCBCPQ = 0x3, /* DCB Control Packets */
|
||||
PACKET_UPQ = 0x4, /* Untagged Packets */
|
||||
PACKET_MCBCQ = 0x5, /* Multicast & Broadcast Packets */
|
||||
};
|
||||
|
||||
/* Rx IPC status */
|
||||
enum rx_frame_status {
|
||||
good_frame = 0x0,
|
||||
@@ -473,6 +482,9 @@ struct stmmac_ops {
|
||||
void (*rx_queue_prio)(struct mac_device_info *hw, u32 prio, u32 queue);
|
||||
/* TX Queues Priority */
|
||||
void (*tx_queue_prio)(struct mac_device_info *hw, u32 prio, u32 queue);
|
||||
/* RX Queues Routing */
|
||||
void (*rx_queue_routing)(struct mac_device_info *hw, u8 packet,
|
||||
u32 queue);
|
||||
/* Program RX Algorithms */
|
||||
void (*prog_mtl_rx_algorithms)(struct mac_device_info *hw, u32 rx_alg);
|
||||
/* Program TX Algorithms */
|
||||
@@ -581,6 +593,11 @@ struct mac_device_info {
|
||||
unsigned int ps;
|
||||
};
|
||||
|
||||
struct stmmac_rx_routing {
|
||||
u32 reg_mask;
|
||||
u32 reg_shift;
|
||||
};
|
||||
|
||||
struct mac_device_info *dwmac1000_setup(void __iomem *ioaddr, int mcbins,
|
||||
int perfect_uc_entries,
|
||||
int *synopsys_id);
|
||||
|
Reference in New Issue
Block a user