Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
ax88796.c File Reference
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/errno.h>
#include <linux/isapnp.h>
#include <linux/init.h>
#include <linux/interrupt.h>
#include <linux/io.h>
#include <linux/platform_device.h>
#include <linux/delay.h>
#include <linux/timer.h>
#include <linux/netdevice.h>
#include <linux/etherdevice.h>
#include <linux/ethtool.h>
#include <linux/mdio-bitbang.h>
#include <linux/phy.h>
#include <linux/eeprom_93cx6.h>
#include <linux/slab.h>
#include <net/ax88796.h>
#include "lib8390.c"

Go to the source code of this file.

Data Structures

struct  ax_device
 

Macros

#define __ei_open   ax_ei_open
 
#define __ei_close   ax_ei_close
 
#define __ei_poll   ax_ei_poll
 
#define __ei_start_xmit   ax_ei_start_xmit
 
#define __ei_tx_timeout   ax_ei_tx_timeout
 
#define __ei_get_stats   ax_ei_get_stats
 
#define __ei_set_multicast_list   ax_ei_set_multicast_list
 
#define __ei_interrupt   ax_ei_interrupt
 
#define ____alloc_ei_netdev   ax__alloc_ei_netdev
 
#define __NS8390_init   ax_NS8390_init
 
#define ax_convert_addr(_a)   ((void __force __iomem *)(_a))
 
#define ei_inb(_a)   readb(ax_convert_addr(_a))
 
#define ei_outb(_v, _a)   writeb(_v, ax_convert_addr(_a))
 
#define ei_inb_p(_a)   ei_inb(_a)
 
#define ei_outb_p(_v, _a)   ei_outb(_v, _a)
 
#define EI_SHIFT(x)   (ei_local->reg_offset[(x)])
 
#define AX88796_PLATFORM
 
#define DRV_NAME   "ax88796"
 
#define DRV_VERSION   "1.00"
 
#define NE_CMD   EI_SHIFT(0x00)
 
#define NE_RESET   EI_SHIFT(0x1f)
 
#define NE_DATAPORT   EI_SHIFT(0x10)
 
#define NE1SM_START_PG   0x20 /* First page of TX buffer */
 
#define NE1SM_STOP_PG   0x40 /* Last page +1 of RX ring */
 
#define NESM_START_PG   0x40 /* First page of TX buffer */
 
#define NESM_STOP_PG   0x80 /* Last page +1 of RX ring */
 
#define AX_GPOC_PPDSET   BIT(6)
 
#define AX_MEMR   EI_SHIFT(0x14)
 
#define AX_MEMR_MDC   BIT(0)
 
#define AX_MEMR_MDIR   BIT(1)
 
#define AX_MEMR_MDI   BIT(2)
 
#define AX_MEMR_MDO   BIT(3)
 
#define AX_MEMR_EECS   BIT(4)
 
#define AX_MEMR_EEI   BIT(5)
 
#define AX_MEMR_EEO   BIT(6)
 
#define AX_MEMR_EECLK   BIT(7)
 
#define ax_suspend   NULL
 
#define ax_resume   NULL
 

Functions

 module_platform_driver (axdrv)
 
 MODULE_DESCRIPTION ("AX88796 10/100 Ethernet platform driver")
 
 MODULE_AUTHOR ("Ben Dooks, <[email protected]>")
 
 MODULE_LICENSE ("GPL v2")
 
 MODULE_ALIAS ("platform:ax88796")
 

Macro Definition Documentation

#define ____alloc_ei_netdev   ax__alloc_ei_netdev

Definition at line 44 of file ax88796.c.

#define __ei_close   ax_ei_close

Definition at line 37 of file ax88796.c.

#define __ei_get_stats   ax_ei_get_stats

Definition at line 41 of file ax88796.c.

#define __ei_interrupt   ax_ei_interrupt

Definition at line 43 of file ax88796.c.

#define __ei_open   ax_ei_open

