I have bought Vention Multi-function USB-C 9-in-1 for Librem 5. It works with Librem 5 when powered from Librem 5 reliably. When powered from Librem 5 accompanying power supply, then there sometimes issues. When powered the first and then Librem 5 is connected to USB C tail then it works. When Librem 5 is connected (on or off) and supply is connected and phone then started or running then there are sometimes issues then Ethernet port is not recognized sometimes. Sometimes there are reported overheat from battery NTC and red diode blinking and errors reported from BQ25895.
But generally I consider setup as working and I am satosfied. Charging is slower than if power supply is connected directly to Librem 5 but it is possible. So I am generally satisfied with a function.
As for the charging, as I understand and have seen in device tree or somewhere else, charging is limited to 5 VDC only on USB-C. The actual Librem 5 adapter can deliver/negotiate higher voltages but there is no significant increase of the power. The maximal current is almost directly proportional to voltage. I do not have numbers or device before me now… So 5 VDC charging is reasonable for this setup. May it be that there is reserve on BQ25895 for faster charging but it is question if it would not shorten battery life and from my side time is OK, acceptable.
But for another power adapter there could be significant win to use higher supply voltage negotiated over USB-C power delivery standard, because notebooks adapters are probably optimized to deliver lower current on higher voltages and 5 VDC selection means that power watts are limited and there is not enough current to power Librem 5 and battery charging.
I have looked into Librem 5 design when arrived in November and I have doubts if higher PD voltage can be negotiated without risk of its damage. There is BQ25895 battery charger chip. It seems to be clever and elegant so it can accept even voltage higher than 5 VDC from VBUS input (datasheet states Optimize for High Voltage Input (9 V to 12 V)). It then ensures to power rail common for battery and system which is intended for 3.4 to 4.3 VDC on Librem 5. Great. Same choke L46 is used for system power rail energy delivery from USB-C in buck charge mode and even for up conversion in boost mode (blocking step up design) to deliver 5 VDC for USB-C connected peripherals without own power supply which are connected to Librem 5. Nice elegant design and reuse of the same mass of choke… The step up conversion uses internal FET transistor as active rectifier of boost voltage to 5 VDC PMID (it is out voltage labeled DCDC_5V_OUT). But there is Schottky diode D5 from the choke switched end to PMID as well. probably for protection… This means that when choke end is is connected to USB_VBUS_IN (USB-C voltage connected to that point over TPS65982 during charging) then DCDC_5V_OUT cannot have lower voltage due to the D5 presence…
But DCDC_5V_OUT is connected to the PP_5V0 which are power input to pass to USB devices through TPS65982. But it datasheet states max 6 VDC for PP_5V0 pins in 7.1 Absolute Maximum Ratings section.
This means that when higher voltage is negotiated for charging by TPS65982 and passed over USB_VBUS_IN to BQ25895 charger than at the moment when it pass value to the choke then PMID (DCDC_5V_OUT, PP_5V0) voltage level will be (allmost) the same over D5 and TPS65982 maximum ratings will be violated. If that fact and design has not been consulted with Ti and it was not confirmed that high voltage (i.e. 12 VDC) are not problem on pin PP_5V0 when other end of the internal MOSFETs is at the 12 VDC already (pin VBUS) then enabling and negotiation of higher voltage with USB-C power supply will damage the device.
So this 5 VDC limit for power sources has to be taken in account and it is possible that there is no chance to liberate it by software without HW design changes or at least removing D5 which can have probably other consequences, some uncontrolled switching spikes???
Generally, the this part of power distribution, flow switching and conversions is complex and demanding and number of functions which has to be solved is really huge. USB-C has allowed these higher power and faster battery charging etc… It is quite possible that specialized chips used on mass production phones are not available for own projects and are tightly couple to mobile SoCs and firmware. So it was probably hard to build required functionality from available chips which are more intended for docking stations, monitor and other devices…
May it be, Purism HW expert @ekuzmenko can provide some feedback.