Loading drivers/atm/he.c +9 −2 Original line number Diff line number Diff line Loading @@ -1542,6 +1542,7 @@ he_start(struct atm_dev *dev) /* initialize framer */ #ifdef CONFIG_ATM_HE_USE_SUNI if (he_isMM(he_dev)) suni_init(he_dev->atm_dev); if (he_dev->atm_dev->phy && he_dev->atm_dev->phy->start) he_dev->atm_dev->phy->start(he_dev->atm_dev); Loading @@ -1554,6 +1555,7 @@ he_start(struct atm_dev *dev) val = he_phy_get(he_dev->atm_dev, SUNI_TPOP_APM); val = (val & ~SUNI_TPOP_APM_S) | (SUNI_TPOP_S_SDH << SUNI_TPOP_APM_S_SHIFT); he_phy_put(he_dev->atm_dev, val, SUNI_TPOP_APM); he_phy_put(he_dev->atm_dev, SUNI_TACP_IUCHP_CLP, SUNI_TACP_IUCHP); } /* 5.1.12 enable transmit and receive */ Loading Loading @@ -2848,6 +2850,11 @@ he_ioctl(struct atm_dev *atm_dev, unsigned int cmd, void __user *arg) spin_lock_irqsave(&he_dev->global_lock, flags); switch (reg.type) { case HE_REGTYPE_PCI: if (reg.addr < 0 || reg.addr >= HE_REGMAP_SIZE) { err = -EINVAL; break; } reg.val = he_readl(he_dev, reg.addr); break; case HE_REGTYPE_RCM: Loading drivers/atm/he.h +4 −9 Original line number Diff line number Diff line Loading @@ -267,13 +267,7 @@ struct he_dev { char prod_id[30]; char mac_addr[6]; int media; /* * 0x26 = HE155 MM * 0x27 = HE622 MM * 0x46 = HE155 SM * 0x47 = HE622 SM */ int media; unsigned int vcibits, vpibits; unsigned int cells_per_row; Loading Loading @@ -392,6 +386,7 @@ struct he_vcc #define HE_DEV(dev) ((struct he_dev *) (dev)->dev_data) #define he_is622(dev) ((dev)->media & 0x1) #define he_isMM(dev) ((dev)->media & 0x20) #define HE_REGMAP_SIZE 0x100000 Loading Loading @@ -876,8 +871,8 @@ struct he_vcc #define M_SN 0x3a /* integer */ #define MEDIA 0x3e /* integer */ #define HE155MM 0x26 #define HE155SM 0x27 #define HE622MM 0x46 #define HE622MM 0x27 #define HE155SM 0x46 #define HE622SM 0x47 #define MAC_ADDR 0x42 /* char[] */ Loading drivers/atm/iphase.c +13 −14 Original line number Diff line number Diff line Loading @@ -2562,17 +2562,11 @@ static int __devinit ia_start(struct atm_dev *dev) error = suni_init(dev); if (error) goto err_free_rx; /* * Enable interrupt on loss of signal * SUNI_RSOP_CIE - 0x10 * SUNI_RSOP_CIE_LOSE - 0x04 */ ia_phy_put(dev, ia_phy_get(dev, 0x10) | 0x04, 0x10); #ifndef MODULE if (dev->phy->start) { error = dev->phy->start(dev); if (error) goto err_free_rx; #endif } /* Get iadev->carrier_detect status */ IaFrontEndIntr(iadev); } Loading Loading @@ -3198,6 +3192,8 @@ static int __devinit ia_init_one(struct pci_dev *pdev, IF_INIT(printk("dev_id = 0x%x iadev->LineRate = %d \n", (u32)dev, iadev->LineRate);) pci_set_drvdata(pdev, dev); ia_dev[iadev_count] = iadev; _ia_dev[iadev_count] = dev; iadev_count++; Loading @@ -3219,8 +3215,6 @@ static int __devinit ia_init_one(struct pci_dev *pdev, iadev->next_board = ia_boards; ia_boards = dev; pci_set_drvdata(pdev, dev); return 0; err_out_deregister_dev: Loading @@ -3238,9 +3232,14 @@ static void __devexit ia_remove_one(struct pci_dev *pdev) struct atm_dev *dev = pci_get_drvdata(pdev); IADEV *iadev = INPH_IA_DEV(dev); ia_phy_put(dev, ia_phy_get(dev,0x10) & ~(0x4), 0x10); /* Disable phy interrupts */ ia_phy_put(dev, ia_phy_get(dev, SUNI_RSOP_CIE) & ~(SUNI_RSOP_CIE_LOSE), SUNI_RSOP_CIE); udelay(1); if (dev->phy && dev->phy->stop) dev->phy->stop(dev); /* De-register device */ free_irq(iadev->irq, dev); iadev_count--; Loading drivers/net/wireless/b43/b43.h +0 −1 Original line number Diff line number Diff line Loading @@ -649,7 +649,6 @@ struct b43_pio { /* Context information for a noise calculation (Link Quality). */ struct b43_noise_calculation { u8 channel_at_start; bool calculation_running; u8 nr_samples; s8 samples[8][4]; Loading drivers/net/wireless/b43/dma.c +32 −33 Original line number Diff line number Diff line Loading @@ -795,24 +795,49 @@ struct b43_dmaring *b43_setup_dmaring(struct b43_wldev *dev, { struct b43_dmaring *ring; int err; int nr_slots; dma_addr_t dma_test; ring = kzalloc(sizeof(*ring), GFP_KERNEL); if (!ring) goto out; ring->type = type; nr_slots = B43_RXRING_SLOTS; ring->nr_slots = B43_RXRING_SLOTS; if (for_tx) nr_slots = B43_TXRING_SLOTS; ring->nr_slots = B43_TXRING_SLOTS; ring->meta = kcalloc(nr_slots, sizeof(struct b43_dmadesc_meta), ring->meta = kcalloc(ring->nr_slots, sizeof(struct b43_dmadesc_meta), GFP_KERNEL); if (!ring->meta) goto err_kfree_ring; ring->type = type; ring->dev = dev; ring->mmio_base = b43_dmacontroller_base(type, controller_index); ring->index = controller_index; if (type == B43_DMA_64BIT) ring->ops = &dma64_ops; else ring->ops = &dma32_ops; if (for_tx) { ring->txhdr_cache = kcalloc(nr_slots, ring->tx = 1; ring->current_slot = -1; } else { if (ring->index == 0) { ring->rx_buffersize = B43_DMA0_RX_BUFFERSIZE; ring->frameoffset = B43_DMA0_RX_FRAMEOFFSET; } else if (ring->index == 3) { ring->rx_buffersize = B43_DMA3_RX_BUFFERSIZE; ring->frameoffset = B43_DMA3_RX_FRAMEOFFSET; } else B43_WARN_ON(1); } spin_lock_init(&ring->lock); #ifdef CONFIG_B43_DEBUG ring->last_injected_overflow = jiffies; #endif if (for_tx) { ring->txhdr_cache = kcalloc(ring->nr_slots, b43_txhdr_size(dev), GFP_KERNEL); if (!ring->txhdr_cache) Loading @@ -828,7 +853,7 @@ struct b43_dmaring *b43_setup_dmaring(struct b43_wldev *dev, b43_txhdr_size(dev), 1)) { /* ugh realloc */ kfree(ring->txhdr_cache); ring->txhdr_cache = kcalloc(nr_slots, ring->txhdr_cache = kcalloc(ring->nr_slots, b43_txhdr_size(dev), GFP_KERNEL | GFP_DMA); if (!ring->txhdr_cache) Loading @@ -853,32 +878,6 @@ struct b43_dmaring *b43_setup_dmaring(struct b43_wldev *dev, DMA_TO_DEVICE); } ring->dev = dev; ring->nr_slots = nr_slots; ring->mmio_base = b43_dmacontroller_base(type, controller_index); ring->index = controller_index; if (type == B43_DMA_64BIT) ring->ops = &dma64_ops; else ring->ops = &dma32_ops; if (for_tx) { ring->tx = 1; ring->current_slot = -1; } else { if (ring->index == 0) { ring->rx_buffersize = B43_DMA0_RX_BUFFERSIZE; ring->frameoffset = B43_DMA0_RX_FRAMEOFFSET; } else if (ring->index == 3) { ring->rx_buffersize = B43_DMA3_RX_BUFFERSIZE; ring->frameoffset = B43_DMA3_RX_FRAMEOFFSET; } else B43_WARN_ON(1); } spin_lock_init(&ring->lock); #ifdef CONFIG_B43_DEBUG ring->last_injected_overflow = jiffies; #endif err = alloc_ringmemory(ring); if (err) goto err_kfree_txhdr_cache; Loading Loading
drivers/atm/he.c +9 −2 Original line number Diff line number Diff line Loading @@ -1542,6 +1542,7 @@ he_start(struct atm_dev *dev) /* initialize framer */ #ifdef CONFIG_ATM_HE_USE_SUNI if (he_isMM(he_dev)) suni_init(he_dev->atm_dev); if (he_dev->atm_dev->phy && he_dev->atm_dev->phy->start) he_dev->atm_dev->phy->start(he_dev->atm_dev); Loading @@ -1554,6 +1555,7 @@ he_start(struct atm_dev *dev) val = he_phy_get(he_dev->atm_dev, SUNI_TPOP_APM); val = (val & ~SUNI_TPOP_APM_S) | (SUNI_TPOP_S_SDH << SUNI_TPOP_APM_S_SHIFT); he_phy_put(he_dev->atm_dev, val, SUNI_TPOP_APM); he_phy_put(he_dev->atm_dev, SUNI_TACP_IUCHP_CLP, SUNI_TACP_IUCHP); } /* 5.1.12 enable transmit and receive */ Loading Loading @@ -2848,6 +2850,11 @@ he_ioctl(struct atm_dev *atm_dev, unsigned int cmd, void __user *arg) spin_lock_irqsave(&he_dev->global_lock, flags); switch (reg.type) { case HE_REGTYPE_PCI: if (reg.addr < 0 || reg.addr >= HE_REGMAP_SIZE) { err = -EINVAL; break; } reg.val = he_readl(he_dev, reg.addr); break; case HE_REGTYPE_RCM: Loading
drivers/atm/he.h +4 −9 Original line number Diff line number Diff line Loading @@ -267,13 +267,7 @@ struct he_dev { char prod_id[30]; char mac_addr[6]; int media; /* * 0x26 = HE155 MM * 0x27 = HE622 MM * 0x46 = HE155 SM * 0x47 = HE622 SM */ int media; unsigned int vcibits, vpibits; unsigned int cells_per_row; Loading Loading @@ -392,6 +386,7 @@ struct he_vcc #define HE_DEV(dev) ((struct he_dev *) (dev)->dev_data) #define he_is622(dev) ((dev)->media & 0x1) #define he_isMM(dev) ((dev)->media & 0x20) #define HE_REGMAP_SIZE 0x100000 Loading Loading @@ -876,8 +871,8 @@ struct he_vcc #define M_SN 0x3a /* integer */ #define MEDIA 0x3e /* integer */ #define HE155MM 0x26 #define HE155SM 0x27 #define HE622MM 0x46 #define HE622MM 0x27 #define HE155SM 0x46 #define HE622SM 0x47 #define MAC_ADDR 0x42 /* char[] */ Loading
drivers/atm/iphase.c +13 −14 Original line number Diff line number Diff line Loading @@ -2562,17 +2562,11 @@ static int __devinit ia_start(struct atm_dev *dev) error = suni_init(dev); if (error) goto err_free_rx; /* * Enable interrupt on loss of signal * SUNI_RSOP_CIE - 0x10 * SUNI_RSOP_CIE_LOSE - 0x04 */ ia_phy_put(dev, ia_phy_get(dev, 0x10) | 0x04, 0x10); #ifndef MODULE if (dev->phy->start) { error = dev->phy->start(dev); if (error) goto err_free_rx; #endif } /* Get iadev->carrier_detect status */ IaFrontEndIntr(iadev); } Loading Loading @@ -3198,6 +3192,8 @@ static int __devinit ia_init_one(struct pci_dev *pdev, IF_INIT(printk("dev_id = 0x%x iadev->LineRate = %d \n", (u32)dev, iadev->LineRate);) pci_set_drvdata(pdev, dev); ia_dev[iadev_count] = iadev; _ia_dev[iadev_count] = dev; iadev_count++; Loading @@ -3219,8 +3215,6 @@ static int __devinit ia_init_one(struct pci_dev *pdev, iadev->next_board = ia_boards; ia_boards = dev; pci_set_drvdata(pdev, dev); return 0; err_out_deregister_dev: Loading @@ -3238,9 +3232,14 @@ static void __devexit ia_remove_one(struct pci_dev *pdev) struct atm_dev *dev = pci_get_drvdata(pdev); IADEV *iadev = INPH_IA_DEV(dev); ia_phy_put(dev, ia_phy_get(dev,0x10) & ~(0x4), 0x10); /* Disable phy interrupts */ ia_phy_put(dev, ia_phy_get(dev, SUNI_RSOP_CIE) & ~(SUNI_RSOP_CIE_LOSE), SUNI_RSOP_CIE); udelay(1); if (dev->phy && dev->phy->stop) dev->phy->stop(dev); /* De-register device */ free_irq(iadev->irq, dev); iadev_count--; Loading
drivers/net/wireless/b43/b43.h +0 −1 Original line number Diff line number Diff line Loading @@ -649,7 +649,6 @@ struct b43_pio { /* Context information for a noise calculation (Link Quality). */ struct b43_noise_calculation { u8 channel_at_start; bool calculation_running; u8 nr_samples; s8 samples[8][4]; Loading
drivers/net/wireless/b43/dma.c +32 −33 Original line number Diff line number Diff line Loading @@ -795,24 +795,49 @@ struct b43_dmaring *b43_setup_dmaring(struct b43_wldev *dev, { struct b43_dmaring *ring; int err; int nr_slots; dma_addr_t dma_test; ring = kzalloc(sizeof(*ring), GFP_KERNEL); if (!ring) goto out; ring->type = type; nr_slots = B43_RXRING_SLOTS; ring->nr_slots = B43_RXRING_SLOTS; if (for_tx) nr_slots = B43_TXRING_SLOTS; ring->nr_slots = B43_TXRING_SLOTS; ring->meta = kcalloc(nr_slots, sizeof(struct b43_dmadesc_meta), ring->meta = kcalloc(ring->nr_slots, sizeof(struct b43_dmadesc_meta), GFP_KERNEL); if (!ring->meta) goto err_kfree_ring; ring->type = type; ring->dev = dev; ring->mmio_base = b43_dmacontroller_base(type, controller_index); ring->index = controller_index; if (type == B43_DMA_64BIT) ring->ops = &dma64_ops; else ring->ops = &dma32_ops; if (for_tx) { ring->txhdr_cache = kcalloc(nr_slots, ring->tx = 1; ring->current_slot = -1; } else { if (ring->index == 0) { ring->rx_buffersize = B43_DMA0_RX_BUFFERSIZE; ring->frameoffset = B43_DMA0_RX_FRAMEOFFSET; } else if (ring->index == 3) { ring->rx_buffersize = B43_DMA3_RX_BUFFERSIZE; ring->frameoffset = B43_DMA3_RX_FRAMEOFFSET; } else B43_WARN_ON(1); } spin_lock_init(&ring->lock); #ifdef CONFIG_B43_DEBUG ring->last_injected_overflow = jiffies; #endif if (for_tx) { ring->txhdr_cache = kcalloc(ring->nr_slots, b43_txhdr_size(dev), GFP_KERNEL); if (!ring->txhdr_cache) Loading @@ -828,7 +853,7 @@ struct b43_dmaring *b43_setup_dmaring(struct b43_wldev *dev, b43_txhdr_size(dev), 1)) { /* ugh realloc */ kfree(ring->txhdr_cache); ring->txhdr_cache = kcalloc(nr_slots, ring->txhdr_cache = kcalloc(ring->nr_slots, b43_txhdr_size(dev), GFP_KERNEL | GFP_DMA); if (!ring->txhdr_cache) Loading @@ -853,32 +878,6 @@ struct b43_dmaring *b43_setup_dmaring(struct b43_wldev *dev, DMA_TO_DEVICE); } ring->dev = dev; ring->nr_slots = nr_slots; ring->mmio_base = b43_dmacontroller_base(type, controller_index); ring->index = controller_index; if (type == B43_DMA_64BIT) ring->ops = &dma64_ops; else ring->ops = &dma32_ops; if (for_tx) { ring->tx = 1; ring->current_slot = -1; } else { if (ring->index == 0) { ring->rx_buffersize = B43_DMA0_RX_BUFFERSIZE; ring->frameoffset = B43_DMA0_RX_FRAMEOFFSET; } else if (ring->index == 3) { ring->rx_buffersize = B43_DMA3_RX_BUFFERSIZE; ring->frameoffset = B43_DMA3_RX_FRAMEOFFSET; } else B43_WARN_ON(1); } spin_lock_init(&ring->lock); #ifdef CONFIG_B43_DEBUG ring->last_injected_overflow = jiffies; #endif err = alloc_ringmemory(ring); if (err) goto err_kfree_txhdr_cache; Loading