Definition at line 36 of file ax88796.c.

#define __ei_poll   ax_ei_poll

Definition at line 38 of file ax88796.c.

#define __ei_set_multicast_list   ax_ei_set_multicast_list

Definition at line 42 of file ax88796.c.

#define __ei_start_xmit   ax_ei_start_xmit

Definition at line 39 of file ax88796.c.

#define __ei_tx_timeout   ax_ei_tx_timeout

Definition at line 40 of file ax88796.c.

#define __NS8390_init   ax_NS8390_init

Definition at line 45 of file ax88796.c.

#define AX88796_PLATFORM

Definition at line 60 of file ax88796.c.

#define ax_convert_addr (   _a)    ((void __force __iomem *)(_a))

Definition at line 48 of file ax88796.c.

#define AX_GPOC_PPDSET   BIT(6)

Definition at line 79 of file ax88796.c.

#define AX_MEMR   EI_SHIFT(0x14)

Definition at line 310 of file ax88796.c.

#define AX_MEMR_EECLK   BIT(7)

Definition at line 318 of file ax88796.c.

#define AX_MEMR_EECS   BIT(4)

Definition at line 315 of file ax88796.c.

#define AX_MEMR_EEI   BIT(5)

Definition at line 316 of file ax88796.c.

#define AX_MEMR_EEO   BIT(6)

Definition at line 317 of file ax88796.c.

#define AX_MEMR_MDC   BIT(0)

Definition at line 311 of file ax88796.c.

#define AX_MEMR_MDI   BIT(2)

Definition at line 313 of file ax88796.c.

#define AX_MEMR_MDIR   BIT(1)

Definition at line 312 of file ax88796.c.

#define AX_MEMR_MDO   BIT(3)

Definition at line 314 of file ax88796.c.

#define ax_resume   NULL

Definition at line 980 of file ax88796.c.

#define ax_suspend   NULL

Definition at line 979 of file ax88796.c.

#define DRV_NAME   "ax88796"

Definition at line 66 of file ax88796.c.

#define DRV_VERSION   "1.00"

Definition at line 67 of file ax88796.c.

#define ei_inb (   _a)    readb(ax_convert_addr(_a))

Definition at line 50 of file ax88796.c.

#define ei_inb_p (   _a)    ei_inb(_a)

Definition at line 53 of file ax88796.c.

#define ei_outb (   _v,
  _a 
)    writeb(_v, ax_convert_addr(_a))

Definition at line 51 of file ax88796.c.

#define ei_outb_p (   _v,
  _a 
)    ei_outb(_v, _a)

Definition at line 54 of file ax88796.c.

#define EI_SHIFT (   x)    (ei_local->reg_offset[(x)])

Definition at line 57 of file ax88796.c.

#define NE1SM_START_PG   0x20 /* First page of TX buffer */

Definition at line 74 of file ax88796.c.

#define NE1SM_STOP_PG   0x40 /* Last page +1 of RX ring */

Definition at line 75 of file ax88796.c.

#define NE_CMD   EI_SHIFT(0x00)

Definition at line 70 of file ax88796.c.

#define NE_DATAPORT   EI_SHIFT(0x10)

Definition at line 72 of file ax88796.c.

#define NE_RESET   EI_SHIFT(0x1f)

Definition at line 71 of file ax88796.c.

#define NESM_START_PG   0x40 /* First page of TX buffer */

Definition at line 76 of file ax88796.c.

#define NESM_STOP_PG   0x80 /* Last page +1 of RX ring */

Definition at line 77 of file ax88796.c.

Function Documentation

MODULE_ALIAS ( "platform:ax88796"  )
MODULE_AUTHOR ( "Ben  Dooks,
< ben @simtec.co.uk >"   
)
MODULE_DESCRIPTION ( "AX88796 10/100 Ethernet platform driver )
MODULE_LICENSE ( "GPL v2 )
module_platform_driver ( axdrv  )