]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/net/cxgb3/adapter.h
Merge branch 'autosuspend' into for-next
[linux-2.6-omap-h63xx.git] / drivers / net / cxgb3 / adapter.h
index 95dce4832478afc4cea3af37f0cad0e07de3e4f0..714df2b675e6b27f88009c013c54dfdedb674c7a 100644 (file)
@@ -68,6 +68,8 @@ struct port_info {
        struct net_device_stats netstats;
        int activity;
        __be32 iscsi_ipv4addr;
+
+       int link_fault; /* link fault was detected */
 };
 
 enum {                         /* adapter flags */
@@ -83,6 +85,8 @@ struct fl_pg_chunk {
        struct page *page;
        void *va;
        unsigned int offset;
+       u64 *p_cnt;
+       DECLARE_PCI_UNMAP_ADDR(mapping);
 };
 
 struct rx_desc;
@@ -99,6 +103,7 @@ struct sge_fl {                     /* SGE per free-buffer list state */
        struct fl_pg_chunk pg_chunk;/* page chunk cache */
        unsigned int use_pages;     /* whether FL uses pages or sk_buffs */
        unsigned int order;         /* order of page allocations */
+       unsigned int alloc_size;    /* size of allocated buffer */
        struct rx_desc *desc;       /* address of HW Rx descriptor ring */
        struct rx_sw_desc *sdesc;   /* address of SW Rx descriptor ring */
        dma_addr_t   phys_addr;     /* physical address of HW ring start */
@@ -197,6 +202,7 @@ struct sge_qset {           /* an SGE queue set */
        struct netdev_queue *tx_q;      /* associated netdev TX queue */
        unsigned long txq_stopped;      /* which Tx queues are stopped */
        struct timer_list tx_reclaim_timer;     /* reclaims TX buffers */
+       struct timer_list rx_reclaim_timer;     /* reclaims RX buffers */
        unsigned long port_stats[SGE_PSTAT_MAX];
 } ____cacheline_aligned;
 
@@ -240,6 +246,7 @@ struct adapter {
        struct delayed_work adap_check_task;
        struct work_struct ext_intr_handler_task;
        struct work_struct fatal_error_handler_task;
+       struct work_struct link_fault_handler_task;
 
        struct dentry *debugfs_root;
 
@@ -282,9 +289,12 @@ void t3_os_ext_intr_handler(struct adapter *adapter);
 void t3_os_link_changed(struct adapter *adapter, int port_id, int link_status,
                        int speed, int duplex, int fc);
 void t3_os_phymod_changed(struct adapter *adap, int port_id);
+void t3_os_link_fault(struct adapter *adapter, int port_id, int state);
+void t3_os_link_fault_handler(struct adapter *adapter, int port_id);
 
 void t3_sge_start(struct adapter *adap);
 void t3_sge_stop(struct adapter *adap);
+void t3_start_sge_timers(struct adapter *adap);
 void t3_stop_sge_timers(struct adapter *adap);
 void t3_free_sge_resources(struct adapter *adap);
 void t3_sge_err_intr_handler(struct adapter *adapter);