software:poe_management

This is an old revision of the document!


PoE management

On RTL8380 and RTL8390 switches based on Realtek's development boards, power over ethernet is usually not managed directly by the SoC itself, but by an intermediate microcontroller. This microcontroller in turn talks to a PoE power sourcing equipment (PSE) controller chip. The Realtek platform supports both a Broadcom based, and a Microsemi based implementation. A daemon running on the OS will poll the controller to manage the PoE ports and inform about their status.

The PSE controllers will always be in the PoE power domain, which needs to be isolated from the SoC to protect it from external PoE faults. This means that the PoE controller will talk to either the SoC or PSE controller through a pair of optocouplers or isolators. Be aware of this when probing the control signals on the PoE hardware.

Vendor Device SoC Management IC Management interface PSE controller PoE FW version PoE standard support
Cisco SF220-24P RTL8332M Microsemi PD69100 PD69108 x3 n/a 802.3at
Cisco SG220-26P RTL8382M Microsemi PD69100 PD69108 x3 n/a 802.3at
D-Link DGS-1210-10P F1 RTL8380M Nuvoton M0516LDE UART BMC59121 1.8.2.1 802.3at
D-Link DGS-1210-28P RTL8382M Nuvoton M0516LDE UART BCM59121 x3 ? 802.3at
D-Link DGS-1210-28MP RTL8382M Nuvoton M0516LDE UART BCM59121 x3 ? 802.3at
Edge-CorE ECS2100-10P RTL8380M Microchip PD69200 Microchip PD69208M n/a 802.3at
Engenius EGS7228P RTL8382M STMicro STM32F100C8 BCM59111 x6 802.3at
Engenius EWS2910P RTL8380M STMicro STM32F100C8 BCM59111 x2 ? 802.3at
Engenius EWS52912FP RTL8380M Nuvoton M0516LDE BCM59121 ? 802.3at
HPE 1920-8G-PoE+ (JG922A) RTL8380M Nuvoton M0516LDE BCM59121 ? 802.3at
Netgear GS110TPv3 RTL8380M Nuvoton M0516LDN BCM59121 ? 802.3at
Netgear GS110TPP v1 RTL8380M Nuvoton M0516 UART BCM59121 1.8.0.5 802.3at
Netgear GS310TP RTL8380M Nuvoton M0516LDN UART BCM59121 802.3at
Netgear GS710TUP Nuvoton M0518 BMC59121 ×2 4.1.0.1 802.3bt
Netgear GS728TP v2 RTL8391M Nuvoton M0516LDN I2C BCM59121 x3 2.0.2.7 802.3at
TP-Link T1600G-52PS RTL8393 - TI TPS23861PW ×12 n/a 802.3at
TP-Link TL-SG2008P RTL8380M - I2C TI TPS23861PW n/a 802.3at
TP-Link TL-SG2210MP RTL8380 - I2C ChipUP XS2184 n/a 802.3at
TP-Link TL-SG2210P v5 RTL8380 - I2C MonolithicPower MP3924 n/a 802.3at
Trendnet TPE-082WS RTL8380M Nuvoton M0516LDE UART BCM59121 802.3at
Trendnet TPE-224WS RTL8332M STMicro STM32F100C8 BCM59111 x6 802.3at
Trendnet TPE-1620WS RTL8382M Nuvoton M0516LDE UART BCM59121 ×2 802.3at
Trendnet TPE-2840WS RTL8382M Nuvoton M0516LDE UART BCM59121 ×3 802.3at
Ubiquiti Unifi Switch Lite 16 PoE RTL8382M Nuvoton M0516 I2C BCM59121 3.0.0.2 802.3at
Zyxel GS1900-8HP v1 RTL8380M STMicro STM32F100C8 UART BCM59111 x2 802.3at
Zyxel GS1900-10HP RTL8380M STMicro STM32F100C8 UART BCM59121 1.6.0.4 (BCM59121), 1.0.0.1 (BCM59101) 802.3at
Zyxel GS1900-24EP RTL8382M Nuvoton NUC029ZAN Realtek RTL8238 x2 802.3bt
Zyxel GS1900-24HP RTL8382M STMicro STM32F100C8 UART BCM59111 x6 802.3at
Zyxel GS1920-24HP STM 32F100 I2C BMC59111 ×6 802.3at
Zyxel GS2210-8HP RTL8392 STMicro STM32F100C8 BCM59111 x2 802.3at

On the Broadcom platform, an intermediate microcontroller is used to managed a Broadcom PSE controller, like the BCM59121. Although more than one microcontroller type is used over different products, they all appear to use the same serial protocol. The high level control and status commands between the microcontroller and SoC use the SoC's secondary UART. The UART connection between the SoC and microcontroller typically uses a 19200 baud, 8n1 connection. Communication between the microcontroller and the Broadcom chip uses Broadcom Serial Control (BSC), an I2C dialect.

See Broadcom PoE control protocol for more details.

Like the Broadcom platform, the Microchip PoE platform also uses a combination of a SoC-PSE bridge as controller, and PSE management ICs to control the power to the PoE devices.

Documentation

Until now, only one switch series was based TI's PSE controllers. These can be controlled directly by the SoC, or (according to TI's product pages) by an intermediate MCU.

Realtek now also produces the RTL8238 PSE chip, paired with a management MCU. The GS1900-24EP uses this device, and the source archive contains some code referring to it. From the headers, it appears to mirror the Broadcom platform's interface, probably to provide a uniform interface to the controlling SoC for both PSE options.

If your switch is based on the Broadcom PoE platform, you will need the rtl83xx-poe package in order to use PoE. This is currently available from blogic's staging tree. Note that the other PoE platforms are not supported by this package.

Either compile the package separately and install it on the switch after booting up OpenWrt, or copy over the files in the files sub-directory over into the base-files directory of your OpenWrt git repository from which you build the switch firmware.

Information on how to configure is here: https://forum.openwrt.org/t/support-for-rtl838x-based-managed-switches/57875/284.

Please note this Lua implementation is no longer receiving updates and the new C code is in the works: https://patchwork.ozlabs.org/project/openwrt/patch/20210511152243.1167160-1-john@phrozen.org/.

  • software/poe_management.1663323727.txt.gz
  • Last modified: 2022/09/16 10:22
  • by svanheule