Lines Matching refs:ucan

168 	struct peak_canfd_priv ucan;	/* must be the first member */  member
329 peak_canfd_handle_msgs_list(&priv->ucan, in pciefd_irq_handler()
342 spin_lock_irqsave(&priv->ucan.echo_lock, flags); in pciefd_irq_handler()
343 if (!priv->ucan.can.echo_skb[priv->ucan.echo_idx]) in pciefd_irq_handler()
344 netif_wake_queue(priv->ucan.ndev); in pciefd_irq_handler()
346 spin_unlock_irqrestore(&priv->ucan.echo_lock, flags); in pciefd_irq_handler()
355 static int pciefd_enable_tx_path(struct peak_canfd_priv *ucan) in pciefd_enable_tx_path() argument
357 struct pciefd_can *priv = (struct pciefd_can *)ucan; in pciefd_enable_tx_path()
391 static int pciefd_pre_cmd(struct peak_canfd_priv *ucan) in pciefd_pre_cmd() argument
393 struct pciefd_can *priv = (struct pciefd_can *)ucan; in pciefd_pre_cmd()
402 if (ucan->can.state == CAN_STATE_BUS_OFF) in pciefd_pre_cmd()
406 err = request_irq(priv->ucan.ndev->irq, in pciefd_pre_cmd()
447 static int pciefd_write_cmd(struct peak_canfd_priv *ucan) in pciefd_write_cmd() argument
449 struct pciefd_can *priv = (struct pciefd_can *)ucan; in pciefd_write_cmd()
455 pciefd_can_writereg(priv, *(u32 *)ucan->cmd_buffer, in pciefd_write_cmd()
457 pciefd_can_writereg(priv, *(u32 *)(ucan->cmd_buffer + 4), in pciefd_write_cmd()
466 static int pciefd_post_cmd(struct peak_canfd_priv *ucan) in pciefd_post_cmd() argument
468 struct pciefd_can *priv = (struct pciefd_can *)ucan; in pciefd_post_cmd()
474 if (ucan->can.state == CAN_STATE_STOPPED) in pciefd_post_cmd()
490 free_irq(priv->ucan.ndev->irq, priv); in pciefd_post_cmd()
492 ucan->can.state = CAN_STATE_STOPPED; in pciefd_post_cmd()
500 static void *pciefd_alloc_tx_msg(struct peak_canfd_priv *ucan, u16 msg_size, in pciefd_alloc_tx_msg() argument
503 struct pciefd_can *priv = (struct pciefd_can *)ucan; in pciefd_alloc_tx_msg()
557 static int pciefd_write_tx_msg(struct peak_canfd_priv *ucan, in pciefd_write_tx_msg() argument
560 struct pciefd_can *priv = (struct pciefd_can *)ucan; in pciefd_write_tx_msg()
594 priv->ucan.pre_cmd = pciefd_pre_cmd; in pciefd_can_probe()
595 priv->ucan.write_cmd = pciefd_write_cmd; in pciefd_can_probe()
596 priv->ucan.post_cmd = pciefd_post_cmd; in pciefd_can_probe()
597 priv->ucan.enable_tx_path = pciefd_enable_tx_path; in pciefd_can_probe()
598 priv->ucan.alloc_tx_msg = pciefd_alloc_tx_msg; in pciefd_can_probe()
599 priv->ucan.write_tx_msg = pciefd_write_tx_msg; in pciefd_can_probe()
602 priv->ucan.cmd_buffer = &priv->pucan_cmd; in pciefd_can_probe()
603 priv->ucan.cmd_maxlen = sizeof(priv->pucan_cmd); in pciefd_can_probe()
608 priv->reg_base = pciefd->reg_base + PCIEFD_CANX_OFF(priv->ucan.index); in pciefd_can_probe()
641 priv->ucan.can.clock.freq = 20 * 1000 * 1000; in pciefd_can_probe()
644 priv->ucan.can.clock.freq = 24 * 1000 * 1000; in pciefd_can_probe()
647 priv->ucan.can.clock.freq = 30 * 1000 * 1000; in pciefd_can_probe()
650 priv->ucan.can.clock.freq = 40 * 1000 * 1000; in pciefd_can_probe()
653 priv->ucan.can.clock.freq = 60 * 1000 * 1000; in pciefd_can_probe()
661 priv->ucan.can.clock.freq = 80 * 1000 * 1000; in pciefd_can_probe()
697 unregister_candev(priv->ucan.ndev); in pciefd_can_remove()
700 free_candev(priv->ucan.ndev); in pciefd_can_remove()