On Tue, Mar 18, 2025 at 05:34:08AM +0000, Jacky Chou wrote: > Hi Andrew, > > Thank you for your reply. > > > > The RGMII delay of AST2600 has a lot of steps can be configured. > > > > Are they uniformly space? Then it should be a simple formula to calculate? Or > > a lookup table? > > There are fixed delay values by step. I list below. > AST2600 MAC0/1 one step delay = 45 ps > AST2600 MAC2/3 one step delay = 250 ps That is messy. > I calculate all step and emulate them. > The dt-binding will be like below. > rx-internal-delay-ps: > description: > Setting this property to a non-zero number sets the RX internal delay > for the MAC. ... skip ... > enum: > [45, 90, 135, 180, 225, 250, 270, 315, 360, 405, 450, 495, 500, 540, 585, 630, 675, > 720, 750, 765, 810, 855, 900, 945, 990, 1000, 1035, 1080, 1125, 1170, 1215, 1250, > 1260, 1305, 1350, 1395, 1440, 1500, 1750, 2000, 2250, 2500, 2750, 3000, 3250, 3500, > 3750, 4000, 4250, 4500, 4750, 5000, 5250, 5500, 5750, 6000, 6250, 6500, 6750, 7000, > 7250, 7500, 7750, 8000] Can the hardware do 0 ps? So this list is a superset of both 45ps and 250ps steps? Lets see what the DT Maintainers say, but it could be you need two different compatibles for mac0/1 to mac2/3 because they are not actually compatible! You can then have a list per compatible. Andrew