Lines Matching +full:highly +full:- +full:integrated
1 .. SPDX-License-Identifier: GPL-2.0-or-later
10 ------------------------
19 `Vivado integration <https://gitlab.fel.cvut.cz/canbus/zynq/zynq-can-sja1000-top>`_
20 and Intel Cyclone V 5CSEMA4U23C6 based DE0-Nano-SoC Terasic board
21 `QSys integration <https://gitlab.fel.cvut.cz/canbus/intel-soc-ctucanfd>`_
23 `PCIe integration <https://gitlab.fel.cvut.cz/canbus/pcie-ctucanfd>`_ of the core.
33 version of emulation support can be cloned from ctu-canfd branch of QEMU local
34 development `repository <https://gitlab.fel.cvut.cz/canbus/qemu-canbus>`_.
38 ---------------
59 it allows for device hot-plug.
80 #address-cells = <1>;
81 #size-cells = <1>;
82 compatible = "simple-bus";
86 interrupt-parent = <&intc>;
100 The driver can be divided into two parts – platform-dependent device
101 discovery and set up, and platform-independent CAN network device
116 - A *probe* function
118 - A *remove* function
120 - A table of *compatible* devices that the driver can handle
126 required for handling the device, as well as set up low-level functions
127 for the platform-independent layer, e.g., *read_reg* and *write_reg*.
143 { .compatible = "ctu,canfd-2", },
170 - Bring the device up: ``ndo_open``
172 - Bring the device down: ``ndo_close``
174 - Submit TX frames to the device: ``ndo_start_xmit``
176 - Signal TX completion and errors to the network subsystem: ISR
178 - Submit RX frames to the network subsystem: ISR and NAPI
197 It is then re-enabled later in ISR when the device has some space
208 bus-off or RX overrun happens), error counters are updated, and
224 is NAPI – *the New API*. It is similar to classical top-half/bottom-half
229 enabling interrupts, handling an incoming IRQ in ISR, re-enabling the
235 -----------------------------------
242 AXI4, and AXI4-Lite, ACE and ACE-Lite**).
245 However, the core’s interface is half-duplex with no handshake
246 signaling, whereas AXI is full duplex with two-way signaling. Moreover,
247 even AXI-Lite slave interface is quite resource-intensive, and the
252 APB-AXI bridge is directly available in
261 ------------------------
267 Low-level driver
271 is desirable to have an OS-independent low-level driver. This low-level
273 either on bare metal or in a user-space application. Another advantage
274 is that if the hardware slightly changes, only the low-level driver
279 The low-level driver supports operations such as: set bit timing, set
294 SocketCAN is fairly flexible and offers either highly customized
313 __u32 brp_min; /* Bit-rate prescaler */
327 widths (6 and 7 bits, respectively), so the auto-computed values might
346 This brings us a chicken-egg problem: we want to allocate the ``skb``
368 3 requires non-trivial HW changes and is not ideal from the HW point of
399 (nibble-aligned). This should be flexible enough for most use cases.
417 +------+---+---+---+---+
421 +------+---+---+---+---+
423 +------+---+---+---+---+
425 +------+---+---+---+---+
429 +------+---+---+---+---+
433 +------+---+---+---+---+
435 +------+---+---+---+---+
437 +------+---+---+---+---+
441 +------+---+---+---+---+----+
445 +------+---+---+---+---+----+
447 +------+---+---+---+---+----+
449 +------+---+---+---+---+----+
453 .. kernel-figure:: fsm_txt_buffer_user.svg
468 Support for time-based packet transmission was recently merged to Linux
469 v4.19 `Time-based packet transmission <https://lwn.net/Articles/748879/>`_,
492 safe because it uses 2-cycle transactions. Essentially, the DOR flag
521 -----------------------------------
523 .. kernel-doc:: drivers/net/can/ctucanfd/ctucanfd.h
526 .. kernel-doc:: drivers/net/can/ctucanfd/ctucanfd_base.c
529 .. kernel-doc:: drivers/net/can/ctucanfd/ctucanfd_pci.c
532 .. kernel-doc:: drivers/net/can/ctucanfd/ctucanfd_platform.c
536 ---------------------------------------------------------
549 …* uses project in their CAN/CAN FD diagnostics framework for `Skoda Auto <https://www.skoda-auto.c…
568 * minor funding to initiate preparation of the project open-sourcing
579 …en-source and Open-hardware CAN FD Protocol Support <https://dspace.cvut.cz/bitstream/handle/10467…
587 …* initiate open-sourcing, project coordination, management at Department of Control Engineering, F…
598 * Reiner Zitzmann and Holger Zeltwanger (`CAN in Automation <https://www.can-cia.org/>`_)
604 …* implemented CTU CAN FD functional model for QEMU which has been integrated into QEMU mainline (`…
608 -----
624 As is done in the low-level driver functions
634 …`can: enable multi-queue for SocketCAN devices <https://lore.kernel.org/patchwork/patch/913526/>`_…