Alex Forencich
b3c93b5ac7
Fix MAC address EEPROM offsets for Xilinx dev boards
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-05-18 19:36:12 -07:00
Alex Forencich
d575230c27
Fix race condition while taking down port
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-05-13 15:56:26 -07:00
Alex Forencich
9653caf09b
Add 25G mqnic design for Cisco Nexus K3P-Q
2022-05-09 14:02:13 -07:00
Alex Forencich
ba9ef590b7
Use Cisco Nexus part numbers for Cisco Nexus boards
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-05-09 13:43:47 -07:00
Alex Forencich
7ee0a661bd
modules/mqnic: Add kernel version check for ndetdev ioctl change
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-05-05 11:19:53 -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
56641b3471
modules/mqnic: Export symbols
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-25 00:47:37 -07:00
Alex Forencich
e4de3c2fb5
modules/mqnic: Consistent naming of driver functions and structs
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-24 23:01:15 -07:00
Alex Forencich
cc9d445005
Move driver-specific code out of mqnic_hw.h
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-24 22:54:04 -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
1b3caa1f0f
Fix reg block enumeration to properly handle NULL register blocks
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-22 23:27:15 -07:00
Alex Forencich
f4d2662dff
Fix find_reg_block handling of NULL register blocks
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-22 23:25:15 -07:00
Alex Forencich
5ae58e751f
modules/mqnic: Use eth_hw_addr_set when available
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-22 18:46:40 -07:00
Alex Forencich
65a986cc89
modules/mqnic: Add support for extension kernel modules using the auxiliary bus
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-21 13:18:00 -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
dbe0dc70ee
modules/mqnic: Remove obsolete PHC entries
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-20 21:29:56 -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
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
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
eb530475fb
More expressive flash format register
...
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2022-04-15 18:38:01 -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
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
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
6daf1171b5
Improve ioctl implementation to support arbitrary number of regions
2022-03-26 00:24:02 -07:00
Alex Forencich
2babcdd16e
Fix indentation
2022-03-26 00:18:07 -07:00
Alex Forencich
8fbe46aa31
Update ethtool API implementation
2022-03-22 23:48:13 -07:00
Alex Forencich
c118565d21
Fix EEPROM-related error handling in ethtool interface code
2022-03-20 23:07:45 -07:00
Alex Forencich
623b758598
Print PCIe bridge information during driver load
2022-03-15 17:55:29 -07:00
Alex Forencich
2ca96463fe
Add driver debug print for number of configured IRQs
2022-03-04 23:55:51 -08:00
Alex Forencich
6e716af299
Set PTP clock name
2022-02-02 18:41:19 -08:00
Alex Forencich
d506c9305a
Fix pointer updating for correct teardown behavior
2022-01-16 00:04:53 -08:00
Alex Forencich
137a6778da
Combine interface control blocks
2022-01-15 21:53:13 -08:00
Alex Forencich
0f82e0c5f3
Fix ethtool firmware version number reporting
2022-01-10 11:18:58 -08:00
Alex Forencich
136b0ee6ae
Increase init delay for Alveo BMC
2022-01-05 22:42:36 -08:00
Alex Forencich
a4a26e7bc4
Fix register accesses
2022-01-05 19:38:56 -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
2091ef8c42
Fix dev_port assignment
2021-12-29 14:29:55 -08:00
Alex Forencich
8b219d3cad
Fix I2C client forwarding to netdevs
2021-12-25 01:40:08 -08:00
Alex Forencich
fb258467e7
Unwrap short lines
2021-12-24 00:02:20 -08:00
Alex Forencich
a7cb23da62
Separate common probe/remove implementation from PCI-specific probe/remove
2021-12-24 00:02:08 -08:00
Alex Forencich
0b7cbe5b05
Peel off ID management code
2021-12-23 23:48:57 -08:00
Joachim Foerster
508b4cf39b
modules/mqnic/: Make number of allocated queue entries configurable via module parameters
...
This may be complemented or replaced by making use of the appropriate ethtool
API in the future, of course.
Signed-off-by: Joachim Foerster <joachim.foerster@missinglinkelectronics.com>
2021-12-15 23:29:02 -08:00
Joachim Foerster
f5f40297e3
modules/mqnic/: Fix, need to initialize per instance mutex before netdev registration
...
struct mqnic::state_lock is used in netdev callbacks, which go "live"
after a netdev has been registered (via mqnic_init_netdev()).
Signed-off-by: Joachim Foerster <joachim.foerster@missinglinkelectronics.com>
2021-12-15 23:29:02 -08:00
Joachim Foerster
60c2b6745d
modules/mqnic/: Fix and enhance Makefile
...
- Apply "Shared Makefile" style as found in [1]
- Especially but not only for cross compilation:
- Accept commonly used variable KDIR to specify kernel build directory
- Additionally accept KERNEL_SRC (instead of KDIR) as used by PetaLinux/Yocto
- Route all usual external module targets through to Kbuild
- Provide "install" target as shortcut for module installation
- Use $(MAKE) as recommended in [2]
[1] https://www.kernel.org/doc/html/latest/kbuild/modules.html , section 3.1
[2] https://www.gnu.org/software/make/manual/make.html#MAKE-Variable , section 5.7.1.
Signed-off-by: Joachim Foerster <joachim.foerster@missinglinkelectronics.com>
2021-12-15 23:29:02 -08:00