aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/sfc/net_driver.h
diff options
context:
space:
mode:
authorBen Hutchings <bhutchings@solarflare.com>2008-05-30 17:27:04 -0400
committerJeff Garzik <jgarzik@redhat.com>2008-05-30 22:18:10 -0400
commit37b5a60335305e46be93c2eb904c8b5be7aba5f6 (patch)
tree4bda528e3493a5a3a57950b37dc465e593697182 /drivers/net/sfc/net_driver.h
parent9e833be3a13aa64e1f3dc50ce0ad95278212511d (diff)
sfc: Use kernel I2C system and i2c-algo-bit driver
Remove our own implementation of I2C bit-banging. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Diffstat (limited to 'drivers/net/sfc/net_driver.h')
-rw-r--r--drivers/net/sfc/net_driver.h11
1 files changed, 8 insertions, 3 deletions
diff --git a/drivers/net/sfc/net_driver.h b/drivers/net/sfc/net_driver.h
index 5e20e7551dae..d803b86c647c 100644
--- a/drivers/net/sfc/net_driver.h
+++ b/drivers/net/sfc/net_driver.h
@@ -26,10 +26,10 @@
26#include <linux/highmem.h> 26#include <linux/highmem.h>
27#include <linux/workqueue.h> 27#include <linux/workqueue.h>
28#include <linux/inet_lro.h> 28#include <linux/inet_lro.h>
29#include <linux/i2c.h>
29 30
30#include "enum.h" 31#include "enum.h"
31#include "bitfield.h" 32#include "bitfield.h"
32#include "i2c-direct.h"
33 33
34#define EFX_MAX_LRO_DESCRIPTORS 8 34#define EFX_MAX_LRO_DESCRIPTORS 8
35#define EFX_MAX_LRO_AGGR MAX_SKB_FRAGS 35#define EFX_MAX_LRO_AGGR MAX_SKB_FRAGS
@@ -418,7 +418,10 @@ struct efx_blinker {
418 * @init_leds: Sets up board LEDs 418 * @init_leds: Sets up board LEDs
419 * @set_fault_led: Turns the fault LED on or off 419 * @set_fault_led: Turns the fault LED on or off
420 * @blink: Starts/stops blinking 420 * @blink: Starts/stops blinking
421 * @fini: Cleanup function
421 * @blinker: used to blink LEDs in software 422 * @blinker: used to blink LEDs in software
423 * @hwmon_client: I2C client for hardware monitor
424 * @ioexp_client: I2C client for power/port control
422 */ 425 */
423struct efx_board { 426struct efx_board {
424 int type; 427 int type;
@@ -431,7 +434,9 @@ struct efx_board {
431 int (*init_leds)(struct efx_nic *efx); 434 int (*init_leds)(struct efx_nic *efx);
432 void (*set_fault_led) (struct efx_nic *efx, int state); 435 void (*set_fault_led) (struct efx_nic *efx, int state);
433 void (*blink) (struct efx_nic *efx, int start); 436 void (*blink) (struct efx_nic *efx, int start);
437 void (*fini) (struct efx_nic *nic);
434 struct efx_blinker blinker; 438 struct efx_blinker blinker;
439 struct i2c_client *hwmon_client, *ioexp_client;
435}; 440};
436 441
437#define STRING_TABLE_LOOKUP(val, member) \ 442#define STRING_TABLE_LOOKUP(val, member) \
@@ -618,7 +623,7 @@ union efx_multicast_hash {
618 * @membase: Memory BAR value 623 * @membase: Memory BAR value
619 * @biu_lock: BIU (bus interface unit) lock 624 * @biu_lock: BIU (bus interface unit) lock
620 * @interrupt_mode: Interrupt mode 625 * @interrupt_mode: Interrupt mode
621 * @i2c: I2C interface 626 * @i2c_adap: I2C adapter
622 * @board_info: Board-level information 627 * @board_info: Board-level information
623 * @state: Device state flag. Serialised by the rtnl_lock. 628 * @state: Device state flag. Serialised by the rtnl_lock.
624 * @reset_pending: Pending reset method (normally RESET_TYPE_NONE) 629 * @reset_pending: Pending reset method (normally RESET_TYPE_NONE)
@@ -686,7 +691,7 @@ struct efx_nic {
686 spinlock_t biu_lock; 691 spinlock_t biu_lock;
687 enum efx_int_mode interrupt_mode; 692 enum efx_int_mode interrupt_mode;
688 693
689 struct efx_i2c_interface i2c; 694 struct i2c_adapter i2c_adap;
690 struct efx_board board_info; 695 struct efx_board board_info;
691 696
692 enum nic_state state; 697 enum nic_state state;