-
Notifications
You must be signed in to change notification settings - Fork 217
Network (Re)Boot doesn't work anymore with Linux 5.16+ #417
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
Comments
I was expecting GitHub to fill it up automatically, but I guess it doesn't work across repos. Here it is: raspberrypi/linux@c3a4c69 |
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
Reverted on rpi-5.16.y and rpi-5.17.y. |
Thanks. Unusually Google didn't find it I think this is the culprit "PHY_BRCM_AUTO_PWRDWN_ENABLE " The bootloader uses MDIO to do link negotiation but it doesn't turn the PHY on, hopefully, you can turn the PHY on again via MDIO :) |
Yes, with IDDQ-SR you can still access the PHY over MDIO. The proper fix, rather than revert the change would be to make sure that the PHY is fully functional, but that might be difficult with code masked in the ROM. Another way to fix this would be to introduce a reboot hook that calls back into the firmware and in turn have the VPU firmware ensure that the PHY is not left in IDDQ-SR. The power savings with IDDQ-SR are very real and in the order of several hundreds of milli Watts, so I would be inclined to keep them. |
We can drop the reversions once there is some mitigation in the firmware. |
Both the firmware and bootloader will need to be updated for this and this can take a long time to filter through. Enabling this via an overlay might be an option might be useful for anyone who wants this functionality earlier. |
We'll never ship 5.16 builds because it isn't an LTS, but I'm open to back-porting the patch to 5.15 once the dust has settled. |
Sounds good. There probably won't be an immediate update for bootloader / firmware though. Possibly, bootloader first so that it gets included in the next manufacturing release that supports network-install |
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
@mripard I have an experimental bootloader fix attached. Please could you try this with the kernel revert removed. However, I'm finding that on 5.18 with the revert-reverted it looks like the auto-power was already disabled by the time bootloader was running.
The bootloader has always cleared the bit11 in MII register zero so I'm assuming that the auto-power down bits in the shadow registers had survived OR there was some thing wrong in the sequencing of PHY reset / clearing power-down. |
Actually, I think this only fails on Pi4B 1.1 or older because I can reproduce the problem on that board. |
Was the system you tested before and the Pi4B 1.1 or older use different Ethernet PHYs? |
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
This reverts commit c3a4c69, which broke rebooting when network booting. See: raspberrypi/rpi-eeprom#417 Signed-off-by: Phil Elwell <[email protected]>
Describe the bug
This issue is a regression following the introduction of commit c3a4c69360ab43560f212eed326c9d8bde35b14c in Linux 5.16.
With that commit and if we reboot, the bootloader seems to wait for the ethernet link forever, thus breaking any network boot setup. With a power cycle (or a revert of the commit above), everything works fine.
Steps to reproduce the behaviour
sudo reboot
)Device (s)
Raspberry Pi 4 Mod. B
Bootloader configuration.
System
Bootloader logs
At that point it will just loop forever
USB boot
No response
NVMe boot
No response
Network (TFTP boot)
No response
The text was updated successfully, but these errors were encountered: