Lines Matching refs:adapter

147 #define KS8842_USE_DMA(adapter) (((adapter)->dma_tx.channel != -1) && \  argument
148 ((adapter)->dma_rx.channel != -1))
166 static inline void ks8842_resume_dma(struct ks8842_adapter *adapter) in ks8842_resume_dma() argument
168 iowrite32(1, adapter->hw_addr + REQ_TIMB_DMA_RESUME); in ks8842_resume_dma()
171 static inline void ks8842_select_bank(struct ks8842_adapter *adapter, u16 bank) in ks8842_select_bank() argument
173 iowrite16(bank, adapter->hw_addr + REG_SELECT_BANK); in ks8842_select_bank()
176 static inline void ks8842_write8(struct ks8842_adapter *adapter, u16 bank, in ks8842_write8() argument
179 ks8842_select_bank(adapter, bank); in ks8842_write8()
180 iowrite8(value, adapter->hw_addr + offset); in ks8842_write8()
183 static inline void ks8842_write16(struct ks8842_adapter *adapter, u16 bank, in ks8842_write16() argument
186 ks8842_select_bank(adapter, bank); in ks8842_write16()
187 iowrite16(value, adapter->hw_addr + offset); in ks8842_write16()
190 static inline void ks8842_enable_bits(struct ks8842_adapter *adapter, u16 bank, in ks8842_enable_bits() argument
194 ks8842_select_bank(adapter, bank); in ks8842_enable_bits()
195 reg = ioread16(adapter->hw_addr + offset); in ks8842_enable_bits()
197 iowrite16(reg, adapter->hw_addr + offset); in ks8842_enable_bits()
200 static inline void ks8842_clear_bits(struct ks8842_adapter *adapter, u16 bank, in ks8842_clear_bits() argument
204 ks8842_select_bank(adapter, bank); in ks8842_clear_bits()
205 reg = ioread16(adapter->hw_addr + offset); in ks8842_clear_bits()
207 iowrite16(reg, adapter->hw_addr + offset); in ks8842_clear_bits()
210 static inline void ks8842_write32(struct ks8842_adapter *adapter, u16 bank, in ks8842_write32() argument
213 ks8842_select_bank(adapter, bank); in ks8842_write32()
214 iowrite32(value, adapter->hw_addr + offset); in ks8842_write32()
217 static inline u8 ks8842_read8(struct ks8842_adapter *adapter, u16 bank, in ks8842_read8() argument
220 ks8842_select_bank(adapter, bank); in ks8842_read8()
221 return ioread8(adapter->hw_addr + offset); in ks8842_read8()
224 static inline u16 ks8842_read16(struct ks8842_adapter *adapter, u16 bank, in ks8842_read16() argument
227 ks8842_select_bank(adapter, bank); in ks8842_read16()
228 return ioread16(adapter->hw_addr + offset); in ks8842_read16()
231 static inline u32 ks8842_read32(struct ks8842_adapter *adapter, u16 bank, in ks8842_read32() argument
234 ks8842_select_bank(adapter, bank); in ks8842_read32()
235 return ioread32(adapter->hw_addr + offset); in ks8842_read32()
238 static void ks8842_reset(struct ks8842_adapter *adapter) in ks8842_reset() argument
240 if (adapter->conf_flags & MICREL_KS884X) { in ks8842_reset()
241 ks8842_write16(adapter, 3, 1, REG_GRR); in ks8842_reset()
243 iowrite16(0, adapter->hw_addr + REG_GRR); in ks8842_reset()
252 iowrite32(0x1, adapter->hw_addr + REG_TIMB_RST); in ks8842_reset()
258 struct ks8842_adapter *adapter) in ks8842_update_link_status() argument
261 if (ks8842_read16(adapter, 45, REG_P1MBSR) & 0x4) { in ks8842_update_link_status()
270 static void ks8842_enable_tx(struct ks8842_adapter *adapter) in ks8842_enable_tx() argument
272 ks8842_enable_bits(adapter, 16, 0x01, REG_TXCR); in ks8842_enable_tx()
275 static void ks8842_disable_tx(struct ks8842_adapter *adapter) in ks8842_disable_tx() argument
277 ks8842_clear_bits(adapter, 16, 0x01, REG_TXCR); in ks8842_disable_tx()
280 static void ks8842_enable_rx(struct ks8842_adapter *adapter) in ks8842_enable_rx() argument
282 ks8842_enable_bits(adapter, 16, 0x01, REG_RXCR); in ks8842_enable_rx()
285 static void ks8842_disable_rx(struct ks8842_adapter *adapter) in ks8842_disable_rx() argument
287 ks8842_clear_bits(adapter, 16, 0x01, REG_RXCR); in ks8842_disable_rx()
290 static void ks8842_reset_hw(struct ks8842_adapter *adapter) in ks8842_reset_hw() argument
293 ks8842_reset(adapter); in ks8842_reset_hw()
296 ks8842_write16(adapter, 16, 0x000E, REG_TXCR); in ks8842_reset_hw()
300 ks8842_write16(adapter, 16, 0x8 | 0x20 | 0x40 | 0x80 | 0x400, in ks8842_reset_hw()
304 ks8842_write16(adapter, 17, 0x4000, REG_TXFDPR); in ks8842_reset_hw()
307 ks8842_write16(adapter, 17, 0x4000, REG_RXFDPR); in ks8842_reset_hw()
310 ks8842_write16(adapter, 0, 0x1000, REG_QRFCR); in ks8842_reset_hw()
313 ks8842_enable_bits(adapter, 32, 1 << 8, REG_SGCR1); in ks8842_reset_hw()
316 ks8842_enable_bits(adapter, 32, 1 << 3, REG_SGCR2); in ks8842_reset_hw()
319 ks8842_write16(adapter, 48, 0x1E07, REG_P1CR2); in ks8842_reset_hw()
322 ks8842_enable_bits(adapter, 49, 1 << 13, REG_P1CR4); in ks8842_reset_hw()
325 ks8842_enable_tx(adapter); in ks8842_reset_hw()
328 ks8842_enable_rx(adapter); in ks8842_reset_hw()
331 ks8842_write16(adapter, 18, 0xffff, REG_ISR); in ks8842_reset_hw()
334 if (KS8842_USE_DMA(adapter)) { in ks8842_reset_hw()
339 iowrite16(ENABLED_IRQS_DMA_IP, adapter->hw_addr + REG_TIMB_IER); in ks8842_reset_hw()
340 ks8842_write16(adapter, 18, ENABLED_IRQS_DMA, REG_IER); in ks8842_reset_hw()
342 if (!(adapter->conf_flags & MICREL_KS884X)) in ks8842_reset_hw()
344 adapter->hw_addr + REG_TIMB_IER); in ks8842_reset_hw()
345 ks8842_write16(adapter, 18, ENABLED_IRQS, REG_IER); in ks8842_reset_hw()
348 ks8842_write16(adapter, 32, 0x1, REG_SW_ID_AND_ENABLE); in ks8842_reset_hw()
351 static void ks8842_init_mac_addr(struct ks8842_adapter *adapter) in ks8842_init_mac_addr() argument
358 addr[ETH_ALEN - i - 1] = ks8842_read8(adapter, 2, REG_MARL + i); in ks8842_init_mac_addr()
359 eth_hw_addr_set(adapter->netdev, addr); in ks8842_init_mac_addr()
361 if (adapter->conf_flags & MICREL_KS884X) { in ks8842_init_mac_addr()
367 mac = ks8842_read16(adapter, 2, REG_MARL); in ks8842_init_mac_addr()
368 ks8842_write16(adapter, 39, mac, REG_MACAR3); in ks8842_init_mac_addr()
369 mac = ks8842_read16(adapter, 2, REG_MARM); in ks8842_init_mac_addr()
370 ks8842_write16(adapter, 39, mac, REG_MACAR2); in ks8842_init_mac_addr()
371 mac = ks8842_read16(adapter, 2, REG_MARH); in ks8842_init_mac_addr()
372 ks8842_write16(adapter, 39, mac, REG_MACAR1); in ks8842_init_mac_addr()
376 mac = ks8842_read16(adapter, 2, REG_MARL); in ks8842_init_mac_addr()
377 ks8842_write16(adapter, 39, mac, REG_MACAR1); in ks8842_init_mac_addr()
378 mac = ks8842_read16(adapter, 2, REG_MARM); in ks8842_init_mac_addr()
379 ks8842_write16(adapter, 39, mac, REG_MACAR2); in ks8842_init_mac_addr()
380 mac = ks8842_read16(adapter, 2, REG_MARH); in ks8842_init_mac_addr()
381 ks8842_write16(adapter, 39, mac, REG_MACAR3); in ks8842_init_mac_addr()
385 static void ks8842_write_mac_addr(struct ks8842_adapter *adapter, const u8 *mac) in ks8842_write_mac_addr() argument
390 spin_lock_irqsave(&adapter->lock, flags); in ks8842_write_mac_addr()
392 ks8842_write8(adapter, 2, mac[ETH_ALEN - i - 1], REG_MARL + i); in ks8842_write_mac_addr()
393 if (!(adapter->conf_flags & MICREL_KS884X)) in ks8842_write_mac_addr()
394 ks8842_write8(adapter, 39, mac[ETH_ALEN - i - 1], in ks8842_write_mac_addr()
398 if (adapter->conf_flags & MICREL_KS884X) { in ks8842_write_mac_addr()
406 mac = ks8842_read16(adapter, 2, REG_MARL); in ks8842_write_mac_addr()
407 ks8842_write16(adapter, 39, mac, REG_MACAR3); in ks8842_write_mac_addr()
408 mac = ks8842_read16(adapter, 2, REG_MARM); in ks8842_write_mac_addr()
409 ks8842_write16(adapter, 39, mac, REG_MACAR2); in ks8842_write_mac_addr()
410 mac = ks8842_read16(adapter, 2, REG_MARH); in ks8842_write_mac_addr()
411 ks8842_write16(adapter, 39, mac, REG_MACAR1); in ks8842_write_mac_addr()
413 spin_unlock_irqrestore(&adapter->lock, flags); in ks8842_write_mac_addr()
416 static inline u16 ks8842_tx_fifo_space(struct ks8842_adapter *adapter) in ks8842_tx_fifo_space() argument
418 return ks8842_read16(adapter, 16, REG_TXMIR) & 0x1fff; in ks8842_tx_fifo_space()
423 struct ks8842_adapter *adapter = netdev_priv(netdev); in ks8842_tx_frame_dma() local
424 struct ks8842_tx_dma_ctl *ctl = &adapter->dma_tx; in ks8842_tx_frame_dma()
443 dma_sync_single_range_for_device(adapter->dev, in ks8842_tx_frame_dma()
469 struct ks8842_adapter *adapter = netdev_priv(netdev); in ks8842_tx_frame() local
477 if (ks8842_tx_fifo_space(adapter) < len + 8) in ks8842_tx_frame()
480 if (adapter->conf_flags & KS884X_16BIT) { in ks8842_tx_frame()
482 ks8842_write16(adapter, 17, 0x8000 | 0x100, REG_QMU_DATA_LO); in ks8842_tx_frame()
483 ks8842_write16(adapter, 17, (u16)len, REG_QMU_DATA_HI); in ks8842_tx_frame()
488 iowrite16(*ptr16++, adapter->hw_addr + REG_QMU_DATA_LO); in ks8842_tx_frame()
489 iowrite16(*ptr16++, adapter->hw_addr + REG_QMU_DATA_HI); in ks8842_tx_frame()
498 ks8842_write32(adapter, 17, ctrl, REG_QMU_DATA_LO); in ks8842_tx_frame()
504 iowrite32(*ptr, adapter->hw_addr + REG_QMU_DATA_LO); in ks8842_tx_frame()
511 ks8842_write16(adapter, 17, 1, REG_TXQCR); in ks8842_tx_frame()
544 struct ks8842_adapter *adapter = netdev_priv(netdev); in __ks8842_start_new_rx_dma() local
545 struct ks8842_rx_dma_ctl *ctl = &adapter->dma_rx; in __ks8842_start_new_rx_dma()
552 sg_dma_address(sg) = dma_map_single(adapter->dev, in __ks8842_start_new_rx_dma()
554 if (dma_mapping_error(adapter->dev, sg_dma_address(sg))) { in __ks8842_start_new_rx_dma()
582 dma_unmap_single(adapter->dev, sg_dma_address(sg), in __ks8842_start_new_rx_dma()
594 struct ks8842_adapter *adapter = from_tasklet(adapter, t, dma_rx.tasklet); in ks8842_rx_frame_dma_tasklet() local
595 struct net_device *netdev = adapter->netdev; in ks8842_rx_frame_dma_tasklet()
596 struct ks8842_rx_dma_ctl *ctl = &adapter->dma_rx; in ks8842_rx_frame_dma_tasklet()
607 dma_unmap_single(adapter->dev, addr, DMA_BUFFER_SIZE, DMA_FROM_DEVICE); in ks8842_rx_frame_dma_tasklet()
633 struct ks8842_adapter *adapter) in ks8842_rx_frame() argument
638 if (adapter->conf_flags & KS884X_16BIT) { in ks8842_rx_frame()
639 status = ks8842_read16(adapter, 17, REG_QMU_DATA_LO); in ks8842_rx_frame()
640 len = ks8842_read16(adapter, 17, REG_QMU_DATA_HI); in ks8842_rx_frame()
644 status = ks8842_read32(adapter, 17, REG_QMU_DATA_LO); in ks8842_rx_frame()
659 if (adapter->conf_flags & KS884X_16BIT) { in ks8842_rx_frame()
661 ks8842_select_bank(adapter, 17); in ks8842_rx_frame()
663 *data16++ = ioread16(adapter->hw_addr + in ks8842_rx_frame()
665 *data16++ = ioread16(adapter->hw_addr + in ks8842_rx_frame()
672 ks8842_select_bank(adapter, 17); in ks8842_rx_frame()
674 *data++ = ioread32(adapter->hw_addr + in ks8842_rx_frame()
687 ks8842_clear_bits(adapter, 0, 1 << 12, REG_QRFCR); in ks8842_rx_frame()
690 ks8842_write16(adapter, 17, 0x01, REG_RXQCR); in ks8842_rx_frame()
693 ks8842_enable_bits(adapter, 0, 1 << 12, REG_QRFCR); in ks8842_rx_frame()
697 struct ks8842_adapter *adapter) in ks8842_handle_rx() argument
699 u16 rx_data = ks8842_read16(adapter, 16, REG_RXMIR) & 0x1fff; in ks8842_handle_rx()
702 ks8842_rx_frame(netdev, adapter); in ks8842_handle_rx()
703 rx_data = ks8842_read16(adapter, 16, REG_RXMIR) & 0x1fff; in ks8842_handle_rx()
708 struct ks8842_adapter *adapter) in ks8842_handle_tx() argument
710 u16 sr = ks8842_read16(adapter, 16, REG_TXSR); in ks8842_handle_tx()
718 struct ks8842_adapter *adapter) in ks8842_handle_rx_overrun() argument
727 struct ks8842_adapter *adapter = from_tasklet(adapter, t, tasklet); in ks8842_tasklet() local
728 struct net_device *netdev = adapter->netdev; in ks8842_tasklet()
734 spin_lock_irqsave(&adapter->lock, flags); in ks8842_tasklet()
735 entry_bank = ioread16(adapter->hw_addr + REG_SELECT_BANK); in ks8842_tasklet()
736 spin_unlock_irqrestore(&adapter->lock, flags); in ks8842_tasklet()
738 isr = ks8842_read16(adapter, 18, REG_ISR); in ks8842_tasklet()
744 if (KS8842_USE_DMA(adapter)) in ks8842_tasklet()
748 ks8842_write16(adapter, 18, isr, REG_ISR); in ks8842_tasklet()
750 if (!(adapter->conf_flags & MICREL_KS884X)) in ks8842_tasklet()
752 iowrite32(0x1, adapter->hw_addr + REG_TIMB_IAR); in ks8842_tasklet()
758 ks8842_update_link_status(netdev, adapter); in ks8842_tasklet()
761 if (isr & (IRQ_RX | IRQ_RX_ERROR) && !KS8842_USE_DMA(adapter)) in ks8842_tasklet()
762 ks8842_handle_rx(netdev, adapter); in ks8842_tasklet()
766 ks8842_handle_tx(netdev, adapter); in ks8842_tasklet()
769 ks8842_handle_rx_overrun(netdev, adapter); in ks8842_tasklet()
772 ks8842_disable_tx(adapter); in ks8842_tasklet()
773 ks8842_enable_tx(adapter); in ks8842_tasklet()
777 ks8842_disable_rx(adapter); in ks8842_tasklet()
778 ks8842_enable_rx(adapter); in ks8842_tasklet()
782 spin_lock_irqsave(&adapter->lock, flags); in ks8842_tasklet()
783 if (KS8842_USE_DMA(adapter)) in ks8842_tasklet()
784 ks8842_write16(adapter, 18, ENABLED_IRQS_DMA, REG_IER); in ks8842_tasklet()
786 ks8842_write16(adapter, 18, ENABLED_IRQS, REG_IER); in ks8842_tasklet()
787 iowrite16(entry_bank, adapter->hw_addr + REG_SELECT_BANK); in ks8842_tasklet()
791 if (KS8842_USE_DMA(adapter)) in ks8842_tasklet()
792 ks8842_resume_dma(adapter); in ks8842_tasklet()
794 spin_unlock_irqrestore(&adapter->lock, flags); in ks8842_tasklet()
800 struct ks8842_adapter *adapter = netdev_priv(netdev); in ks8842_irq() local
802 u16 entry_bank = ioread16(adapter->hw_addr + REG_SELECT_BANK); in ks8842_irq()
805 isr = ks8842_read16(adapter, 18, REG_ISR); in ks8842_irq()
809 if (KS8842_USE_DMA(adapter)) in ks8842_irq()
811 ks8842_write16(adapter, 18, IRQ_RX, REG_IER); in ks8842_irq()
814 ks8842_write16(adapter, 18, 0x00, REG_IER); in ks8842_irq()
817 tasklet_schedule(&adapter->tasklet); in ks8842_irq()
822 iowrite16(entry_bank, adapter->hw_addr + REG_SELECT_BANK); in ks8842_irq()
827 ks8842_resume_dma(adapter); in ks8842_irq()
835 struct ks8842_adapter *adapter = netdev_priv(netdev); in ks8842_dma_rx_cb() local
839 if (adapter->dma_rx.adesc) in ks8842_dma_rx_cb()
840 tasklet_schedule(&adapter->dma_rx.tasklet); in ks8842_dma_rx_cb()
846 struct ks8842_adapter *adapter = netdev_priv(netdev); in ks8842_dma_tx_cb() local
847 struct ks8842_tx_dma_ctl *ctl = &adapter->dma_tx; in ks8842_dma_tx_cb()
861 static void ks8842_stop_dma(struct ks8842_adapter *adapter) in ks8842_stop_dma() argument
863 struct ks8842_tx_dma_ctl *tx_ctl = &adapter->dma_tx; in ks8842_stop_dma()
864 struct ks8842_rx_dma_ctl *rx_ctl = &adapter->dma_rx; in ks8842_stop_dma()
875 dma_unmap_single(adapter->dev, sg_dma_address(&rx_ctl->sg), in ks8842_stop_dma()
883 static void ks8842_dealloc_dma_bufs(struct ks8842_adapter *adapter) in ks8842_dealloc_dma_bufs() argument
885 struct ks8842_tx_dma_ctl *tx_ctl = &adapter->dma_tx; in ks8842_dealloc_dma_bufs()
886 struct ks8842_rx_dma_ctl *rx_ctl = &adapter->dma_rx; in ks8842_dealloc_dma_bufs()
888 ks8842_stop_dma(adapter); in ks8842_dealloc_dma_bufs()
901 dma_unmap_single(adapter->dev, sg_dma_address(&tx_ctl->sg), in ks8842_dealloc_dma_bufs()
916 struct ks8842_adapter *adapter = netdev_priv(netdev); in ks8842_alloc_dma_bufs() local
917 struct ks8842_tx_dma_ctl *tx_ctl = &adapter->dma_tx; in ks8842_alloc_dma_bufs()
918 struct ks8842_rx_dma_ctl *rx_ctl = &adapter->dma_rx; in ks8842_alloc_dma_bufs()
943 sg_dma_address(&tx_ctl->sg) = dma_map_single(adapter->dev, in ks8842_alloc_dma_bufs()
945 if (dma_mapping_error(adapter->dev, sg_dma_address(&tx_ctl->sg))) { in ks8842_alloc_dma_bufs()
962 ks8842_dealloc_dma_bufs(adapter); in ks8842_alloc_dma_bufs()
970 struct ks8842_adapter *adapter = netdev_priv(netdev); in ks8842_open() local
975 if (KS8842_USE_DMA(adapter)) { in ks8842_open()
982 ks8842_dealloc_dma_bufs(adapter); in ks8842_open()
988 ks8842_dealloc_dma_bufs(adapter); in ks8842_open()
989 adapter->dma_rx.channel = -1; in ks8842_open()
990 adapter->dma_tx.channel = -1; in ks8842_open()
995 ks8842_reset_hw(adapter); in ks8842_open()
997 ks8842_write_mac_addr(adapter, netdev->dev_addr); in ks8842_open()
999 ks8842_update_link_status(netdev, adapter); in ks8842_open()
1001 err = request_irq(adapter->irq, ks8842_irq, IRQF_SHARED, DRV_NAME, in ks8842_open()
1004 pr_err("Failed to request IRQ: %d: %d\n", adapter->irq, err); in ks8842_open()
1013 struct ks8842_adapter *adapter = netdev_priv(netdev); in ks8842_close() local
1017 cancel_work_sync(&adapter->timeout_work); in ks8842_close()
1019 if (KS8842_USE_DMA(adapter)) in ks8842_close()
1020 ks8842_dealloc_dma_bufs(adapter); in ks8842_close()
1023 free_irq(adapter->irq, netdev); in ks8842_close()
1026 ks8842_write16(adapter, 32, 0x0, REG_SW_ID_AND_ENABLE); in ks8842_close()
1035 struct ks8842_adapter *adapter = netdev_priv(netdev); in ks8842_xmit_frame() local
1039 if (KS8842_USE_DMA(adapter)) { in ks8842_xmit_frame()
1043 spin_lock_irqsave(&adapter->lock, flags); in ks8842_xmit_frame()
1044 if (adapter->dma_tx.adesc) in ks8842_xmit_frame()
1046 spin_unlock_irqrestore(&adapter->lock, flags); in ks8842_xmit_frame()
1052 if (ks8842_tx_fifo_space(adapter) < netdev->mtu + 8) in ks8842_xmit_frame()
1060 struct ks8842_adapter *adapter = netdev_priv(netdev); in ks8842_set_mac() local
1071 ks8842_write_mac_addr(adapter, mac); in ks8842_set_mac()
1077 struct ks8842_adapter *adapter = in ks8842_tx_timeout_work() local
1079 struct net_device *netdev = adapter->netdev; in ks8842_tx_timeout_work()
1084 spin_lock_irqsave(&adapter->lock, flags); in ks8842_tx_timeout_work()
1086 if (KS8842_USE_DMA(adapter)) in ks8842_tx_timeout_work()
1087 ks8842_stop_dma(adapter); in ks8842_tx_timeout_work()
1090 ks8842_write16(adapter, 18, 0, REG_IER); in ks8842_tx_timeout_work()
1091 ks8842_write16(adapter, 18, 0xFFFF, REG_ISR); in ks8842_tx_timeout_work()
1095 spin_unlock_irqrestore(&adapter->lock, flags); in ks8842_tx_timeout_work()
1097 ks8842_reset_hw(adapter); in ks8842_tx_timeout_work()
1099 ks8842_write_mac_addr(adapter, netdev->dev_addr); in ks8842_tx_timeout_work()
1101 ks8842_update_link_status(netdev, adapter); in ks8842_tx_timeout_work()
1103 if (KS8842_USE_DMA(adapter)) in ks8842_tx_timeout_work()
1109 struct ks8842_adapter *adapter = netdev_priv(netdev); in ks8842_tx_timeout() local
1113 schedule_work(&adapter->timeout_work); in ks8842_tx_timeout()
1134 struct ks8842_adapter *adapter; in ks8842_probe() local
1153 adapter = netdev_priv(netdev); in ks8842_probe()
1154 adapter->netdev = netdev; in ks8842_probe()
1155 INIT_WORK(&adapter->timeout_work, ks8842_tx_timeout_work); in ks8842_probe()
1156 adapter->hw_addr = ioremap(iomem->start, resource_size(iomem)); in ks8842_probe()
1157 adapter->conf_flags = iomem->flags; in ks8842_probe()
1159 if (!adapter->hw_addr) in ks8842_probe()
1162 adapter->irq = platform_get_irq(pdev, 0); in ks8842_probe()
1163 if (adapter->irq < 0) { in ks8842_probe()
1164 err = adapter->irq; in ks8842_probe()
1168 adapter->dev = (pdev->dev.parent) ? pdev->dev.parent : &pdev->dev; in ks8842_probe()
1171 if (!(adapter->conf_flags & MICREL_KS884X) && pdata && in ks8842_probe()
1174 adapter->dma_rx.channel = pdata->rx_dma_channel; in ks8842_probe()
1175 adapter->dma_tx.channel = pdata->tx_dma_channel; in ks8842_probe()
1177 adapter->dma_rx.channel = -1; in ks8842_probe()
1178 adapter->dma_tx.channel = -1; in ks8842_probe()
1181 tasklet_setup(&adapter->tasklet, ks8842_tasklet); in ks8842_probe()
1182 spin_lock_init(&adapter->lock); in ks8842_probe()
1200 ks8842_init_mac_addr(adapter); in ks8842_probe()
1206 id = ks8842_read16(adapter, 32, REG_SW_ID_AND_ENABLE); in ks8842_probe()
1222 iounmap(adapter->hw_addr); in ks8842_probe()
1234 struct ks8842_adapter *adapter = netdev_priv(netdev); in ks8842_remove() local
1238 tasklet_kill(&adapter->tasklet); in ks8842_remove()
1239 iounmap(adapter->hw_addr); in ks8842_remove()