Alex Forencich
33b798540e
Change hex format in makefiles
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-07-09 14:20:48 -07:00
Alex Forencich
729c3a0458
Update for PCIe shim changes, enable TLP straddling on US/US+ devices, and use 256 tags on US+ devices
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-07-08 22:07:18 -07:00
Alex Forencich
a5d7833bd9
Update testbenches for new version of cocotbext-pcie
2022-06-05 00:24:42 -07:00
Alex Forencich
21b0f014a5
Switch to MSI-X
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-06-02 23:58:29 -07:00
Alex Forencich
dd2853bf40
Update testbenches for latest version of cocotbext-pcie
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-05-30 13:10:39 -07:00
Alex Forencich
5da044826d
Add board-level configuration parameter for TDMA BER module
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-05-18 11:25:58 -07:00
Alex Forencich
ed2d34153d
Use PHY rx_status signal for link status detection
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-05-17 00:46:05 -07:00
Alex Forencich
835f0d38f0
Update PTP subsystem to use separate clock for improved stability
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-05-06 17:46:16 -07:00
Alex Forencich
c2fea3a616
Add port register blocks with support for PHY link status reporting
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-05-04 09:03:37 -07:00
Alex Forencich
cfdd6f5455
Decouple transmit completion handling from PTP timestamping
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-05-01 17:41:47 -07:00
Alex Forencich
53f3547ef5
Rework hierarchy to move port-specific logic out of mqnic_core and into mqnic_interface and new port-level modules
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-29 14:32:57 -07:00
Alex Forencich
d5c2566dff
Add statistics collection for AXI DMA IF
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-23 13:12:50 -07:00
Alex Forencich
2bd8350276
Add RX queue mapping module
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-23 00:12:22 -07:00
Alex Forencich
7f8bbe30de
Add application ID
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-21 13:15:45 -07:00
Alex Forencich
ba70498518
fpga: Add DMA immediate connections and parameters
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-20 15:00:58 -07:00
Alex Forencich
f687aba432
fpga/mqnic: Update designs to use port mapping modules
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-13 01:37:10 -07:00
Alex Forencich
57905a5ef9
fpga/mqnic/ZCU106/fpga_zynqmp: Rewrite zynq PS TCL script, rework PS clock settings, switch to 300 MHz PL clock
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-11 12:25:51 -07:00
Alex Forencich
72d8583235
fpga/mqnic/ZCU106/fpga_zynqmp: Remove unused I2C interface
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-11 10:54:58 -07:00
Alex Forencich
c5d5fe8a64
fpga/mqnic: Remove unused wires
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-09 23:02:44 -07:00
Alex Forencich
1bb7053a68
ZCU106/fpga_zynqmp: Add integration test
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-07 21:42:01 -07:00
Alex Forencich
5f7c051b5b
ZCU106/fpga_zynqmp: Sync module parameters
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-07 21:41:06 -07:00
Alex Forencich
2eb4e5c4bd
ZCU106/fpga_zynqmp/ps/petalinux/: Enable PTP in kernel and add linuxptp package
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-07 19:23:36 -07:00
Joachim Foerster
eb17563097
ZCU106/fpga_zynqmp/ps/petalinux/: Add shortcut Makefile target "build-boot" to build PetaLinux including boot files in one step
...
Signed-off-by: Joachim Foerster <joachim.foerster@missinglinkelectronics.com>
2022-04-07 18:41:05 +02:00
Joachim Foerster
2252308dc2
ZCU106/fpga_zynqmp/: README: Provide more information on how to build and test
...
Signed-off-by: Joachim Foerster <joachim.foerster@missinglinkelectronics.com>
2022-04-07 18:41:05 +02:00
Joachim Foerster
1191908e68
ZCU106/fpga_zynqmp/ps/petalinux/: rootfs: Enable and include layer meta-corundum and its recipes
...
Signed-off-by: Joachim Foerster <joachim.foerster@missinglinkelectronics.com>
2022-04-07 18:41:05 +02:00
Joachim Foerster
442a24c5a7
ZCU106/fpga_zynqmp/ps/petalinux/: rootfs: Include various kernel module and network device tools
...
- kmod (for modinfo)
- ethtool
- net-tools (for arp)
- iputils-ping (for ping; Busybox' ping does not support flood ping option)
- iproute2 (for ip; Busybox' ip is very limited)
- tcpdump
- iperf2
Signed-off-by: Joachim Foerster <joachim.foerster@missinglinkelectronics.com>
Signed-off-by: Andreas Braun <andreas.braun@missinglinkelectronics.com>
2022-04-07 18:41:05 +02:00
Joachim Foerster
5700aba9a0
ZCU106/fpga_zynqmp/ps/petalinux/: dts: Add custom device tree node for mqnic device
...
Currently consists of 4 parts:
- Removing stub nodes generated by Xilinx device tree generator.
- Adding a custom, manually edited node (needs manual adjustment in case PS
settings are changed!)
NOTE: In the future this node might be reduced or removed all together after
having added a plugin for Xilinx' device tree generator
(https://github.com/Xilinx/device-tree-xlnx.git ), which properly automatically
generates such a node.
- Adding eeprom nodes for the SFP module I2C buses.
- Disabling the node for the USER MGT SI570 (U56) chip to make Linux NOT touch
this chip on startup. See lengthy comment.
Signed-off-by: Joachim Foerster <joachim.foerster@missinglinkelectronics.com>
Signed-off-by: Andreas Braun <andreas.braun@missinglinkelectronics.com>
2022-04-07 18:41:05 +02:00
Joachim Foerster
2dbea0f913
ZCU106/fpga_zynqmp/ps/petalinux/: Add basic PetaLinux v2021.1 project
...
- modify .gitignore compared to generated version by petalinux-create;
to avoid committing unnecessary files (binaries, toolchain leftovers, ...)
- set machine name to "zcu106-reva"
- disable "copy to tftpboot directory"
- enable FSBL detailed debug output
Signed-off-by: Joachim Foerster <joachim.foerster@missinglinkelectronics.com>
2022-04-07 17:14:57 +02:00
Joachim Foerster
80d5bda23f
ZCU106/fpga_zynqmp: Fix maximum burst length for AXI Master
...
Signed-off-by: Joachim Foerster <joachim.foerster@missinglinkelectronics.com>
2022-03-31 17:24:16 +02:00
Joachim Foerster
62879ff3ea
ZCU106/fpga_zynqmp: Support parameter EVENT_QUEUE_INDEX_WIDTH, reduce Events queues to number of CPU cores
...
- Keep parameter defaults in Verilog file at global of 32, though
- Select 4 Event queues via config.tcl, only
Signed-off-by: Andreas Braun <andreas.braun@missinglinkelectronics.com>
Signed-off-by: Joachim Foerster <joachim.foerster@missinglinkelectronics.com>
2022-03-31 17:24:16 +02:00
Andreas Braun
dc77c9e92a
ZCU106/fpga_zynqmp: Reduce number of IRQs to number of CPU cores
...
Signed-off-by: Joachim Foerster <joachim.foerster@missinglinkelectronics.com>
Signed-off-by: Andreas Braun <andreas.braun@missinglinkelectronics.com>
2022-03-31 17:22:27 +02:00
Andreas Braun
dce11522fa
ZCU106/fpga_zynqmp: Reduce number of RX/TX queues to 32
...
Signed-off-by: Joachim Foerster <joachim.foerster@missinglinkelectronics.com>
2022-03-31 17:22:27 +02:00
Andreas Braun
35517037e6
ZCU106/: Add design based on ZynqMP PS as host system, Vivado v2021.1
...
Signed-off-by: Andreas Braun <andreas.braun@missinglinkelectronics.com>
Signed-off-by: Joachim Förster <joachim.foerster@missinglinkelectronics.com>
2022-03-31 17:22:27 +02:00
Alex Forencich
f082196b4a
Expose EVENT_QUEUE_INDEX_WIDTH parameter at top-level
2022-03-29 23:15:06 -07:00
Alex Forencich
cbd9d0dfc6
Expose port and scheduler block counts in IF control block; update driver model, driver, and userspace tools to handle scheduler blocks separately from ports
2022-03-28 17:23:27 -07:00
Alex Forencich
09128df360
Add SCHED_PER_IF parameter to split scheduler count from port count
2022-03-28 15:20:33 -07:00
Alex Forencich
dfae34ed25
Pass through PTP pipelining settings
2022-03-28 00:50:29 -07:00
Alex Forencich
e95c132045
Route PCIe user reset through BUFG
2022-03-25 01:26:29 -07:00
Alex Forencich
8168469ec8
Update config.tcl
2022-03-14 14:45:38 -07:00
Alex Forencich
d9e79c9923
Rename cores to match transceiver type
2022-03-03 22:41:34 -08:00
Alex Forencich
29f97dc663
Update ZCU106 to use new wrapper
2022-03-03 22:26:06 -08:00
Alex Forencich
2909d205de
Remove unused files
2022-02-16 17:40:28 -08:00
Alex Forencich
3997e0d95b
Parametriztion updates, add RAM_ADDR_WIDTH as a top-level parameter
2022-02-15 18:01:43 -08:00
Alex Forencich
627ac359d5
Add layer 2 ingress/egress modules
2022-02-13 23:09:41 -08:00
Alex Forencich
b7bc240aa6
Add JTAG and GPIO passthroughs to application section
2022-01-27 23:06:05 -08:00
Alex Forencich
aab30c8cd0
Add transceiver quad wrappers
2022-01-16 18:28:22 -08:00
Alex Forencich
335a5e890b
Initial implementation of shared interface datapath
2021-12-31 14:33:31 -08:00
Alex Forencich
ce21774f06
Register space reorganization
2021-12-29 22:31:46 -08:00
Alex Forencich
8548e8570f
Update vivado.mk
2021-12-20 22:03:06 -08:00
Alex Forencich
7a43618e3c
Use start_soon instead of fork
2021-12-10 20:43:21 -08:00