Lines Matching refs:chip

149 static inline void pch_eth_enable_set(struct pch_dev *chip)  in pch_eth_enable_set()  argument
153 val = ioread32(&chip->regs->ts_sel) | (PCH_ECS_ETH); in pch_eth_enable_set()
154 iowrite32(val, (&chip->regs->ts_sel)); in pch_eth_enable_set()
184 static inline void pch_block_reset(struct pch_dev *chip) in pch_block_reset() argument
188 val = ioread32(&chip->regs->control) | PCH_TSC_RESET; in pch_block_reset()
189 iowrite32(val, (&chip->regs->control)); in pch_block_reset()
191 iowrite32(val, (&chip->regs->control)); in pch_block_reset()
196 struct pch_dev *chip = pci_get_drvdata(pdev); in pch_ch_control_read() local
199 val = ioread32(&chip->regs->ch_control); in pch_ch_control_read()
207 struct pch_dev *chip = pci_get_drvdata(pdev); in pch_ch_control_write() local
209 iowrite32(val, (&chip->regs->ch_control)); in pch_ch_control_write()
215 struct pch_dev *chip = pci_get_drvdata(pdev); in pch_ch_event_read() local
218 val = ioread32(&chip->regs->ch_event); in pch_ch_event_read()
226 struct pch_dev *chip = pci_get_drvdata(pdev); in pch_ch_event_write() local
228 iowrite32(val, (&chip->regs->ch_event)); in pch_ch_event_write()
234 struct pch_dev *chip = pci_get_drvdata(pdev); in pch_src_uuid_lo_read() local
237 val = ioread32(&chip->regs->src_uuid_lo); in pch_src_uuid_lo_read()
245 struct pch_dev *chip = pci_get_drvdata(pdev); in pch_src_uuid_hi_read() local
248 val = ioread32(&chip->regs->src_uuid_hi); in pch_src_uuid_hi_read()
256 struct pch_dev *chip = pci_get_drvdata(pdev); in pch_rx_snap_read() local
260 lo = ioread32(&chip->regs->rx_snap_lo); in pch_rx_snap_read()
261 hi = ioread32(&chip->regs->rx_snap_hi); in pch_rx_snap_read()
273 struct pch_dev *chip = pci_get_drvdata(pdev); in pch_tx_snap_read() local
277 lo = ioread32(&chip->regs->tx_snap_lo); in pch_tx_snap_read()
278 hi = ioread32(&chip->regs->tx_snap_hi); in pch_tx_snap_read()
290 static void pch_set_system_time_count(struct pch_dev *chip) in pch_set_system_time_count() argument
292 iowrite32(0x01, &chip->regs->stl_max_set_en); in pch_set_system_time_count()
293 iowrite32(0xFFFFFFFF, &chip->regs->stl_max_set); in pch_set_system_time_count()
294 iowrite32(0x00, &chip->regs->stl_max_set_en); in pch_set_system_time_count()
297 static void pch_reset(struct pch_dev *chip) in pch_reset() argument
300 pch_block_reset(chip); in pch_reset()
303 pch_set_system_time_count(chip); in pch_reset()
315 struct pch_dev *chip = pci_get_drvdata(pdev); in pch_set_station_address() local
318 if ((chip->regs == NULL) || addr == (u8 *)NULL) { in pch_set_station_address()
352 iowrite32(val, &chip->regs->ts_st[i]); in pch_set_station_address()
563 struct pch_dev *chip = pci_get_drvdata(pdev); in pch_remove() local
565 ptp_clock_unregister(chip->ptp_clock); in pch_remove()
568 free_irq(pdev->irq, chip); in pch_remove()
571 if (chip->regs != NULL) { in pch_remove()
572 iounmap(chip->regs); in pch_remove()
573 chip->regs = NULL; in pch_remove()
576 if (chip->mem_base != 0) { in pch_remove()
577 release_mem_region(chip->mem_base, chip->mem_size); in pch_remove()
578 chip->mem_base = 0; in pch_remove()
581 kfree(chip); in pch_remove()
590 struct pch_dev *chip; in pch_probe() local
592 chip = kzalloc(sizeof(struct pch_dev), GFP_KERNEL); in pch_probe()
593 if (chip == NULL) in pch_probe()
603 chip->mem_base = pci_resource_start(pdev, IO_MEM_BAR); in pch_probe()
604 if (!chip->mem_base) { in pch_probe()
611 chip->mem_size = pci_resource_len(pdev, IO_MEM_BAR); in pch_probe()
614 if (!request_mem_region(chip->mem_base, chip->mem_size, "1588_regs")) { in pch_probe()
622 chip->regs = ioremap(chip->mem_base, chip->mem_size); in pch_probe()
624 if (!chip->regs) { in pch_probe()
630 chip->caps = ptp_pch_caps; in pch_probe()
631 chip->ptp_clock = ptp_clock_register(&chip->caps, &pdev->dev); in pch_probe()
632 if (IS_ERR(chip->ptp_clock)) { in pch_probe()
633 ret = PTR_ERR(chip->ptp_clock); in pch_probe()
637 spin_lock_init(&chip->register_lock); in pch_probe()
639 ret = request_irq(pdev->irq, &isr, IRQF_SHARED, KBUILD_MODNAME, chip); in pch_probe()
646 chip->irq = pdev->irq; in pch_probe()
647 chip->pdev = pdev; in pch_probe()
648 pci_set_drvdata(pdev, chip); in pch_probe()
650 spin_lock_irqsave(&chip->register_lock, flags); in pch_probe()
652 pch_reset(chip); in pch_probe()
654 iowrite32(DEFAULT_ADDEND, &chip->regs->addend); in pch_probe()
655 iowrite32(1, &chip->regs->trgt_lo); in pch_probe()
656 iowrite32(0, &chip->regs->trgt_hi); in pch_probe()
657 iowrite32(PCH_TSE_TTIPEND, &chip->regs->event); in pch_probe()
659 pch_eth_enable_set(chip); in pch_probe()
669 spin_unlock_irqrestore(&chip->register_lock, flags); in pch_probe()
673 ptp_clock_unregister(chip->ptp_clock); in pch_probe()
675 iounmap(chip->regs); in pch_probe()
676 chip->regs = NULL; in pch_probe()
679 release_mem_region(chip->mem_base, chip->mem_size); in pch_probe()
682 chip->mem_base = 0; in pch_probe()
688 kfree(chip); in pch_probe()