User Details
- User Since
- Nov 1 2020, 1:24 PM (298 w, 2 d)
Today
Thu, Jul 16
Several years ago I added a draft version of the "sff,sfp" driver to https://cgit.freebsd.org/src/tree/sys/dev/sff. I wonder whether all of those sfp_i2c operations can be moved there and be hidden behind an API. dpaa2_ni would only need to obtain "sff,sfp" device (via xref, I think) and call it.
My Honeycomb doesn't have SFP cages exposes to the operating system, i.e. I cannot try it there directly. Besides, I don't like an idea to obtain info about the I2C config for SFPs using tunables on the ACPI systems. It is already described in the ACPI tables (partially, though):
dsl@castle:~ $ devinfo -v | grep I2C0
vf_i2c_acpi0 <Vybrid Family Inter-Integrated Circuit (I2C)> pnpinfo _HID=NXP0001 _UID=0 _CID=none at handle=\_SB_.I2C0
unknown pnpinfo _HID=NXP0002 _UID=0 _CID=none at addr=0x77 handle=\_SB_.I2C0.MUX0
unknown pnpinfo _HID=PRP0001 _UID=0 _CID=none at handle=\_SB_.I2C0.MUX0.CH01.FAN1
unknown pnpinfo _HID=PRP0001 _UID=1 _CID=none at handle=\_SB_.I2C0.MUX0.CH03.THE1Only a fan controller (TI's amc6821) and a temperature sensor (NXP's sa56004) sitting on channels 1 and 3 respectively are described. However, according to the Honeycomb schematic, mux channels 4,5,6,7 are for the SFP cages. You can check whether a board you're booting up is LX2160A and set correct default values.
I can read a DAC on my Ten64 now. Looks good!
dpni8: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=60002b<RXCSUM,TXCSUM,VLAN_MTU,JUMBO_MTU,RXCSUM_IPV6,TXCSUM_IPV6>
ether 00:0a:fa:24:2b:28
ifconfig: dpni8: no media types?
nd6 options=829<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL,STABLEADDR>
drivername: dpni8
plugged: SFP/SFP+/SFP28 Unknown (Copper pigtail)
vendor: FS PN: SFPP-PC03 SN: F2210XXXXX-2 DATE: 2022-08-12
root@cannon-tower:~ # ifconfig -v dpni9
dpni9: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=60002b<RXCSUM,TXCSUM,VLAN_MTU,JUMBO_MTU,RXCSUM_IPV6,TXCSUM_IPV6>
ether 00:0a:fa:24:2b:27
ifconfig: dpni9: no media types?
nd6 options=829<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL,STABLEADDR>
drivername: dpni9
plugged: SFP/SFP+/SFP28 Unknown (Copper pigtail)
vendor: FS PN: SFPP-PC03 SN: F2210XXXXX-1 DATE: 2022-08-12Okay, thanks for opening a review. Please, provide a full context for the patch, i.e. -U999999.
Apr 27 2026
Committed in https://cgit.freebsd.org/ports/commit/?id=9cd256080a694234243e2c35afefdeeaa22ffd07, no idea why no update
Apr 22 2026
Apr 21 2026
@bz I'd rebase this review and commit if you don't have time now.
Apr 19 2026
Apr 18 2026
As soon as we were interested in the FD[ERR} field, I added another counter to track other ingress frames with errors. It can be detailed in future.
Apr 17 2026
Uhh, I've double-checked and dpaa2_ni_setup_if_caps is actually called on my side and reports correct changes in the csum validation/generation, but it doesn't affect the ingress frames at all:
Apr 15 2026
Fixed
I've fixed the comments and added another review (D56383) which is currently in progress.
Apr 13 2026
Apr 12 2026
Usually, there's drm-drivers.adoc report which summarizes activities regarding the drm-kmod drivers. It might be a good idea to include mine if the drm-drivers.adoc will appear.
Apr 8 2026
Apr 4 2026
Mar 29 2026
@tuexen Thanks for a quick response!
Mar 16 2026
Feb 21 2026
Feb 18 2026
Jan 29 2026
Okay, I see. if_inc_counter() is implemented with counter_u64_add which is atomic on arm64, i.e. no synchronization is required. I don't think there's noticeable overhead either, i.e. lgtm.
Can we hide those counters behind a macro (e.g. DPAA2_DEBUG)?
Jan 26 2026
e.g. sysctl dev.dpaa2_ni.0 is not enough?
Jan 22 2026
Jan 20 2026
Dec 29 2025
Nov 19 2025
Nov 7 2025
@bz you meant IFCAP_HWCSUM_IPV6, didn't you? Hmm, I haven't tested it yet. Probably a good idea before committing changes.
Nov 6 2025
This change seems trivial to me. I'd simply commit it if there are no objections.
I'd like to know objections, if any.
Nov 1 2025
Oct 29 2025
Sep 3 2025
Updated to 0.1.4
Aug 4 2025
Ping
Aug 1 2025
Successfully compiled on:
Jul 31 2025
Jul 30 2025
Jul 6 2025
World for arm64 can be built with 905541dd6ba4 without my changes. I'll abandon this review then.
Jun 25 2025
Feb 7 2025
Could you add a short test plan to follow?