Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ice driver report I2C error messages of E822 copper LAN ports #199

Open
ChiaYuShih opened this issue Mar 15, 2024 · 5 comments
Open

ice driver report I2C error messages of E822 copper LAN ports #199

ChiaYuShih opened this issue Mar 15, 2024 · 5 comments
Labels
upstream Third party issue

Comments

@ChiaYuShih
Copy link

ChiaYuShih commented Mar 15, 2024

Environment:
OPNsense 24.1 (amd64)
Intel Atom(R) P5352 processor
Network Intel E822-L 1GbE & SFP

In OPNsense 24.1, the E822 LAN ports (SFP & copper) are detected successfully. However, only the copper ports are showing error messages (ice_read_sff_eeprom: Error reading I2C data: err ICE_ERR_AQ_ERROR aq_err AQ_RC_EINVAL).

Upon tracing the OPNsense 24.1 kernel source code, the error messages indicate that the attempt to read data from the SFF EEPROM has failed (ice_lib.c function ice_read_sff_eeprom).

Considering that there are no SFF EEPROMs for copper ports, should these error messages still be reported?

We have observed that these error messages appear after the driver initializes and continue to occur at intervals, indicating a potential trigger by a system service via ioctl.

Upon checking FreeBSD 14, we found no error messages for E822 copper ports, it seems a compatibility issue with OPNsense 24.1.

The ice driver version in OPNsense 24.1 is 1.37.11-k, and despite installing the official Intel-released ice version 1.39.13, the same error messages persist.

Please assist to check it. Thanks!

Best Regards,
Amy Shih

FreeBSD14_dmesg.txt.txt
OPNsense24.1_ice1.37.11-k_dmesg.txt.txt
OPNsense24.1_ice1.39.13_dmesg.txt.txt

@AdSchellevis AdSchellevis added the upstream Third party issue label Mar 15, 2024
@ChiaYuShih
Copy link
Author

ChiaYuShih commented Mar 15, 2024

Just find out that when execute the command “ifconfig -v ice4” to get more verbose status for E822 copper interface, both FreeBSD14 & OPNsense24.1 reported the error messages for the E822 copper ports, which means there is an service to query the interface data in OPNsense24.1 causing the error message, and in FreeBSD14 there is no such service unless we execute the command manually.

The root cause appears to be the inability of Intel's build-in ice driver to distinguish between the types (copper or SFP) for the E822 ports.

root@:~ # ifconfig -v ice4
ice4: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=4e10438<VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,LRO,VLAN_HWFILTER,RXCSUM_IPV6,TXCSUM_IPV6,HWSTATS,MEXTPG>
ether 00:00:00:00:01:04
media: Ethernet autoselect
status: no carrier
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
ice4: ice_read_sff_eeprom: Error reading I2C data: err ICE_ERR_AQ_ERROR aq_err AQ_RC_EINVAL

@fichtner
Copy link
Member

For varying reasons the OPNsense code also uses 'ifconfig -v'.

Cheers,
Franco

@ChiaYuShih
Copy link
Author

Hi Franco:

Execute the command “ifconfig -v ice4” to get more verbose status for E822 copper interface, both FreeBSD14 & OPNsense24.1 reported the error messages for the E822 copper ports.

@fichtner
Copy link
Member

fichtner commented Mar 15, 2024

So it's the ice driver which isn't even maintained by Intel in FreeBSD as far as I know and you can raise a bug report here https://bugs.freebsd.org if one doesn't exist :)

(edited due to me confusing ice with igc)

@ChiaYuShih
Copy link
Author

Hi Franco:

Thanks for the information. I had raised a bug report to FreeBSD Bugzilla.

Best Regards,
Amy Shih

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
upstream Third party issue
Development

No branches or pull requests

3 participants