> > So this goes completely against the naming of the property. It has the > > -ps suffix, so you would expect to have picoseconds values passed, and > > not an arbiraty index. > > > > Take a look at other drivers, you should accept picseconds values from > > these properties, then compute the relevant index in the driver. That > > index should be something internal to your driver. > > > > An example here : > > > > https://elixir.bootlin.com/linux/v6.14-rc6/source/drivers/net/ethernet > > /microchip/sparx5/lan969x/lan969x_rgmii.c#L51 > > Another example would be drivers/net/phy/adin.c::adin_get_reg_value() > and associated functions - these lookup a DT property and then look that up in > a table to convert it to a register value. > > I suspect that's something which could become generic, as I suspect most > hardware isn't going to accept a picosecond value, but be a choice of N > different options. Thank you for your information. The RGMII delay of AST2600 has a lot of steps can be configured. And the delay value of each MAC has different. Each MAC has 64 steps to configure RGMII TX/RX delay. Therefore, I use these properties as index to configure the register to reduce computing in driver. Or I do not use the property that defined in ethernet-controller.yaml, I create the property that defined by myself? Thanks, Jacky