static struct atm_dev *_ia_dev[8];
static int iadev_count;
static void ia_led_timer(unsigned long arg);
-static struct timer_list ia_timer = TIMER_INITIALIZER(ia_led_timer, 0, 0);
+static DEFINE_TIMER(ia_timer, ia_led_timer, 0, 0);
static int IA_TX_BUF = DFL_TX_BUFFERS, IA_TX_BUF_SZ = DFL_TX_BUF_SZ;
static int IA_RX_BUF = DFL_RX_BUFFERS, IA_RX_BUF_SZ = DFL_RX_BUF_SZ;
static uint IADebugFlag = /* IF_IADBG_ERR | IF_IADBG_CBR| IF_IADBG_INIT_ADAPTER
if (ia_vcc->pcr < iadev->rate_limit)
skb_queue_head_init (&ia_vcc->txing_skb);
if (ia_vcc->pcr < iadev->rate_limit) {
- if (vcc->qos.txtp.max_sdu != 0) {
+ struct sock *sk = sk_atm(vcc);
+
+ if (vcc->qos.txtp.max_sdu != 0) {
if (ia_vcc->pcr > 60000)
- vcc->sk->sk_sndbuf = vcc->qos.txtp.max_sdu * 5;
+ sk->sk_sndbuf = vcc->qos.txtp.max_sdu * 5;
else if (ia_vcc->pcr > 2000)
- vcc->sk->sk_sndbuf = vcc->qos.txtp.max_sdu * 4;
+ sk->sk_sndbuf = vcc->qos.txtp.max_sdu * 4;
else
- vcc->sk->sk_sndbuf = vcc->qos.txtp.max_sdu * 3;
+ sk->sk_sndbuf = vcc->qos.txtp.max_sdu * 3;
}
else
- vcc->sk->sk_sndbuf = 24576;
+ sk->sk_sndbuf = 24576;
}
vc = (struct main_vc *)iadev->MAIN_VC_TABLE_ADDR;
iadev_count--;
ia_dev[iadev_count] = NULL;
_ia_dev[iadev_count] = NULL;
+ IF_EVENT(printk("deregistering iav at (itf:%d)\n", dev->number);)
atm_dev_deregister(dev);
- IF_EVENT(printk("iav deregistered at (itf:%d)\n", dev->number);)
iounmap(iadev->base);
pci_disable_device(pdev);
{
int ret;
- ret = pci_module_init(&ia_driver);
+ ret = pci_register_driver(&ia_driver);
if (ret >= 0) {
ia_timer.expires = jiffies + 3*HZ;
add_timer(&ia_timer);