-
Notifications
You must be signed in to change notification settings - Fork 10
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
realtek-poe daemon reload interrupts power to PoE sinks #5
Comments
From #6 (comment):
I can watch the line. I'm worried that OpenWrt is setting it low. Let me attempt to invoke a reboot from the OEM FW. |
There's a difference between a system reboot and a daemon restart. This issue is focused on shutting down and restarting realtek poe. For example:
On a system reboot we really don't have that much control. If the bootloader decides to reset the PoE MCU, or disable the poe-enable line, there is little we can do to prevent that. Only in the event that the bootloader, and gpio-restart hardware do not touch the PSEs, do we have the power to not cut power. |
With #6 I will be removing the call to |
This seems to be fixed for the CI22 realtek-poe package release, as in no interruption for a currently PoE powered device while changing /etc/config/poe and doing a |
|
As noted in #5 [1], when `/etc/init.d/poe restart` is invoked, all PoE sinks connected to the powering device will temporarily lose power and reboot. Fix this by removing `poe_cmd_global_port_enable(0)` from `poe_initial_setup`. I'm unsure what the original intent of this line was anyways -- perhas to prevent PoE devices that the user did not want to be powered on from being powered on due to a stale MCU config? But at least on the ZyXEL GS1900-24HPv1, the OEM firmware doesn't do anything like this (or even use the `0x06` command in the first place). (The original patchwork thread is here[2]). Also, remove `poe_cmd_global_port_enable` entirely in order to avoid a compiler warning (which the default OpenWrt build flags promote to an error). [1]: #5 [2]: https://patchwork.ozlabs.org/project/openwrt/patch/[email protected]/ Signed-off-by: Martin Kennedy <[email protected]>
As noted in #5 [1], when `/etc/init.d/poe restart` is invoked, all PoE sinks connected to the powering device will temporarily lose power and reboot. Fix this by removing `poe_cmd_global_port_enable(0)` from `poe_initial_setup`. I'm unsure what the original intent of this line was anyways -- perhas to prevent PoE devices that the user did not want to be powered on from being powered on due to a stale MCU config? But at least on the ZyXEL GS1900-24HPv1, the OEM firmware doesn't do anything like this (or even use the `0x06` command in the first place). (The original patchwork thread is here[2]). [1]: #5 [2]: https://patchwork.ozlabs.org/project/openwrt/patch/[email protected]/ Signed-off-by: Martin Kennedy <[email protected]>
As noted in #5 [1], when `/etc/init.d/poe restart` is invoked, all PoE sinks connected to the powering device will temporarily lose power and reboot. Fix this by removing `poe_cmd_global_port_enable(0)` from `poe_initial_setup`. I'm unsure what the original intent of this line was anyways -- perhas to prevent PoE devices that the user did not want to be powered on from being powered on due to a stale MCU config? But at least on the ZyXEL GS1900-24HPv1, the OEM firmware doesn't do anything like this (or even use the `0x06` command in the first place). (The original patchwork thread is here[2]). Also, remove `poe_cmd_global_port_enable` entirely in order to avoid a compiler warning (which the default OpenWrt build flags promote to an error). [1]: #5 [2]: https://patchwork.ozlabs.org/project/openwrt/patch/[email protected]/ Signed-off-by: Martin Kennedy <[email protected]>
Issue fixed by b1e21d6. |
Besides the non-interupted PoE |
Summarry
It has been reported in this OpenWRT forum post that realtek-poe behavior is really annoying. PoE devices lose power whenever realtek-poe is started or restarted.
This is undesireable for two reasons:
Technical details
The following two lines in poe_initial_setup() cause the power to PoE ports to be cut off when realtek-poe is started:
realtek-poe/src/main.c
Lines 712 to 713 in db485c8
Course of action
On my engenius-ews2910p with 22.10 firmware, the MCU does not care about the state of the ports. It will happily accept a "set global power budget" command and apply it dynamically.
If so, then we could simply remove the calls in question, and everything should work,
The text was updated successfully, but these errors were encountered: