Hi Dmitry, thank you for your feedback on this patch. The intention here is to allow power source selection through the UCSI driver. The existing typec operation wouldn't work here because setting the power roles alone won't set the charge source. That's also why there is no pr_set(TYPEC_SOURCE) call for a negative value. It should disable charging from that port, but it doesn't need to change the power role. But I take your point that writing positive/negative values to charge_control_limit_max is not an intuitive way to enable this functionality. Thanks for catching this issues with UCSI version and inconsistencies between sysfs and system state. I need to revisit the design here. I'll remove this patch from the V3 series and take another look at how we could implement power source selection. Thanks, Jameson