Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
2afb4304
Commit
2afb4304
authored
Jan 10, 2005
by
Jeff Garzik
Browse files
Options
Browse Files
Download
Plain Diff
Manual ixgb merge.
parents
a954d6ff
d8d96caa
Changes
9
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
1163 additions
and
907 deletions
+1163
-907
drivers/net/ixgb/ixgb.h
drivers/net/ixgb/ixgb.h
+21
-4
drivers/net/ixgb/ixgb_ee.c
drivers/net/ixgb/ixgb_ee.c
+114
-78
drivers/net/ixgb/ixgb_ethtool.c
drivers/net/ixgb/ixgb_ethtool.c
+332
-186
drivers/net/ixgb/ixgb_hw.c
drivers/net/ixgb/ixgb_hw.c
+140
-91
drivers/net/ixgb/ixgb_hw.h
drivers/net/ixgb/ixgb_hw.h
+30
-20
drivers/net/ixgb/ixgb_ids.h
drivers/net/ixgb/ixgb_ids.h
+8
-13
drivers/net/ixgb/ixgb_main.c
drivers/net/ixgb/ixgb_main.c
+358
-349
drivers/net/ixgb/ixgb_osdep.h
drivers/net/ixgb/ixgb_osdep.h
+5
-5
drivers/net/ixgb/ixgb_param.c
drivers/net/ixgb/ixgb_param.c
+155
-161
No files found.
drivers/net/ixgb/ixgb.h
View file @
2afb4304
...
...
@@ -46,6 +46,7 @@
#include <linux/delay.h>
#include <linux/timer.h>
#include <linux/slab.h>
#include <linux/vmalloc.h>
#include <linux/interrupt.h>
#include <linux/string.h>
#include <linux/pagemap.h>
...
...
@@ -85,6 +86,20 @@ struct ixgb_adapter;
#define IXGB_ERR(args...) printk(KERN_ERR "ixgb: " args)
/* TX/RX descriptor defines */
#define DEFAULT_TXD 256
#define MAX_TXD 4096
#define MIN_TXD 64
/* hardware cannot reliably support more than 512 descriptors owned by
* hardware descrioptor cache otherwise an unreliable ring under heavy
* recieve load may result */
/* #define DEFAULT_RXD 1024 */
/* #define MAX_RXD 4096 */
#define DEFAULT_RXD 512
#define MAX_RXD 512
#define MIN_RXD 64
/* Supported Rx Buffer Sizes */
#define IXGB_RXBUFFER_2048 2048
#define IXGB_RXBUFFER_4096 4096
...
...
@@ -105,9 +120,9 @@ struct ixgb_adapter;
struct
ixgb_buffer
{
struct
sk_buff
*
skb
;
uint64_t
dma
;
unsigned
long
length
;
unsigned
long
time_stamp
;
unsigned
int
next_to_watch
;
uint16_t
length
;
uint16_t
next_to_watch
;
};
struct
ixgb_desc_ring
{
...
...
@@ -167,7 +182,6 @@ struct ixgb_adapter {
uint64_t
hw_csum_rx_error
;
uint64_t
hw_csum_rx_good
;
uint32_t
rx_int_delay
;
boolean_t
raidc
;
boolean_t
rx_csum
;
/* OS defined structs */
...
...
@@ -178,5 +192,8 @@ struct ixgb_adapter {
/* structs defined in ixgb_hw.h */
struct
ixgb_hw
hw
;
struct
ixgb_hw_stats
stats
;
#ifdef CONFIG_PCI_MSI
boolean_t
have_msi
;
#endif
};
#endif
/* _IXGB_H_ */
#endif
/* _IXGB_H_ */
drivers/net/ixgb/ixgb_ee.c
View file @
2afb4304
This diff is collapsed.
Click to expand it.
drivers/net/ixgb/ixgb_ethtool.c
View file @
2afb4304
This diff is collapsed.
Click to expand it.
drivers/net/ixgb/ixgb_hw.c
View file @
2afb4304
This diff is collapsed.
Click to expand it.
drivers/net/ixgb/ixgb_hw.h
View file @
2afb4304
...
...
@@ -616,17 +616,17 @@ struct ixgb_context_desc {
#define IXGB_CONTEXT_DESC_STATUS_DD 0x01
/* Filters */
#define IXGB_RAR_ENTRIES 16
/* Number of entries in Rx Address array */
#define IXGB_MC_TBL_SIZE 128
/* Multicast Filter Table (4096 bits) */
#define IXGB_VLAN_FILTER_TBL_SIZE 128
/* VLAN Filter Table (4096 bits) */
#define IXGB_RAR_ENTRIES 3
/* Number of entries in Rx Address array */
#define IXGB_MEMORY_REGISTER_BASE_ADDRESS 0
#define ENET_HEADER_SIZE
14
#define ENET_FCS_LENGTH
4
#define IXGB_MAX_NUM_MULTICAST_ADDRESSES
128
#define IXGB_MIN_ENET_FRAME_SIZE_WITHOUT_FCS
60
#define IXGB_MAX_ENET_FRAME_SIZE_WITHOUT_FCS
1514
#define IXGB_MAX_JUMBO_FRAME_SIZE
0x3F00
#define ENET_HEADER_SIZE
14
#define ENET_FCS_LENGTH
4
#define IXGB_MAX_NUM_MULTICAST_ADDRESSES
128
#define IXGB_MIN_ENET_FRAME_SIZE_WITHOUT_FCS
60
#define IXGB_MAX_ENET_FRAME_SIZE_WITHOUT_FCS
1514
#define IXGB_MAX_JUMBO_FRAME_SIZE
0x3F00
/* Phy Addresses */
#define IXGB_OPTICAL_PHY_ADDR 0x0
/* Optical Module phy address */
...
...
@@ -789,32 +789,39 @@ extern void ixgb_check_for_link(struct ixgb_hw *hw);
extern
boolean_t
ixgb_check_for_bad_link
(
struct
ixgb_hw
*
hw
);
extern
boolean_t
ixgb_setup_fc
(
struct
ixgb_hw
*
hw
);
extern
void
ixgb_clear_hw_cntrs
(
struct
ixgb_hw
*
hw
);
extern
boolean_t
mac_addr_valid
(
uint8_t
*
mac_addr
);
extern
boolean_t
mac_addr_valid
(
uint8_t
*
mac_addr
);
extern
uint16_t
ixgb_read_phy_reg
(
struct
ixgb_hw
*
hw
,
uint32_t
reg_addr
,
uint32_t
phy_addr
,
uint32_t
device_type
);
uint32_t
reg_addr
,
uint32_t
phy_addr
,
uint32_t
device_type
);
extern
void
ixgb_write_phy_reg
(
struct
ixgb_hw
*
hw
,
uint32_t
reg_addr
,
uint32_t
phy_addr
,
uint32_t
device_type
,
uint16_t
data
);
uint32_t
reg_addr
,
uint32_t
phy_addr
,
uint32_t
device_type
,
uint16_t
data
);
extern
void
ixgb_rar_set
(
struct
ixgb_hw
*
hw
,
uint8_t
*
addr
,
uint32_t
index
);
extern
void
ixgb_rar_set
(
struct
ixgb_hw
*
hw
,
uint8_t
*
addr
,
uint32_t
index
);
/* Filters (multicast, vlan, receive) */
extern
void
ixgb_mc_addr_list_update
(
struct
ixgb_hw
*
hw
,
uint8_t
*
mc_addr_list
,
uint32_t
mc_addr_count
,
uint32_t
pad
);
uint8_t
*
mc_addr_list
,
uint32_t
mc_addr_count
,
uint32_t
pad
);
/* Vfta functions */
extern
void
ixgb_write_vfta
(
struct
ixgb_hw
*
hw
,
uint32_t
offset
,
uint32_t
value
);
uint32_t
offset
,
uint32_t
value
);
extern
void
ixgb_clear_vfta
(
struct
ixgb_hw
*
hw
);
/* Access functions to eeprom data */
void
ixgb_get_ee_mac_addr
(
struct
ixgb_hw
*
hw
,
uint8_t
*
mac_addr
);
void
ixgb_get_ee_mac_addr
(
struct
ixgb_hw
*
hw
,
uint8_t
*
mac_addr
);
uint16_t
ixgb_get_ee_compatibility
(
struct
ixgb_hw
*
hw
);
uint32_t
ixgb_get_ee_pba_number
(
struct
ixgb_hw
*
hw
);
uint16_t
ixgb_get_ee_init_ctrl_reg_1
(
struct
ixgb_hw
*
hw
);
...
...
@@ -832,6 +839,9 @@ uint16_t ixgb_get_eeprom_word(struct ixgb_hw *hw, uint16_t index);
/* Everything else */
void
ixgb_led_on
(
struct
ixgb_hw
*
hw
);
void
ixgb_led_off
(
struct
ixgb_hw
*
hw
);
void
ixgb_write_pci_cfg
(
struct
ixgb_hw
*
hw
,
uint32_t
reg
,
uint16_t
*
value
);
void
ixgb_write_pci_cfg
(
struct
ixgb_hw
*
hw
,
uint32_t
reg
,
uint16_t
*
value
);
#endif
/* _IXGB_HW_H_ */
#endif
/* _IXGB_HW_H_ */
drivers/net/ixgb/ixgb_ids.h
View file @
2afb4304
...
...
@@ -33,21 +33,16 @@
** The Device and Vendor IDs for 10 Gigabit MACs
**********************************************************************/
#define INTEL_VENDOR_ID 0x8086
#define INTEL_SUBVENDOR_ID 0x8086
#define INTEL_VENDOR_ID
0x8086
#define INTEL_SUBVENDOR_ID
0x8086
#define IXGB_DEVICE_ID_82597EX 0x1048
#define IXGB_DEVICE_ID_82597EX_SR 0x1A48
#define IXGB_SUBDEVICE_ID_A11F 0xA11F
#define IXGB_SUBDEVICE_ID_A01F 0xA01F
#define IXGB_DEVICE_ID_82597EX 0x1048
#define IXGB_DEVICE_ID_82597EX_SR 0x1A48
#define IXGB_DEVICE_ID_82597EX_LR 0x1B48
#define IXGB_SUBDEVICE_ID_A11F 0xA11F
#define IXGB_SUBDEVICE_ID_A01F 0xA01F
#define IXGB_SUBDEVICE_ID_A15F 0xA15F
#define IXGB_SUBDEVICE_ID_A05F 0xA05F
#define IXGB_SUBDEVICE_ID_A12F 0xA12F
#define IXGB_SUBDEVICE_ID_A02F 0xA02F
#endif
/* #ifndef _IXGB_IDS_H_ */
#endif
/* #ifndef _IXGB_IDS_H_ */
/* End of File */
drivers/net/ixgb/ixgb_main.c
View file @
2afb4304
This diff is collapsed.
Click to expand it.
drivers/net/ixgb/ixgb_osdep.h
View file @
2afb4304
...
...
@@ -78,19 +78,19 @@ typedef enum {
#define DEBUGOUT7 DEBUGOUT3
#define IXGB_WRITE_REG(a, reg, value) ( \
writel((value), ((a)->hw_addr + IXGB_##reg)))
writel((value), ((a)->hw_addr + IXGB_##reg)))
#define IXGB_READ_REG(a, reg) ( \
readl((a)->hw_addr + IXGB_##reg))
readl((a)->hw_addr + IXGB_##reg))
#define IXGB_WRITE_REG_ARRAY(a, reg, offset, value) ( \
writel((value), ((a)->hw_addr + IXGB_##reg + ((offset) << 2))))
writel((value), ((a)->hw_addr + IXGB_##reg + ((offset) << 2))))
#define IXGB_READ_REG_ARRAY(a, reg, offset) ( \
readl((a)->hw_addr + IXGB_##reg + ((offset) << 2)))
readl((a)->hw_addr + IXGB_##reg + ((offset) << 2)))
#define IXGB_WRITE_FLUSH(a) IXGB_READ_REG(a, STATUS)
#define IXGB_MEMCPY memcpy
#endif
/* _IXGB_OSDEP_H_ */
#endif
/* _IXGB_OSDEP_H_ */
drivers/net/ixgb/ixgb_param.c
View file @
2afb4304
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment