X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=drivers%2Fatm%2Ffirestream.c;h=7f7ec288824d075ed2826422e113abba8bebd1a1;hb=43bc926fffd92024b46cafaf7350d669ba9ca884;hp=f45adbb4c59f90856511a1b7ffffb076c7019ed3;hpb=5273a3df6485dc2ad6aa7ddd441b9a21970f003b;p=linux-2.6.git diff --git a/drivers/atm/firestream.c b/drivers/atm/firestream.c index f45adbb4c..7f7ec2888 100644 --- a/drivers/atm/firestream.c +++ b/drivers/atm/firestream.c @@ -82,14 +82,14 @@ static int num=0x5a; * would be interpreted. -- REW */ #define NP FS_NR_FREE_POOLS -int rx_buf_sizes[NP] = {128, 256, 512, 1024, 2048, 4096, 16384, 65520}; +static int rx_buf_sizes[NP] = {128, 256, 512, 1024, 2048, 4096, 16384, 65520}; /* log2: 7 8 9 10 11 12 14 16 */ #if 0 -int rx_pool_sizes[NP] = {1024, 1024, 512, 256, 128, 64, 32, 32}; +static int rx_pool_sizes[NP] = {1024, 1024, 512, 256, 128, 64, 32, 32}; #else /* debug */ -int rx_pool_sizes[NP] = {128, 128, 128, 64, 64, 64, 32, 32}; +static int rx_pool_sizes[NP] = {128, 128, 128, 64, 64, 64, 32, 32}; #endif /* log2: 10 10 9 8 7 6 5 5 */ /* sumlog2: 17 18 18 18 18 18 19 21 */ @@ -250,7 +250,7 @@ struct reginit_item { }; -struct reginit_item PHY_NTC_INIT[] __devinitdata = { +static struct reginit_item PHY_NTC_INIT[] __devinitdata = { { PHY_CLEARALL, 0x40 }, { 0x12, 0x0001 }, { 0x13, 0x7605 }, @@ -306,11 +306,11 @@ static int fs_debug = 0; #ifdef MODULE #ifdef DEBUG -MODULE_PARM(fs_debug, "i"); +module_param(fs_debug, int, 0644); #endif -MODULE_PARM(loopback, "i"); -MODULE_PARM(num, "i"); -MODULE_PARM(fs_keystream, "i"); +module_param(loopback, int, 0); +module_param(num, int, 0); +module_param(fs_keystream, int, 0); /* XXX Add rx_buf_sizes, and rx_pool_sizes As per request Amar. -- REW */ #endif @@ -334,7 +334,7 @@ MODULE_PARM(fs_keystream, "i"); #define func_exit() fs_dprintk (FS_DEBUG_FLOW, "fs: exit %s\n", __FUNCTION__) -struct fs_dev *fs_boards = NULL; +static struct fs_dev *fs_boards = NULL; #ifdef DEBUG @@ -815,7 +815,7 @@ static void process_incoming (struct fs_dev *dev, struct queue *q) skb_put (skb, qe->p1 & 0xffff); ATM_SKB(skb)->vcc = atm_vcc; atomic_inc(&atm_vcc->stats->rx); - do_gettimeofday(&skb->stamp); + __net_timestamp(skb); fs_dprintk (FS_DEBUG_ALLOC, "Free rec-skb: %p (pushed)\n", skb); atm_vcc->push (atm_vcc, skb); fs_dprintk (FS_DEBUG_ALLOC, "Free rec-d: %p\n", pe); @@ -1000,7 +1000,7 @@ static int fs_open(struct atm_vcc *atm_vcc) } else { r = ROUND_UP; } - error = make_rate (pcr, r, &tmc0, 0); + error = make_rate (pcr, r, &tmc0, NULL); } fs_dprintk (FS_DEBUG_OPEN, "pcr = %d.\n", pcr); } @@ -1220,7 +1220,7 @@ static int fs_send (struct atm_vcc *atm_vcc, struct sk_buff *skb) /* Some function placeholders for functions we don't yet support. */ #if 0 -static int fs_ioctl(struct atm_dev *dev,unsigned int cmd,void *arg) +static int fs_ioctl(struct atm_dev *dev,unsigned int cmd,void __user *arg) { func_enter (); func_exit (); @@ -1229,7 +1229,7 @@ static int fs_ioctl(struct atm_dev *dev,unsigned int cmd,void *arg) static int fs_getsockopt(struct atm_vcc *vcc,int level,int optname, - void *optval,int optlen) + void __user *optval,int optlen) { func_enter (); func_exit (); @@ -1238,7 +1238,7 @@ static int fs_getsockopt(struct atm_vcc *vcc,int level,int optname, static int fs_setsockopt(struct atm_vcc *vcc,int level,int optname, - void *optval,int optlen) + void __user *optval,int optlen) { func_enter (); func_exit (); @@ -1374,13 +1374,13 @@ static void reset_chip (struct fs_dev *dev) } } -static void __devinit *aligned_kmalloc (int size, int flags, int alignment) +static void __devinit *aligned_kmalloc (int size, gfp_t flags, int alignment) { void *t; if (alignment <= 0x10) { t = kmalloc (size, flags); - if ((unsigned int)t & (alignment-1)) { + if ((unsigned long)t & (alignment-1)) { printk ("Kmalloc doesn't align things correctly! %p\n", t); kfree (t); return aligned_kmalloc (size, flags, alignment * 4); @@ -1464,7 +1464,8 @@ static inline int nr_buffers_in_freepool (struct fs_dev *dev, struct freepool *f does. I've seen "receive abort: no buffers" and things started working again after that... -- REW */ -static void top_off_fp (struct fs_dev *dev, struct freepool *fp, int gfp_flags) +static void top_off_fp (struct fs_dev *dev, struct freepool *fp, + gfp_t gfp_flags) { struct FS_BPENTRY *qe, *ne; struct sk_buff *skb; @@ -1667,7 +1668,7 @@ static int __devinit fs_init (struct fs_dev *dev) dev->hw_base = pci_resource_start(pci_dev, 0); - dev->base = (ulong) ioremap(dev->hw_base, 0x1000); + dev->base = ioremap(dev->hw_base, 0x1000); reset_chip (dev); @@ -1704,8 +1705,7 @@ static int __devinit fs_init (struct fs_dev *dev) } /* Try again after 10ms. */ - set_current_state(TASK_UNINTERRUPTIBLE); - schedule_timeout ((HZ+99)/100); + msleep(10); } if (!to) { @@ -1922,7 +1922,7 @@ static int __devinit firestream_init_one (struct pci_dev *pci_dev, return -ENODEV; } -void __devexit firestream_remove_one (struct pci_dev *pdev) +static void __devexit firestream_remove_one (struct pci_dev *pdev) { int i; struct fs_dev *dev, *nxtdev; @@ -2013,66 +2013,6 @@ void __devexit firestream_remove_one (struct pci_dev *pdev) func_exit (); } - -#if 0 -int __init fs_detect(void) -{ - struct pci_dev *pci_dev; - int devs = 0; - - func_enter (); - pci_dev = NULL; - while ((pci_dev = pci_find_device(PCI_VENDOR_ID_FUJITSU_ME, - PCI_DEVICE_ID_FUJITSU_FS50, - pci_dev))) { - if (fs_register_and_init (pci_dev, &fs_pci_tbl[0])) - break; - devs++; - } - - while ((pci_dev = pci_find_device(PCI_VENDOR_ID_FUJITSU_ME, - PCI_DEVICE_ID_FUJITSU_FS155, - pci_dev))) { - if (fs_register_and_init (pci_dev, FS_IS155)) - break; - devs++; - } - func_exit (); - return devs; -} -#else - -#if 0 -int __init init_PCI (void) -{ /* Begin init_PCI */ - - int pci_count; - printk ("init_PCI\n"); - /* - memset (&firestream_driver, 0, sizeof (firestream_driver)); - firestream_driver.name = "firestream"; - firestream_driver.id_table = firestream_pci_tbl; - firestream_driver.probe = fs_register_and_init; - */ - pci_count = pci_register_driver (&firestream_driver); - - if (pci_count <= 0) { - pci_unregister_driver (&firestream_driver); - pci_count = 0; - } - - return(pci_count); - -} /* End init_PCI */ -#endif -#endif - -/* -#ifdef MODULE -#define firestream_init init_module -#endif -*/ - static struct pci_device_id firestream_pci_tbl[] = { { PCI_VENDOR_ID_FUJITSU_ME, PCI_DEVICE_ID_FUJITSU_FS50, PCI_ANY_ID, PCI_ANY_ID, 0, 0, FS_IS50}, @@ -2095,7 +2035,7 @@ static int __init firestream_init_module (void) int error; func_enter (); - error = pci_module_init(&firestream_driver); + error = pci_register_driver(&firestream_driver); func_exit (); return error; } @@ -2111,3 +2051,4 @@ module_exit(firestream_cleanup_module); MODULE_LICENSE("GPL"); +