1*4882a593Smuzhiyun======================================= 2*4882a593SmuzhiyunKernel driver for Mellanox systems LEDs 3*4882a593Smuzhiyun======================================= 4*4882a593Smuzhiyun 5*4882a593SmuzhiyunProvide system LED support for the nex Mellanox systems: 6*4882a593Smuzhiyun"msx6710", "msx6720", "msb7700", "msn2700", "msx1410", 7*4882a593Smuzhiyun"msn2410", "msb7800", "msn2740", "msn2100". 8*4882a593Smuzhiyun 9*4882a593SmuzhiyunDescription 10*4882a593Smuzhiyun----------- 11*4882a593SmuzhiyunDriver provides the following LEDs for the systems "msx6710", "msx6720", 12*4882a593Smuzhiyun"msb7700", "msn2700", "msx1410", "msn2410", "msb7800", "msn2740": 13*4882a593Smuzhiyun 14*4882a593Smuzhiyun - mlxcpld:fan1:green 15*4882a593Smuzhiyun - mlxcpld:fan1:red 16*4882a593Smuzhiyun - mlxcpld:fan2:green 17*4882a593Smuzhiyun - mlxcpld:fan2:red 18*4882a593Smuzhiyun - mlxcpld:fan3:green 19*4882a593Smuzhiyun - mlxcpld:fan3:red 20*4882a593Smuzhiyun - mlxcpld:fan4:green 21*4882a593Smuzhiyun - mlxcpld:fan4:red 22*4882a593Smuzhiyun - mlxcpld:psu:green 23*4882a593Smuzhiyun - mlxcpld:psu:red 24*4882a593Smuzhiyun - mlxcpld:status:green 25*4882a593Smuzhiyun - mlxcpld:status:red 26*4882a593Smuzhiyun 27*4882a593Smuzhiyun "status" 28*4882a593Smuzhiyun - CPLD reg offset: 0x20 29*4882a593Smuzhiyun - Bits [3:0] 30*4882a593Smuzhiyun 31*4882a593Smuzhiyun "psu" 32*4882a593Smuzhiyun - CPLD reg offset: 0x20 33*4882a593Smuzhiyun - Bits [7:4] 34*4882a593Smuzhiyun 35*4882a593Smuzhiyun "fan1" 36*4882a593Smuzhiyun - CPLD reg offset: 0x21 37*4882a593Smuzhiyun - Bits [3:0] 38*4882a593Smuzhiyun 39*4882a593Smuzhiyun "fan2" 40*4882a593Smuzhiyun - CPLD reg offset: 0x21 41*4882a593Smuzhiyun - Bits [7:4] 42*4882a593Smuzhiyun 43*4882a593Smuzhiyun "fan3" 44*4882a593Smuzhiyun - CPLD reg offset: 0x22 45*4882a593Smuzhiyun - Bits [3:0] 46*4882a593Smuzhiyun 47*4882a593Smuzhiyun "fan4" 48*4882a593Smuzhiyun - CPLD reg offset: 0x22 49*4882a593Smuzhiyun - Bits [7:4] 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun Color mask for all the above LEDs: 52*4882a593Smuzhiyun 53*4882a593Smuzhiyun [bit3,bit2,bit1,bit0] or 54*4882a593Smuzhiyun [bit7,bit6,bit5,bit4]: 55*4882a593Smuzhiyun 56*4882a593Smuzhiyun - [0,0,0,0] = LED OFF 57*4882a593Smuzhiyun - [0,1,0,1] = Red static ON 58*4882a593Smuzhiyun - [1,1,0,1] = Green static ON 59*4882a593Smuzhiyun - [0,1,1,0] = Red blink 3Hz 60*4882a593Smuzhiyun - [1,1,1,0] = Green blink 3Hz 61*4882a593Smuzhiyun - [0,1,1,1] = Red blink 6Hz 62*4882a593Smuzhiyun - [1,1,1,1] = Green blink 6Hz 63*4882a593Smuzhiyun 64*4882a593SmuzhiyunDriver provides the following LEDs for the system "msn2100": 65*4882a593Smuzhiyun 66*4882a593Smuzhiyun - mlxcpld:fan:green 67*4882a593Smuzhiyun - mlxcpld:fan:red 68*4882a593Smuzhiyun - mlxcpld:psu1:green 69*4882a593Smuzhiyun - mlxcpld:psu1:red 70*4882a593Smuzhiyun - mlxcpld:psu2:green 71*4882a593Smuzhiyun - mlxcpld:psu2:red 72*4882a593Smuzhiyun - mlxcpld:status:green 73*4882a593Smuzhiyun - mlxcpld:status:red 74*4882a593Smuzhiyun - mlxcpld:uid:blue 75*4882a593Smuzhiyun 76*4882a593Smuzhiyun "status" 77*4882a593Smuzhiyun - CPLD reg offset: 0x20 78*4882a593Smuzhiyun - Bits [3:0] 79*4882a593Smuzhiyun 80*4882a593Smuzhiyun "fan" 81*4882a593Smuzhiyun - CPLD reg offset: 0x21 82*4882a593Smuzhiyun - Bits [3:0] 83*4882a593Smuzhiyun 84*4882a593Smuzhiyun "psu1" 85*4882a593Smuzhiyun - CPLD reg offset: 0x23 86*4882a593Smuzhiyun - Bits [3:0] 87*4882a593Smuzhiyun 88*4882a593Smuzhiyun "psu2" 89*4882a593Smuzhiyun - CPLD reg offset: 0x23 90*4882a593Smuzhiyun - Bits [7:4] 91*4882a593Smuzhiyun 92*4882a593Smuzhiyun "uid" 93*4882a593Smuzhiyun - CPLD reg offset: 0x24 94*4882a593Smuzhiyun - Bits [3:0] 95*4882a593Smuzhiyun 96*4882a593Smuzhiyun Color mask for all the above LEDs, excepted uid: 97*4882a593Smuzhiyun 98*4882a593Smuzhiyun [bit3,bit2,bit1,bit0] or 99*4882a593Smuzhiyun [bit7,bit6,bit5,bit4]: 100*4882a593Smuzhiyun 101*4882a593Smuzhiyun - [0,0,0,0] = LED OFF 102*4882a593Smuzhiyun - [0,1,0,1] = Red static ON 103*4882a593Smuzhiyun - [1,1,0,1] = Green static ON 104*4882a593Smuzhiyun - [0,1,1,0] = Red blink 3Hz 105*4882a593Smuzhiyun - [1,1,1,0] = Green blink 3Hz 106*4882a593Smuzhiyun - [0,1,1,1] = Red blink 6Hz 107*4882a593Smuzhiyun - [1,1,1,1] = Green blink 6Hz 108*4882a593Smuzhiyun 109*4882a593Smuzhiyun Color mask for uid LED: 110*4882a593Smuzhiyun [bit3,bit2,bit1,bit0]: 111*4882a593Smuzhiyun 112*4882a593Smuzhiyun - [0,0,0,0] = LED OFF 113*4882a593Smuzhiyun - [1,1,0,1] = Blue static ON 114*4882a593Smuzhiyun - [1,1,1,0] = Blue blink 3Hz 115*4882a593Smuzhiyun - [1,1,1,1] = Blue blink 6Hz 116*4882a593Smuzhiyun 117*4882a593SmuzhiyunDriver supports HW blinking at 3Hz and 6Hz frequency (50% duty cycle). 118*4882a593SmuzhiyunFor 3Hz duty cylce is about 167 msec, for 6Hz is about 83 msec. 119