On Fri, 9 Jun 2023 14:18:44 +0200 Arkadiusz Kubalewski wrote: > From: Vadim Fedorenko <vadim.fedorenko@xxxxxxxxx> > > Add documentation explaining common netlink interface to configure DPLL > devices and monitoring events. Common way to implement DPLL device in > a driver is also covered. > +``'pin': [{ > + {'clock-id': 282574471561216, > + 'module-name': 'ice', > + 'pin-dpll-caps': 4, > + 'pin-id': 13, > + 'pin-parent': [{'pin-id': 2, 'pin-state': 'connected'}, > + {'pin-id': 3, 'pin-state': 'disconnected'}, > + {'id': 0, 'pin-direction': 'input'}, > + {'id': 1, 'pin-direction': 'input'}], > + 'pin-type': 'synce-eth-port'} > +}]`` It seems like pin-parent is overloaded, can we split it into two different nests? > +SET commands format > +=================== > + > +``DPLL_CMD_DEVICE_SET`` - to target a dpll device, the user provides > +``DPLL_A_ID``, which is unique identifier of dpll device in the system, > +as well as parameter being configured (``DPLL_A_MODE``). > + > +``DPLL_CMD_PIN_SET`` - to target a pin user has to provide a > +``DPLL_A_PIN_ID``, which is unique identifier of a pin in the system. > +Also configured pin parameters must be added. > +If ``DPLL_A_PIN_DIRECTION`` or ``DPLL_A_PIN_FREQUENCY`` are configured, > +this affects all the dpll device they are connected, that is why those > +attributes shall not be enclosed in ``DPLL_A_PIN_PARENT``. > +Other attributes: > +``DPLL_A_PIN_PRIO`` or ``DPLL_A_PIN_STATE`` must be enclosed in > +``DPLL_A_PIN_PARENT`` as their configuration relates to only one > +parent dpll or parent pin. Also sounds like setting pin attrs and pin-parent attrs should be different commands.