]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/net/ethernet/amd/xgbe/xgbe.h
amd-xgbe: Add support for per DMA channel interrupts
[karo-tx-linux.git] / drivers / net / ethernet / amd / xgbe / xgbe.h
index 1480c9d41821102fce9fe3d37a9b377d9368e7fb..55c935f4884a59c4cf29187664d852bb98c12d1a 100644 (file)
 /* Device-tree clock names */
 #define XGBE_DMA_CLOCK         "dma_clk"
 #define XGBE_PTP_CLOCK         "ptp_clk"
+#define XGBE_DMA_IRQS          "amd,per-channel-interrupt"
 
 /* Timestamp support - values based on 50MHz PTP clock
  *   50MHz => 20 nsec
@@ -359,6 +360,12 @@ struct xgbe_channel {
        unsigned int queue_index;
        void __iomem *dma_regs;
 
+       /* Per channel interrupt irq number */
+       int dma_irq;
+
+       /* Netdev related settings */
+       struct napi_struct napi;
+
        unsigned int saved_ier;
 
        unsigned int tx_timer_active;
@@ -609,7 +616,8 @@ struct xgbe_prv_data {
        /* XPCS indirect addressing mutex */
        struct mutex xpcs_mutex;
 
-       int irq_number;
+       int dev_irq;
+       unsigned int per_channel_irq;
 
        struct xgbe_hw_if hw_if;
        struct xgbe_desc_if desc_if;