This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
resources:tools-software:linux-drivers:jesd204:axi_jesd204_rx [03 Jun 2019 14:27] – [Example platform device initialization] Michael Hennerich | resources:tools-software:linux-drivers:jesd204:axi_jesd204_rx [08 Apr 2022 15:17] – fix link Antoniu Miclaus | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== ADI JESD204B Receive Peripheral Linux Driver ====== | + | ====== ADI JESD204B/C Receive Peripheral Linux Driver ====== |
===== Supported Devices ===== | ===== Supported Devices ===== | ||
- | * [[resources: | + | * [[resources: |
===== Description ===== | ===== Description ===== | ||
- | The AXI JESD204B RX peripheral driver is a simple driver that supports the [[resources: | + | The AXI JESD204B RX peripheral driver is a simple driver that supports the [[resources: |
+ | This driver also work in conjunction with the [[resources: | ||
====== Source Code ====== | ====== Source Code ====== | ||
Line 20: | Line 21: | ||
| driver | | driver | ||
- | ====== Example platform device initialization ====== | + | ====== Example platform device |
The AXI JESD204B driver is a platform driver and can currently only be instantiated via device tree. | The AXI JESD204B driver is a platform driver and can currently only be instantiated via device tree. | ||
+ | ===== Deprecated Non-jesd204-fsm mode ===== | ||
+ | |||
Required devicetree properties: | Required devicetree properties: | ||
* **compatible**: | * **compatible**: | ||
Line 49: | Line 52: | ||
adi, | adi, | ||
adi, | adi, | ||
+ | }; | ||
+ | </ | ||
+ | |||
+ | ===== jesd204-fsm mode ===== | ||
+ | |||
+ | When using the [[resources: | ||
+ | |||
+ | |||
+ | Required devicetree properties: | ||
+ | * **compatible**: | ||
+ | * **reg**: Base address and register area size. This parameter expects a register range. | ||
+ | * **interrupts**: | ||
+ | * **clock-names**: | ||
+ | * **clocks**: Clock phandles and specifiers (See clock bindings for details on clock-names and clocks). | ||
+ | * **jesd204-device**: | ||
+ | * **jesd204-inputs**: | ||
+ | |||
+ | Optional devicetree clock-names: | ||
+ | * **link_clk**: | ||
+ | * **conv2**: Optional SERDES (CPLL/QPLL) REFCLK from a difference source which rate and state must be in sync with the main conv clk. | ||
+ | |||
+ | |||
+ | Example: | ||
+ | < | ||
+ | axi_ad9081_rx_jesd: | ||
+ | compatible = " | ||
+ | reg = < | ||
+ | |||
+ | interrupts = <0 107 IRQ_TYPE_LEVEL_HIGH>; | ||
+ | |||
+ | clocks = <& | ||
+ | clock-names = " | ||
+ | |||
+ | jesd204-device; | ||
+ | # | ||
+ | jesd204-inputs = <& | ||
}; | }; | ||
</ | </ | ||
Line 71: | Line 110: | ||
[--snip--] | [--snip--] | ||
</ | </ | ||
+ | |||
+ | ====== Sysfs Interface ====== | ||
+ | |||
+ | This driver provides advanced diagnostics, | ||
+ | |||
+ | |||
+ | <WRAP box bggreen>< | ||
+ | < | ||
+ | root@analog:/ | ||
+ | total 0 | ||
+ | drwxr-xr-x | ||
+ | drwxr-xr-x 12 root root 0 Feb 6 13:41 .. | ||
+ | lrwxrwxrwx | ||
+ | -rw-r--r-- | ||
+ | -r--r--r-- | ||
+ | drwxr-xr-x | ||
+ | -r-------- | ||
+ | -r-------- | ||
+ | -r-------- | ||
+ | -r-------- | ||
+ | -r-------- | ||
+ | -r-------- | ||
+ | -r-------- | ||
+ | -r-------- | ||
+ | -r--r--r-- | ||
+ | lrwxrwxrwx | ||
+ | drwxr-xr-x | ||
+ | -r--r--r-- | ||
+ | lrwxrwxrwx | ||
+ | -rw-r--r-- | ||
+ | </ | ||
+ | |||
+ | **Reading the device/link status:** | ||
+ | |||
+ | <WRAP box bggreen>< | ||
+ | < | ||
+ | root@analog:/ | ||
+ | Link is enabled | ||
+ | Measured Link Clock: 375.034 MHz | ||
+ | Reported Link Clock: 375.000 MHz | ||
+ | Measured Device Clock: 375.034 MHz | ||
+ | Reported Device Clock: 375.000 MHz | ||
+ | Desired Device Clock: 375.000 MHz | ||
+ | Lane rate: 15000.000 MHz | ||
+ | Lane rate / 40: 375.000 MHz | ||
+ | LMFC rate: 46.875 MHz | ||
+ | Link status: DATA | ||
+ | SYSREF captured: Yes | ||
+ | SYSREF alignment error: No | ||
+ | </ | ||
+ | |||
+ | **Reading the Encoder used:** | ||
+ | |||
+ | <WRAP box bggreen>< | ||
+ | < | ||
+ | root@analog:/ | ||
+ | 8b10b | ||
+ | </ | ||
+ | |||
+ | **Reading the Lane Status:** | ||
+ | |||
+ | <WRAP box bggreen>< | ||
+ | < | ||
+ | root@analog:/ | ||
+ | Errors: 0 | ||
+ | CGS state: DATA | ||
+ | Initial Frame Synchronization: | ||
+ | Lane Latency: 3 Multi-frames and 13 Octets | ||
+ | Initial Lane Alignment Sequence: Yes | ||
+ | DID: 0, BID: 0, LID: 2, L: 8, SCR: 1, F: 1 | ||
+ | K: 32, M: 4, N: 16, CS: 0, N': 16, S: 1, HD: 0 | ||
+ | FCHK: 0x9, CF: 0 | ||
+ | ADJCNT: 0, PHADJ: 0, ADJDIR: 0, JESDV: 1, SUBCLASS: 1 | ||
+ | FC: 15000000 | ||
+ | </ | ||
===== More Information ===== | ===== More Information ===== | ||
* [[resources: | * [[resources: |