Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions
ps3_gelic_net.c File Reference
#include <linux/interrupt.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/slab.h>
#include <linux/etherdevice.h>
#include <linux/ethtool.h>
#include <linux/if_vlan.h>
#include <linux/in.h>
#include <linux/ip.h>
#include <linux/tcp.h>
#include <linux/dma-mapping.h>
#include <net/checksum.h>
#include <asm/firmware.h>
#include <asm/ps3.h>
#include <asm/lv1call.h>
#include "ps3_gelic_net.h"
#include "ps3_gelic_wireless.h"

Go to the source code of this file.

Macros

#define DRV_NAME   "Gelic Network Driver"
 
#define DRV_VERSION   "2.0"
 
#define GELIC_ALIGN   (32)
 

Functions

 MODULE_AUTHOR ("SCE Inc.")
 
 MODULE_DESCRIPTION ("Gelic Network driver")
 
 MODULE_LICENSE ("GPL")
 
int gelic_card_set_irq_mask (struct gelic_card *card, u64 mask)
 
void gelic_card_up (struct gelic_card *card)
 
void gelic_card_down (struct gelic_card *card)
 
void gelic_net_set_multi (struct net_device *netdev)
 
int gelic_net_stop (struct net_device *netdev)
 
int gelic_net_xmit (struct sk_buff *skb, struct net_device *netdev)
 
int gelic_net_change_mtu (struct net_device *netdev, int new_mtu)
 
int gelic_net_open (struct net_device *netdev)
 
void gelic_net_get_drvinfo (struct net_device *netdev, struct ethtool_drvinfo *info)
 
void gelic_net_tx_timeout (struct net_device *netdev)
 
int __devinit gelic_net_setup_netdev (struct net_device *netdev, struct gelic_card *card)
 
 module_init (ps3_gelic_driver_init)
 
 module_exit (ps3_gelic_driver_exit)
 
 MODULE_ALIAS (PS3_MODULE_ALIAS_GELIC)
 

Macro Definition Documentation

#define DRV_NAME   "Gelic Network Driver"

Definition at line 53 of file ps3_gelic_net.c.

#define DRV_VERSION   "2.0"

Definition at line 54 of file ps3_gelic_net.c.

#define GELIC_ALIGN   (32)

gelic_alloc_card_net - allocates net_device and card structure

returns the card structure or NULL in case of errors

the card and net_device structures are linked to each other

Definition at line 1544 of file ps3_gelic_net.c.

Function Documentation

void gelic_card_down ( struct gelic_card card)

Definition at line 147 of file ps3_gelic_net.c.

int gelic_card_set_irq_mask ( struct gelic_card card,
u64  mask 
)

Definition at line 69 of file ps3_gelic_net.c.

void gelic_card_up ( struct gelic_card card)

Definition at line 130 of file ps3_gelic_net.c.

int gelic_net_change_mtu ( struct net_device netdev,
int  new_mtu 
)

gelic_net_change_mtu - changes the MTU of an interface : interface device structure : new MTU value

returns 0 on success, <0 on failure

Definition at line 1131 of file ps3_gelic_net.c.

void gelic_net_get_drvinfo ( struct net_device netdev,
struct ethtool_drvinfo info 
)

Definition at line 1227 of file ps3_gelic_net.c.

int gelic_net_open ( struct net_device netdev)

gelic_net_open - called upon ifconfig up : interface device structure

returns 0 on success, <0 on failure

gelic_net_open allocates all the descriptors and memory needed for operation, sets up multicast list and enables interrupts

Definition at line 1212 of file ps3_gelic_net.c.

void gelic_net_set_multi ( struct net_device netdev)

gelic_net_set_multi - sets multicast addresses and promisc flags : interface device structure

gelic_net_set_multi configures multicast addresses as needed for the netdev interface. It also sets up multicast, allmulti and promisc flags appropriately

Definition at line 548 of file ps3_gelic_net.c.

int __devinit gelic_net_setup_netdev ( struct net_device netdev,
struct gelic_card card 
)

gelic_ether_setup_netdev - initialization of net_device : net_device structure : card structure

Returns 0 on success or <0 on failure

gelic_ether_setup_netdev initializes the net_device structure and register it.

Definition at line 1492 of file ps3_gelic_net.c.

int gelic_net_stop ( struct net_device netdev)

gelic_net_stop - called upon ifconfig down : interface device structure

always returns 0

Definition at line 673 of file ps3_gelic_net.c.

void gelic_net_tx_timeout ( struct net_device netdev)

gelic_net_tx_timeout - called when the tx timeout watchdog kicks in. : interface device structure

called, if tx hangs. Schedules a task that resets the interface

Definition at line 1439 of file ps3_gelic_net.c.

int gelic_net_xmit ( struct sk_buff skb,
struct net_device netdev 
)

gelic_net_xmit - transmits a frame over the device : packet to send out : interface device structure

returns 0 on success, <0 on failure

Definition at line 857 of file ps3_gelic_net.c.

MODULE_ALIAS ( PS3_MODULE_ALIAS_GELIC  )
MODULE_AUTHOR ( "SCE Inc."  )
MODULE_DESCRIPTION ( "Gelic Network driver )
module_exit ( ps3_gelic_driver_exit  )
module_init ( ps3_gelic_driver_init  )
MODULE_LICENSE ( "GPL"  )