Lines Matching refs:priv
213 static void pch_can_set_run_mode(struct pch_can_priv *priv, in pch_can_set_run_mode() argument
218 pch_can_bit_clear(&priv->regs->cont, PCH_CTRL_INIT); in pch_can_set_run_mode()
222 pch_can_bit_set(&priv->regs->cont, PCH_CTRL_INIT); in pch_can_set_run_mode()
226 netdev_err(priv->ndev, "%s -> Invalid Mode.\n", __func__); in pch_can_set_run_mode()
231 static void pch_can_set_optmode(struct pch_can_priv *priv) in pch_can_set_optmode() argument
233 u32 reg_val = ioread32(&priv->regs->opt); in pch_can_set_optmode()
235 if (priv->can.ctrlmode & CAN_CTRLMODE_LISTENONLY) in pch_can_set_optmode()
238 if (priv->can.ctrlmode & CAN_CTRLMODE_LOOPBACK) in pch_can_set_optmode()
241 pch_can_bit_set(&priv->regs->cont, PCH_CTRL_OPT); in pch_can_set_optmode()
242 iowrite32(reg_val, &priv->regs->opt); in pch_can_set_optmode()
262 static void pch_can_set_int_enables(struct pch_can_priv *priv, in pch_can_set_int_enables() argument
267 pch_can_bit_clear(&priv->regs->cont, PCH_CTRL_IE); in pch_can_set_int_enables()
271 pch_can_bit_set(&priv->regs->cont, PCH_CTRL_IE_SIE_EIE); in pch_can_set_int_enables()
275 pch_can_bit_clear(&priv->regs->cont, PCH_CTRL_IE_SIE_EIE); in pch_can_set_int_enables()
279 netdev_err(priv->ndev, "Invalid interrupt number.\n"); in pch_can_set_int_enables()
284 static void pch_can_set_rxtx(struct pch_can_priv *priv, u32 buff_num, in pch_can_set_rxtx() argument
295 iowrite32(PCH_CMASK_RX_TX_GET, &priv->regs->ifregs[dir].cmask); in pch_can_set_rxtx()
296 pch_can_rw_msg_obj(&priv->regs->ifregs[dir].creq, buff_num); in pch_can_set_rxtx()
300 &priv->regs->ifregs[dir].cmask); in pch_can_set_rxtx()
304 pch_can_bit_set(&priv->regs->ifregs[dir].mcont, ie); in pch_can_set_rxtx()
305 pch_can_bit_set(&priv->regs->ifregs[dir].id2, PCH_ID_MSGVAL); in pch_can_set_rxtx()
308 pch_can_bit_clear(&priv->regs->ifregs[dir].mcont, ie); in pch_can_set_rxtx()
309 pch_can_bit_clear(&priv->regs->ifregs[dir].id2, PCH_ID_MSGVAL); in pch_can_set_rxtx()
312 pch_can_rw_msg_obj(&priv->regs->ifregs[dir].creq, buff_num); in pch_can_set_rxtx()
315 static void pch_can_set_rx_all(struct pch_can_priv *priv, int set) in pch_can_set_rx_all() argument
321 pch_can_set_rxtx(priv, i, set, PCH_RX_IFREG); in pch_can_set_rx_all()
324 static void pch_can_set_tx_all(struct pch_can_priv *priv, int set) in pch_can_set_tx_all() argument
330 pch_can_set_rxtx(priv, i, set, PCH_TX_IFREG); in pch_can_set_tx_all()
333 static u32 pch_can_int_pending(struct pch_can_priv *priv) in pch_can_int_pending() argument
335 return ioread32(&priv->regs->intr) & 0xffff; in pch_can_int_pending()
338 static void pch_can_clear_if_buffers(struct pch_can_priv *priv) in pch_can_clear_if_buffers() argument
343 iowrite32(PCH_CMASK_RX_TX_SET, &priv->regs->ifregs[0].cmask); in pch_can_clear_if_buffers()
344 iowrite32(0xffff, &priv->regs->ifregs[0].mask1); in pch_can_clear_if_buffers()
345 iowrite32(0xffff, &priv->regs->ifregs[0].mask2); in pch_can_clear_if_buffers()
346 iowrite32(0x0, &priv->regs->ifregs[0].id1); in pch_can_clear_if_buffers()
347 iowrite32(0x0, &priv->regs->ifregs[0].id2); in pch_can_clear_if_buffers()
348 iowrite32(0x0, &priv->regs->ifregs[0].mcont); in pch_can_clear_if_buffers()
349 iowrite32(0x0, &priv->regs->ifregs[0].data[0]); in pch_can_clear_if_buffers()
350 iowrite32(0x0, &priv->regs->ifregs[0].data[1]); in pch_can_clear_if_buffers()
351 iowrite32(0x0, &priv->regs->ifregs[0].data[2]); in pch_can_clear_if_buffers()
352 iowrite32(0x0, &priv->regs->ifregs[0].data[3]); in pch_can_clear_if_buffers()
355 &priv->regs->ifregs[0].cmask); in pch_can_clear_if_buffers()
356 pch_can_rw_msg_obj(&priv->regs->ifregs[0].creq, i); in pch_can_clear_if_buffers()
360 static void pch_can_config_rx_tx_buffers(struct pch_can_priv *priv) in pch_can_config_rx_tx_buffers() argument
365 iowrite32(PCH_CMASK_RX_TX_GET, &priv->regs->ifregs[0].cmask); in pch_can_config_rx_tx_buffers()
366 pch_can_rw_msg_obj(&priv->regs->ifregs[0].creq, i); in pch_can_config_rx_tx_buffers()
368 iowrite32(0x0, &priv->regs->ifregs[0].id1); in pch_can_config_rx_tx_buffers()
369 iowrite32(0x0, &priv->regs->ifregs[0].id2); in pch_can_config_rx_tx_buffers()
371 pch_can_bit_set(&priv->regs->ifregs[0].mcont, in pch_can_config_rx_tx_buffers()
376 pch_can_bit_set(&priv->regs->ifregs[0].mcont, in pch_can_config_rx_tx_buffers()
379 pch_can_bit_clear(&priv->regs->ifregs[0].mcont, in pch_can_config_rx_tx_buffers()
382 iowrite32(0, &priv->regs->ifregs[0].mask1); in pch_can_config_rx_tx_buffers()
383 pch_can_bit_clear(&priv->regs->ifregs[0].mask2, in pch_can_config_rx_tx_buffers()
388 PCH_CMASK_CTRL, &priv->regs->ifregs[0].cmask); in pch_can_config_rx_tx_buffers()
390 pch_can_rw_msg_obj(&priv->regs->ifregs[0].creq, i); in pch_can_config_rx_tx_buffers()
394 iowrite32(PCH_CMASK_RX_TX_GET, &priv->regs->ifregs[1].cmask); in pch_can_config_rx_tx_buffers()
395 pch_can_rw_msg_obj(&priv->regs->ifregs[1].creq, i); in pch_can_config_rx_tx_buffers()
398 iowrite32(0x0, &priv->regs->ifregs[1].id1); in pch_can_config_rx_tx_buffers()
399 iowrite32(PCH_ID2_DIR, &priv->regs->ifregs[1].id2); in pch_can_config_rx_tx_buffers()
403 &priv->regs->ifregs[1].mcont); in pch_can_config_rx_tx_buffers()
405 iowrite32(0, &priv->regs->ifregs[1].mask1); in pch_can_config_rx_tx_buffers()
406 pch_can_bit_clear(&priv->regs->ifregs[1].mask2, 0x1fff); in pch_can_config_rx_tx_buffers()
410 PCH_CMASK_CTRL, &priv->regs->ifregs[1].cmask); in pch_can_config_rx_tx_buffers()
412 pch_can_rw_msg_obj(&priv->regs->ifregs[1].creq, i); in pch_can_config_rx_tx_buffers()
416 static void pch_can_init(struct pch_can_priv *priv) in pch_can_init() argument
419 pch_can_set_run_mode(priv, PCH_CAN_STOP); in pch_can_init()
422 pch_can_clear_if_buffers(priv); in pch_can_init()
425 pch_can_config_rx_tx_buffers(priv); in pch_can_init()
428 pch_can_set_int_enables(priv, PCH_CAN_ALL); in pch_can_init()
431 static void pch_can_release(struct pch_can_priv *priv) in pch_can_release() argument
434 pch_can_set_run_mode(priv, PCH_CAN_STOP); in pch_can_release()
437 pch_can_set_int_enables(priv, PCH_CAN_NONE); in pch_can_release()
440 pch_can_set_rx_all(priv, 0); in pch_can_release()
443 pch_can_set_tx_all(priv, 0); in pch_can_release()
447 static void pch_can_int_clr(struct pch_can_priv *priv, u32 mask) in pch_can_int_clr() argument
453 &priv->regs->ifregs[0].cmask); in pch_can_int_clr()
456 pch_can_bit_clear(&priv->regs->ifregs[0].id2, PCH_ID2_DIR); in pch_can_int_clr()
459 pch_can_bit_clear(&priv->regs->ifregs[0].mcont, in pch_can_int_clr()
462 pch_can_rw_msg_obj(&priv->regs->ifregs[0].creq, mask); in pch_can_int_clr()
468 &priv->regs->ifregs[1].cmask); in pch_can_int_clr()
471 pch_can_bit_set(&priv->regs->ifregs[1].id2, in pch_can_int_clr()
473 iowrite32(0x0, &priv->regs->ifregs[1].id1); in pch_can_int_clr()
476 pch_can_bit_clear(&priv->regs->ifregs[1].mcont, in pch_can_int_clr()
479 pch_can_rw_msg_obj(&priv->regs->ifregs[1].creq, mask); in pch_can_int_clr()
483 static void pch_can_reset(struct pch_can_priv *priv) in pch_can_reset() argument
486 iowrite32(1, &priv->regs->srst); in pch_can_reset()
487 iowrite32(0, &priv->regs->srst); in pch_can_reset()
493 struct pch_can_priv *priv = netdev_priv(ndev); in pch_can_error() local
496 struct net_device_stats *stats = &(priv->ndev->stats); in pch_can_error()
497 enum can_state state = priv->can.state; in pch_can_error()
504 pch_can_set_tx_all(priv, 0); in pch_can_error()
505 pch_can_set_rx_all(priv, 0); in pch_can_error()
508 priv->can.can_stats.bus_off++; in pch_can_error()
512 errc = ioread32(&priv->regs->errc); in pch_can_error()
516 priv->can.can_stats.error_warning++; in pch_can_error()
527 priv->can.can_stats.error_passive++; in pch_can_error()
542 priv->can.can_stats.bus_error++; in pch_can_error()
547 priv->can.can_stats.bus_error++; in pch_can_error()
552 priv->can.can_stats.bus_error++; in pch_can_error()
558 priv->can.can_stats.bus_error++; in pch_can_error()
564 priv->can.can_stats.bus_error++; in pch_can_error()
574 priv->can.state = state; in pch_can_error()
584 struct pch_can_priv *priv = netdev_priv(ndev); in pch_can_interrupt() local
586 if (!pch_can_int_pending(priv)) in pch_can_interrupt()
589 pch_can_set_int_enables(priv, PCH_CAN_NONE); in pch_can_interrupt()
590 napi_schedule(&priv->napi); in pch_can_interrupt()
594 static void pch_fifo_thresh(struct pch_can_priv *priv, int obj_id) in pch_fifo_thresh() argument
598 PCH_CMASK_ARB, &priv->regs->ifregs[0].cmask); in pch_fifo_thresh()
601 pch_can_bit_clear(&priv->regs->ifregs[0].id2, PCH_ID2_DIR); in pch_fifo_thresh()
604 pch_can_bit_clear(&priv->regs->ifregs[0].mcont, in pch_fifo_thresh()
606 pch_can_rw_msg_obj(&priv->regs->ifregs[0].creq, obj_id); in pch_fifo_thresh()
608 pch_can_int_clr(priv, obj_id); in pch_fifo_thresh()
612 pch_can_int_clr(priv, cnt + 1); in pch_fifo_thresh()
618 struct pch_can_priv *priv = netdev_priv(ndev); in pch_can_rx_msg_lost() local
619 struct net_device_stats *stats = &(priv->ndev->stats); in pch_can_rx_msg_lost()
623 netdev_dbg(priv->ndev, "Msg Obj is overwritten.\n"); in pch_can_rx_msg_lost()
624 pch_can_bit_clear(&priv->regs->ifregs[0].mcont, in pch_can_rx_msg_lost()
627 &priv->regs->ifregs[0].cmask); in pch_can_rx_msg_lost()
628 pch_can_rw_msg_obj(&priv->regs->ifregs[0].creq, obj_id); in pch_can_rx_msg_lost()
649 struct pch_can_priv *priv = netdev_priv(ndev); in pch_can_rx_normal() local
650 struct net_device_stats *stats = &(priv->ndev->stats); in pch_can_rx_normal()
657 iowrite32(PCH_CMASK_RX_TX_GET, &priv->regs->ifregs[0].cmask); in pch_can_rx_normal()
658 pch_can_rw_msg_obj(&priv->regs->ifregs[0].creq, obj_num); in pch_can_rx_normal()
661 reg = ioread32(&priv->regs->ifregs[0].mcont); in pch_can_rx_normal()
678 skb = alloc_can_skb(priv->ndev, &cf); in pch_can_rx_normal()
685 id2 = ioread32(&priv->regs->ifregs[0].id2); in pch_can_rx_normal()
687 id = (ioread32(&priv->regs->ifregs[0].id1) & 0xffff); in pch_can_rx_normal()
698 cf->can_dlc = get_can_dlc((ioread32(&priv->regs-> in pch_can_rx_normal()
702 data_reg = ioread16(&priv->regs->ifregs[0].data[i / 2]); in pch_can_rx_normal()
713 pch_fifo_thresh(priv, obj_num); in pch_can_rx_normal()
722 struct pch_can_priv *priv = netdev_priv(ndev); in pch_can_tx_complete() local
723 struct net_device_stats *stats = &(priv->ndev->stats); in pch_can_tx_complete()
728 &priv->regs->ifregs[1].cmask); in pch_can_tx_complete()
729 pch_can_rw_msg_obj(&priv->regs->ifregs[1].creq, int_stat); in pch_can_tx_complete()
730 dlc = get_can_dlc(ioread32(&priv->regs->ifregs[1].mcont) & in pch_can_tx_complete()
741 struct pch_can_priv *priv = netdev_priv(ndev); in pch_can_poll() local
746 int_stat = pch_can_int_pending(priv); in pch_can_poll()
751 reg_stat = ioread32(&priv->regs->stat); in pch_can_poll()
760 pch_can_bit_clear(&priv->regs->stat, in pch_can_poll()
763 int_stat = pch_can_int_pending(priv); in pch_can_poll()
779 pch_can_set_int_enables(priv, PCH_CAN_ALL); in pch_can_poll()
786 struct pch_can_priv *priv = netdev_priv(ndev); in pch_set_bittiming() local
787 const struct can_bittiming *bt = &priv->can.bittiming; in pch_set_bittiming()
792 pch_can_bit_set(&priv->regs->cont, PCH_CTRL_CCE); in pch_set_bittiming()
799 iowrite32(canbit, &priv->regs->bitt); in pch_set_bittiming()
800 iowrite32(bepe, &priv->regs->brpe); in pch_set_bittiming()
801 pch_can_bit_clear(&priv->regs->cont, PCH_CTRL_CCE); in pch_set_bittiming()
808 struct pch_can_priv *priv = netdev_priv(ndev); in pch_can_start() local
810 if (priv->can.state != CAN_STATE_STOPPED) in pch_can_start()
811 pch_can_reset(priv); in pch_can_start()
814 pch_can_set_optmode(priv); in pch_can_start()
816 pch_can_set_tx_all(priv, 1); in pch_can_start()
817 pch_can_set_rx_all(priv, 1); in pch_can_start()
820 pch_can_set_run_mode(priv, PCH_CAN_RUN); in pch_can_start()
822 priv->can.state = CAN_STATE_ERROR_ACTIVE; in pch_can_start()
846 struct pch_can_priv *priv = netdev_priv(ndev); in pch_can_open() local
850 retval = request_irq(priv->dev->irq, pch_can_interrupt, IRQF_SHARED, in pch_can_open()
864 pch_can_init(priv); in pch_can_open()
866 napi_enable(&priv->napi); in pch_can_open()
872 free_irq(priv->dev->irq, ndev); in pch_can_open()
874 pch_can_release(priv); in pch_can_open()
881 struct pch_can_priv *priv = netdev_priv(ndev); in pch_close() local
884 napi_disable(&priv->napi); in pch_close()
885 pch_can_release(priv); in pch_close()
886 free_irq(priv->dev->irq, ndev); in pch_close()
888 priv->can.state = CAN_STATE_STOPPED; in pch_close()
894 struct pch_can_priv *priv = netdev_priv(ndev); in pch_xmit() local
903 tx_obj_no = priv->tx_obj; in pch_xmit()
904 if (priv->tx_obj == PCH_TX_OBJ_END) { in pch_xmit()
905 if (ioread32(&priv->regs->treq2) & PCH_TREQ2_TX_MASK) in pch_xmit()
908 priv->tx_obj = PCH_TX_OBJ_START; in pch_xmit()
910 priv->tx_obj++; in pch_xmit()
914 pch_can_bit_set(&priv->regs->ifregs[1].cmask, PCH_CMASK_ALL); in pch_xmit()
918 iowrite32(cf->can_id & 0xffff, &priv->regs->ifregs[1].id1); in pch_xmit()
921 iowrite32(0, &priv->regs->ifregs[1].id1); in pch_xmit()
931 iowrite32(id2, &priv->regs->ifregs[1].id2); in pch_xmit()
936 &priv->regs->ifregs[1].data[i / 2]); in pch_xmit()
943 PCH_IF_MCONT_TXIE, &priv->regs->ifregs[1].mcont); in pch_xmit()
945 pch_can_rw_msg_obj(&priv->regs->ifregs[1].creq, tx_obj_no); in pch_xmit()
960 struct pch_can_priv *priv = netdev_priv(ndev); in pch_can_remove() local
962 unregister_candev(priv->ndev); in pch_can_remove()
963 if (priv->use_msi) in pch_can_remove()
964 pci_disable_msi(priv->dev); in pch_can_remove()
967 pch_can_reset(priv); in pch_can_remove()
968 pci_iounmap(pdev, priv->regs); in pch_can_remove()
969 free_candev(priv->ndev); in pch_can_remove()
973 static void pch_can_set_int_custom(struct pch_can_priv *priv) in pch_can_set_int_custom() argument
976 pch_can_bit_clear(&priv->regs->cont, PCH_CTRL_IE_SIE_EIE); in pch_can_set_int_custom()
979 pch_can_bit_set(&priv->regs->cont, in pch_can_set_int_custom()
980 ((priv->int_enables & PCH_MSK_CTRL_IE_SIE_EIE) << 1)); in pch_can_set_int_custom()
984 static u32 pch_can_get_int_enables(struct pch_can_priv *priv) in pch_can_get_int_enables() argument
987 return (ioread32(&priv->regs->cont) & PCH_CTRL_IE_SIE_EIE) >> 1; in pch_can_get_int_enables()
990 static u32 pch_can_get_rxtx_ir(struct pch_can_priv *priv, u32 buff_num, in pch_can_get_rxtx_ir() argument
1000 iowrite32(PCH_CMASK_RX_TX_GET, &priv->regs->ifregs[dir].cmask); in pch_can_get_rxtx_ir()
1001 pch_can_rw_msg_obj(&priv->regs->ifregs[dir].creq, buff_num); in pch_can_get_rxtx_ir()
1003 if (((ioread32(&priv->regs->ifregs[dir].id2)) & PCH_ID_MSGVAL) && in pch_can_get_rxtx_ir()
1004 ((ioread32(&priv->regs->ifregs[dir].mcont)) & ie)) in pch_can_get_rxtx_ir()
1012 static void pch_can_set_rx_buffer_link(struct pch_can_priv *priv, in pch_can_set_rx_buffer_link() argument
1015 iowrite32(PCH_CMASK_RX_TX_GET, &priv->regs->ifregs[0].cmask); in pch_can_set_rx_buffer_link()
1016 pch_can_rw_msg_obj(&priv->regs->ifregs[0].creq, buffer_num); in pch_can_set_rx_buffer_link()
1018 &priv->regs->ifregs[0].cmask); in pch_can_set_rx_buffer_link()
1020 pch_can_bit_clear(&priv->regs->ifregs[0].mcont, in pch_can_set_rx_buffer_link()
1023 pch_can_bit_set(&priv->regs->ifregs[0].mcont, PCH_IF_MCONT_EOB); in pch_can_set_rx_buffer_link()
1025 pch_can_rw_msg_obj(&priv->regs->ifregs[0].creq, buffer_num); in pch_can_set_rx_buffer_link()
1028 static u32 pch_can_get_rx_buffer_link(struct pch_can_priv *priv, u32 buffer_num) in pch_can_get_rx_buffer_link() argument
1032 iowrite32(PCH_CMASK_RX_TX_GET, &priv->regs->ifregs[0].cmask); in pch_can_get_rx_buffer_link()
1033 pch_can_rw_msg_obj(&priv->regs->ifregs[0].creq, buffer_num); in pch_can_get_rx_buffer_link()
1035 if (ioread32(&priv->regs->ifregs[0].mcont) & PCH_IF_MCONT_EOB) in pch_can_get_rx_buffer_link()
1042 static int pch_can_get_buffer_status(struct pch_can_priv *priv) in pch_can_get_buffer_status() argument
1044 return (ioread32(&priv->regs->treq1) & 0xffff) | in pch_can_get_buffer_status()
1045 (ioread32(&priv->regs->treq2) << 16); in pch_can_get_buffer_status()
1056 struct pch_can_priv *priv = netdev_priv(dev); in pch_can_suspend() local
1059 pch_can_set_run_mode(priv, PCH_CAN_STOP); in pch_can_suspend()
1062 priv->can.state = CAN_STATE_STOPPED; in pch_can_suspend()
1066 buf_stat = pch_can_get_buffer_status(priv); in pch_can_suspend()
1076 priv->int_enables = pch_can_get_int_enables(priv); in pch_can_suspend()
1077 pch_can_set_int_enables(priv, PCH_CAN_DISABLE); in pch_can_suspend()
1081 priv->tx_enable[i - 1] = pch_can_get_rxtx_ir(priv, i, in pch_can_suspend()
1085 pch_can_set_tx_all(priv, 0); in pch_can_suspend()
1089 priv->rx_enable[i - 1] = pch_can_get_rxtx_ir(priv, i, in pch_can_suspend()
1091 priv->rx_link[i - 1] = pch_can_get_rx_buffer_link(priv, i); in pch_can_suspend()
1095 pch_can_set_rx_all(priv, 0); in pch_can_suspend()
1113 struct pch_can_priv *priv = netdev_priv(dev); in pch_can_resume() local
1125 priv->can.state = CAN_STATE_ERROR_ACTIVE; in pch_can_resume()
1128 pch_can_set_int_enables(priv, PCH_CAN_DISABLE); in pch_can_resume()
1131 pch_can_set_run_mode(priv, PCH_CAN_STOP); in pch_can_resume()
1134 pch_can_config_rx_tx_buffers(priv); in pch_can_resume()
1140 pch_can_set_optmode(priv); in pch_can_resume()
1144 pch_can_set_rxtx(priv, i, priv->tx_enable[i - 1], PCH_TX_IFREG); in pch_can_resume()
1149 pch_can_set_rx_buffer_link(priv, i, priv->rx_link[i - 1]); in pch_can_resume()
1152 pch_can_set_rxtx(priv, i, priv->rx_enable[i - 1], PCH_RX_IFREG); in pch_can_resume()
1156 pch_can_set_int_custom(priv); in pch_can_resume()
1159 pch_can_set_run_mode(priv, PCH_CAN_RUN); in pch_can_resume()
1171 struct pch_can_priv *priv = netdev_priv(dev); in pch_can_get_berr_counter() local
1172 u32 errc = ioread32(&priv->regs->errc); in pch_can_get_berr_counter()
1184 struct pch_can_priv *priv; in pch_can_probe() local
1214 priv = netdev_priv(ndev); in pch_can_probe()
1215 priv->ndev = ndev; in pch_can_probe()
1216 priv->regs = addr; in pch_can_probe()
1217 priv->dev = pdev; in pch_can_probe()
1218 priv->can.bittiming_const = &pch_can_bittiming_const; in pch_can_probe()
1219 priv->can.do_set_mode = pch_can_do_set_mode; in pch_can_probe()
1220 priv->can.do_get_berr_counter = pch_can_get_berr_counter; in pch_can_probe()
1221 priv->can.ctrlmode_supported = CAN_CTRLMODE_LISTENONLY | in pch_can_probe()
1223 priv->tx_obj = PCH_TX_OBJ_START; /* Point head of Tx Obj */ in pch_can_probe()
1231 priv->can.clock.freq = PCH_CAN_CLK; /* Hz */ in pch_can_probe()
1233 netif_napi_add(ndev, &priv->napi, pch_can_poll, PCH_RX_OBJ_END); in pch_can_probe()
1235 rc = pci_enable_msi(priv->dev); in pch_can_probe()
1238 priv->use_msi = 0; in pch_can_probe()
1242 priv->use_msi = 1; in pch_can_probe()
1254 if (priv->use_msi) in pch_can_probe()
1255 pci_disable_msi(priv->dev); in pch_can_probe()