-
Notifications
You must be signed in to change notification settings - Fork 412
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
PinePhone eg25 firmware upgrade: "failed to get device before update: failed to wait for detach replug: device 976c4a39e87f61e6940ea6a8d39c583cfa99615f did not come back" #4338
Comments
Here's the firmware report: fwupd-firmware-report.txt |
I think for @DylanVanAssche to look at this it probably need a verbose daemon log to see more of what's really going on. Can you share that? |
I have re-run this with the
|
Mobile NixOS (which I use) uses Megi's I see this was powering off the modem around the time that fwupdmgr was running:
I will disable this and see if the issue recurs. |
Yes, disabling Sorry for the false positive! I've raised NixOS/mobile-nixos#463 to track the Mobile NixOS issue. |
I'm not super familiar with the ecosystem, but @DylanVanAssche is this something that maybe the plugin in fwupd should detect and inhibit while updating? If it doesn't support inhibition then the plugin should probably either stop it or avoid updating (issue an error) if it's found running. |
@superm1 For the PinePhone & PinePhone Pro there are 2 'drivers' for the modem:
Both drivers conflicts of course. |
Thanks for explaining. So could you detect the out of tree one and make the plugin inhibit updates? |
@superm1 The out-of-tree driver exposes some sysfs entries, would that work? |
What about testing a sysfs entry presence with |
Yup, I think that's a nice easy way to check for it. You can either check for them during probe and inhibit at that time or do it in |
FWIW, in NixOS/mobile-nixos#463 I expect Mobile NixOS will remove its use of the out-of-tree |
@superm1 Is there a way to print a message then why the update fails? |
@DylanVanAssche yeah so if you do this in an update prepare callback it would be something like this:
The advantage you have here is that the module can be unloaded at runtime and this conflict fixed. The disadvantage is you don't know that it is a problem "until" you try to run an update. If you did it in the inhibit it would be in plugin probe routine. It means that
I personally prefer the first method, particularly since firmware updating your modem is likely to be infrequent but up to you which way you want to go. |
You would need to install a different kernel anyway which means rebooting, so |
Sorry I forgot we renamed the symbol. Look for |
Describe the bug
I'm working on bringing support of https://dylanvanassche.be/blog/2022/pinephone-modem-upgrade/ to NixOS. I've upgraded fwupd to 1.7.6 (not yet merged into NixOS, see NixOS/nixpkgs#161935), and followed the instructions on https://wiki.postmarketos.org/wiki/Fwupd (logs below).
fwupdmgr switch-branch 976c4a39e87f61e6940ea6a8d39c583cfa99615f
failed atWriting?
withfailed to get device before update: failed to wait for detach replug: device 976c4a39e87f61e6940ea6a8d39c583cfa99615f did not come back
.Steps to Reproduce
On a PinePhone (NixOS, ModemManager 1.18.4), execute
fwupdmgr switch-branch 976c4a39e87f61e6940ea6a8d39c583cfa99615f
.Actual behaviour
Expected behavior
Firmware is switched to https://github.com/Biktorgj/pinephone_modem_sdk .
fwupd version information
Please provide the version of the daemon and client.
Please note how you installed it (
apt
,dnf
,pacman
, source, etc): NixOS.fwupd device information
Please provide the output of the fwupd devices recognized in your system.
Additional questions
The text was updated successfully, but these errors were encountered: