Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions | Variables
korina.c File Reference
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/moduleparam.h>
#include <linux/sched.h>
#include <linux/ctype.h>
#include <linux/types.h>
#include <linux/interrupt.h>
#include <linux/init.h>
#include <linux/ioport.h>
#include <linux/in.h>
#include <linux/slab.h>
#include <linux/string.h>
#include <linux/delay.h>
#include <linux/netdevice.h>
#include <linux/etherdevice.h>
#include <linux/skbuff.h>
#include <linux/errno.h>
#include <linux/platform_device.h>
#include <linux/mii.h>
#include <linux/ethtool.h>
#include <linux/crc32.h>
#include <asm/bootinfo.h>
#include <asm/bitops.h>
#include <asm/pgtable.h>
#include <asm/io.h>
#include <asm/dma.h>
#include <asm/mach-rc32434/rb.h>
#include <asm/mach-rc32434/rc32434.h>
#include <asm/mach-rc32434/eth.h>
#include <asm/mach-rc32434/dma_v.h>

Go to the source code of this file.

Data Structures

struct  korina_private
 

Macros

#define DRV_NAME   "korina"
 
#define DRV_VERSION   "0.10"
 
#define DRV_RELDATE   "04Mar2008"
 
#define STATION_ADDRESS_HIGH(dev)
 
#define STATION_ADDRESS_LOW(dev)
 
#define MII_CLOCK   1250000 /* no more than 2.5MHz */
 
#define KORINA_NUM_RDS   64 /* number of receive descriptors */
 
#define KORINA_NUM_TDS   64 /* number of transmit descriptors */
 
#define KORINA_RBSIZE   1536 /* size of one resource buffer = Ether MTU */
 
#define KORINA_RDS_MASK   (KORINA_NUM_RDS - 1)
 
#define KORINA_TDS_MASK   (KORINA_NUM_TDS - 1)
 
#define RD_RING_SIZE   (KORINA_NUM_RDS * sizeof(struct dma_desc))
 
#define TD_RING_SIZE   (KORINA_NUM_TDS * sizeof(struct dma_desc))
 
#define TX_TIMEOUT   (6000 * HZ / 1000)
 
#define IS_DMA_FINISHED(X)   (((X) & (DMA_DESC_FINI)) != 0)
 
#define IS_DMA_DONE(X)   (((X) & (DMA_DESC_DONE)) != 0)
 
#define RCVPKT_LENGTH(X)   (((X) & ETH_RX_LEN) >> ETH_RX_LEN_BIT)
 

Enumerations

enum  chain_status { desc_filled, desc_empty }
 

Functions

 module_platform_driver (korina_driver)
 
 MODULE_AUTHOR ("Philip Rischel <[email protected]>")
 
 MODULE_AUTHOR ("Felix Fietkau <[email protected]>")
 
 MODULE_AUTHOR ("Florian Fainelli <[email protected]>")
 
 MODULE_DESCRIPTION ("IDT RC32434 (Korina) Ethernet driver")
 
 MODULE_LICENSE ("GPL")
 

Variables

unsigned int idt_cpu_freq
 

Macro Definition Documentation

#define DRV_NAME   "korina"

Definition at line 68 of file korina.c.

#define DRV_RELDATE   "04Mar2008"

Definition at line 70 of file korina.c.

#define DRV_VERSION   "0.10"

Definition at line 69 of file korina.c.

#define IS_DMA_DONE (   X)    (((X) & (DMA_DESC_DONE)) != 0)

Definition at line 98 of file korina.c.

#define IS_DMA_FINISHED (   X)    (((X) & (DMA_DESC_FINI)) != 0)

Definition at line 97 of file korina.c.

#define KORINA_NUM_RDS   64 /* number of receive descriptors */

Definition at line 82 of file korina.c.

#define KORINA_NUM_TDS   64 /* number of transmit descriptors */

Definition at line 83 of file korina.c.

#define KORINA_RBSIZE   1536 /* size of one resource buffer = Ether MTU */

Definition at line 88 of file korina.c.

#define KORINA_RDS_MASK   (KORINA_NUM_RDS - 1)

Definition at line 89 of file korina.c.

#define KORINA_TDS_MASK   (KORINA_NUM_TDS - 1)

Definition at line 90 of file korina.c.

#define MII_CLOCK   1250000 /* no more than 2.5MHz */

Definition at line 79 of file korina.c.

#define RCVPKT_LENGTH (   X)    (((X) & ETH_RX_LEN) >> ETH_RX_LEN_BIT)

Definition at line 99 of file korina.c.

#define RD_RING_SIZE   (KORINA_NUM_RDS * sizeof(struct dma_desc))

Definition at line 91 of file korina.c.

#define STATION_ADDRESS_HIGH (   dev)
Value:
(((dev)->dev_addr[0] << 8) | \
((dev)->dev_addr[1]))

Definition at line 72 of file korina.c.

#define STATION_ADDRESS_LOW (   dev)
Value:
(((dev)->dev_addr[2] << 24) | \
((dev)->dev_addr[3] << 16) | \
((dev)->dev_addr[4] << 8) | \
((dev)->dev_addr[5]))

Definition at line 74 of file korina.c.

#define TD_RING_SIZE   (KORINA_NUM_TDS * sizeof(struct dma_desc))

Definition at line 92 of file korina.c.

#define TX_TIMEOUT   (6000 * HZ / 1000)

Definition at line 94 of file korina.c.

Enumeration Type Documentation

Enumerator:
desc_filled 
desc_empty 

Definition at line 96 of file korina.c.

Function Documentation

MODULE_AUTHOR ( "Philip Rischel <[email protected]>"  )
MODULE_AUTHOR ( "Felix Fietkau <[email protected]>"  )
MODULE_AUTHOR ( "Florian Fainelli <[email protected]>"  )
MODULE_DESCRIPTION ( "IDT RC32434 (Korina) Ethernet driver )
MODULE_LICENSE ( "GPL"  )
module_platform_driver ( korina_driver  )

Variable Documentation

unsigned int idt_cpu_freq

Definition at line 40 of file prom.c.