1
0
mirror of https://github.com/corundum/corundum.git synced 2025-01-16 08:12:53 +08:00

2630 Commits

Author SHA1 Message Date
Alex Forencich
a1cd110074 Peel off common software components into a static library
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-19 01:45:01 -07:00
Alex Forencich
030281b7fc modules/mqnic: Simplify kernel module makefile
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-18 22:55:07 -07:00
Alex Forencich
07cb1e8da7 fpga/mqnic/XUPP3R: Add 10G mqnic design for XUP-P3R
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-18 22:54:31 -07:00
Alex Forencich
69201fbf82 modules/mqnic: Clean up error handling in common probe; do not fail probe if interface creation fails so userspace tools will still be usable via driver
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-16 23:30:39 -07:00
Alex Forencich
5133bf5d27 modules/mqnic: Clear board_ops after deinit
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-16 23:25:07 -07:00
Alex Forencich
2cf8a910b2 modules/mqnic: Clean-up and error handling improvements in PHC registration
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-16 23:23:20 -07:00
Alex Forencich
edb545ca50 utils/mqnic-fw: Fix width detection for BPI flash
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-16 22:00:16 -07:00
Alex Forencich
f44641e91e utils: Add sanity check when reading SPI flash ID
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-16 15:23:17 -07:00
Alex Forencich
a6affe4190 modules/mqnic: Add driver support for XUP-P3R board
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-16 15:21:11 -07:00
Alex Forencich
58bcea2114 modules/mqnic: Add driver support for DNPCIe_40G_KU_LL_2QSFP board
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-16 15:20:44 -07:00
Alex Forencich
07f3924b75 modules/mqnic: Add missing request_module
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-16 15:20:04 -07:00
Alex Forencich
e167423ed4 modules/mqnic: Include proper indices in messages
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-16 15:19:20 -07:00
Alex Forencich
5bc569c469 Update device lists
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-16 12:34:29 -07:00
Alex Forencich
1ffbd2d8d3 mqnic/fpga/XUPP3R: Add 10G, 25G, and 100G mqnic designs for BittWare XUP-P3R board
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-16 12:33:50 -07:00
Alex Forencich
eb530475fb More expressive flash format register
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-15 18:38:01 -07:00
Alex Forencich
7be7b1cc9f utils/mqnic-fw: Confirm write and reset operations
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-15 18:17:04 -07:00
Alex Forencich
88679ef7eb utils/mqnic-fw: Add segment erase action
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-15 18:04:51 -07:00
Alex Forencich
09257457cb utils/mqnic-fw: Determine data width directly from control registers
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-15 16:15:11 -07:00
Alex Forencich
d9867948ec utils/mqnic-fw: Remove unused address width parameter
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-15 15:54:03 -07:00
Alex Forencich
756afbc13c fpga/mqnic/VCU1525: Generate fallback bitstreams
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-15 13:25:46 -07:00
Alex Forencich
cf8aa506b2 utils: Always use 4-byte addresses for large SPI flash devices
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-15 13:13:59 -07:00
Alex Forencich
47f0044099 fpga/mqnic: Fix incorrect SLR in placement constraints
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-14 11:51:10 -07:00
Alex Forencich
f58d922e8f fpga/mqnic: Use correct clock frequencies in 25G testbenches
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-13 20:20:01 -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
c587bc54a1 fpga/common: Add port mapping modules
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-12 21:16:17 -07:00
Alex Forencich
3d5dc74e01 fpga/common: Fix MTU register write addresses
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-12 14:10:47 -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
e9b62594c0 modules/mqnic: Fix typo in reading nominal clock period registers
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-11 10:55:07 -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
1d9c63ec66 docs: Update device lists
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-09 23:04:16 -07:00
Alex Forencich
4b4922c858 fpga/mqnic: Add 10G mqnic design for DNPCIe_40G_KU_LL_2QSFP
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-09 23:03:31 -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
1797fdecec docs: Fix table
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-07 22:42:47 -07:00
Alex Forencich
59e4c73252 docs: Add SoC section to device list
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-07 22:41:43 -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
4250bde2a3 docs/source/: Add section about PetaLinux tools
Signed-off-by: Joachim Foerster <joachim.foerster@missinglinkelectronics.com>
2022-04-07 18:41:05 +02: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
e98b605a3f added psmake as a subproject 2022-04-07 17:14:32 +02:00
Joachim Foerster
ce464d780e Squashed 'fpga/lib/psmake/' content from commit 859b30a0
git-subtree-dir: fpga/lib/psmake
git-subtree-split: 859b30a0ce0aa086d474b7b370e7369b807f03c9
2022-04-07 17:14:32 +02:00
Joachim Foerster
b08a4404d4 fpga/lib: Add subtree manager for psmake
Signed-off-by: Joachim Foerster <joachim.foerster@missinglinkelectronics.com>
2022-04-07 17:14:25 +02:00
Joachim Foerster
5730988c79 meta-corundum/: Add PetaLinux/Yocto meta layer, include recipe for mqnic kernel module and support tools
For now, this layer is marked compatible with the Yocto version which PetaLinux
v2021.1 is based on (codename "gatesgarth"), only. Other version might be added
as needed (space separated). Incompatibilities with older versions are not known
at this point in time.

Signed-off-by: Joachim Foerster <joachim.foerster@missinglinkelectronics.com>
2022-04-07 17:14:25 +02:00
Joachim Foerster
26c70bbb8a modules/mqnic/: Add platform driver support
Signed-off-by: Joachim Foerster <joachim.foerster@missinglinkelectronics.com>
2022-04-07 17:14:25 +02:00
Alex Forencich
984aefe508 Fix tag indexing 2022-04-06 13:24:05 -07:00