On 08 October 2021 12:10, Heikki Krogerus wrote: > > To downscope this issue for the time being, one of our immediate goals > > is to expose the PDOs > > to userspace for metrics reporting and potentially for some power > > policy control through other > > channels (like Chrome OS Embedded Controller). > > > > Would it be acceptable to revise this series to drop the power supply > > support for now (since I don't yet > > see a consensus on how to implement it for the partner), and just add > > sysfs nodes for each PDO ? > > This would be akin to how it's being done for identity VDOs right now. > > > > So we would have : > > > > /sys/class/typec/<port>-partner/source_pdos/pdo{1-13} > > > > and > > > > /sys/class/typec/<port>-partner/sink_pdos/pdo{1-13} > > > > and similarly for the port device. > > > > If we want to add additional parsing of the Fixed Supply PDO into > > individual properties for the partner/port, > > those can of course be added later. > > > > WDYT? > > I don't think we should use sysfs to expose and control any of these > objects. It does not really matter under which subsystem we are > working. Sysfs is just the wrong interface for this kind of data. > > I'm now preparing a proof-of-concept patches where I create character > device for every USB PD capable device (port, plug and partner). The > idea is that we could use those char devices to tap into the USB PD > protocol directly. Right now I'm thinking the nodes would look like > this (with the first Type-C port): > > /dev/pd0/port > /dev/pd0/plug0 - you only get this node with full featured cables > /dev/pd0/plug1 - ditto > /dev/pd0/partner - and this is here only if you are connected > > So in this case you would use those char devices to send the actual > Get_Source_Cap and Get_Sink_Cap messages to get the PDOs. > > The problem is that it's not going to be possible to always support > every type of command. For example with UCSI we are pretty much > limited to the capability control messages. But I still think this is > the right way to do this. > > Let me know what you think. My two pence worth; this feels like a more appropriate mechanism to access that data. Look forward to seeing the POC.