Experimental Commands for QFX5240-64OD

Hardware Voltage Margin and Clock Disturbance Tests


Convention

  • A prompt beginning with root@re0> indicates Junos CLI
  • A prompt beginning with root@re0:~# indicates Shell prompt

1. Voltage Margining of Power Rails (Optics Cages)

a. Show Current Voltage Levels

root@re0> show chassis environment fpc | grep OPTIC_CAGE

Example output:

MB_OPTIC_CAGE_GRP3_3V3 3318 mV
MB_OPTIC_CAGE_GRP2_3V3 3318 mV
MB_OPTIC_CAGE_GRP1_3V3 3318 mV

Optics Cage Group Mapping

Power RailPort Range
MB_OPTIC_CAGE_GRP3_3V3Ports 0–20
MB_OPTIC_CAGE_GRP2_3V3Ports 21–41
MB_OPTIC_CAGE_GRP1_3V3Ports 42–65

b. Voltage Margining Commands

(Run from Shell: root@re0:~#)

⚠️ Caution: Voltage margining may impact optics and cables. Use higher offsets only for controlled lab testing.


a. Nominal (Default ~3.3V)

i2cset -f -y 6 0x18 0x0 0x20
i2cset -f -y 6 0x18 0x13 0x006d w
i2cset -f -y 6 0x18 0x0 0x0

i2cset -f -y 6 0x2a 0x0 0x20
i2cset -f -y 6 0x2a 0x13 0x006d w
i2cset -f -y 6 0x2a 0x0 0x0

i2cset -f -y 6 0x2e 0x0 0x20
i2cset -f -y 6 0x2e 0x13 0x006d w
i2cset -f -y 6 0x2e 0x0 0x0

b. +3%

i2cset -f -y 6 0x18 0x0 0x20
i2cset -f -y 6 0x18 0x13 0x0072 w
i2cset -f -y 6 0x18 0x0 0x0

i2cset -f -y 6 0x2a 0x0 0x20
i2cset -f -y 6 0x2a 0x13 0x0072 w
i2cset -f -y 6 0x2a 0x0 0x0

i2cset -f -y 6 0x2e 0x0 0x20
i2cset -f -y 6 0x2e 0x13 0x0072 w
i2cset -f -y 6 0x2e 0x0 0x0

c. −3%

i2cset -f -y 6 0x18 0x0 0x20
i2cset -f -y 6 0x18 0x13 0x0068 w
i2cset -f -y 6 0x18 0x0 0x0

i2cset -f -y 6 0x2a 0x0 0x20
i2cset -f -y 6 0x2a 0x13 0x0068 w
i2cset -f -y 6 0x2a 0x0 0x0

i2cset -f -y 6 0x2e 0x0 0x20
i2cset -f -y 6 0x2e 0x13 0x0068 w
i2cset -f -y 6 0x2e 0x0 0x0

d. +5% (Use with caution)

i2cset -f -y 6 0x18 0x0 0x20
i2cset -f -y 6 0x18 0x13 0x0075 w
i2cset -f -y 6 0x18 0x0 0x0

i2cset -f -y 6 0x2a 0x0 0x20
i2cset -f -y 6 0x2a 0x13 0x0075 w
i2cset -f -y 6 0x2a 0x0 0x0

i2cset -f -y 6 0x2e 0x0 0x20
i2cset -f -y 6 0x2e 0x13 0x0075 w
i2cset -f -y 6 0x2e 0x0 0x0

e. −5% (Use with caution)

i2cset -f -y 6 0x18 0x0 0x20
i2cset -f -y 6 0x18 0x13 0x0065 w
i2cset -f -y 6 0x18 0x0 0x0

i2cset -f -y 6 0x2a 0x0 0x20
i2cset -f -y 6 0x2a 0x13 0x0065 w
i2cset -f -y 6 0x2a 0x0 0x0

i2cset -f -y 6 0x2e 0x0 0x20
i2cset -f -y 6 0x2e 0x13 0x0065 w
i2cset -f -y 6 0x2e 0x0 0x0

f. +7% (Use with caution)

i2cset -f -y 6 0x18 0x0 0x20
i2cset -f -y 6 0x18 0x13 0x0078 w
i2cset -f -y 6 0x18 0x0 0x0

i2cset -f -y 6 0x2a 0x0 0x20
i2cset -f -y 6 0x2a 0x13 0x0078 w
i2cset -f -y 6 0x2a 0x0 0x0

i2cset -f -y 6 0x2e 0x0 0x20
i2cset -f -y 6 0x2e 0x13 0x0078 w
i2cset -f -y 6 0x2e 0x0 0x0

g. −7% (Use with caution)

i2cset -f -y 6 0x18 0x0 0x20
i2cset -f -y 6 0x18 0x13 0x0062 w
i2cset -f -y 6 0x18 0x0 0x0

i2cset -f -y 6 0x2a 0x0 0x20
i2cset -f -y 6 0x2a 0x13 0x0062 w
i2cset -f -y 6 0x2a 0x0 0x0

i2cset -f -y 6 0x2e 0x0 0x20
i2cset -f -y 6 0x2e 0x13 0x0062 w
i2cset -f -y 6 0x2e 0x0 0x0

2. Inducing Clock Disturbance

Inject Clock Offset

root@re0:~# i2cset -y 1 0x9 0xfd 0x0
root@re0:~# i2cset -y 1 0x9 0x61 <value>

Supported Values

0x00 (default)
0x11 0x22 0x33 0x44 0x55
0x66 0x77 0x88 0x99
0xaa 0xbb 0xcc 0xdd
0xee 0xff

Clock deviation is proportional to the step size
(new value − current value)


Detect Loss of Lock

root@re0:~# i2cset -y 1 0x9 0xfd 0x5
root@re0:~# i2cget -y 1 0x9 0x72
  • Maximum counter value: 0x0f

Clear Loss-of-Lock Counter

root@re0:~# i2cset -y 1 0x9 0xfd 0x5
root@re0:~# i2cset -y 1 0x9 0x72 0x00