1*4882a593SmuzhiyunWhat: /sys/class/regulator/.../state 2*4882a593SmuzhiyunDate: April 2008 3*4882a593SmuzhiyunKernelVersion: 2.6.26 4*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 5*4882a593SmuzhiyunDescription: 6*4882a593Smuzhiyun Some regulator directories will contain a field called 7*4882a593Smuzhiyun state. This reports the regulator enable control, for 8*4882a593Smuzhiyun regulators which can report that input value. 9*4882a593Smuzhiyun 10*4882a593Smuzhiyun This will be one of the following strings: 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun 'enabled' 13*4882a593Smuzhiyun 'disabled' 14*4882a593Smuzhiyun 'unknown' 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun 'enabled' means the regulator output is ON and is supplying 17*4882a593Smuzhiyun power to the system (assuming no error prevents it). 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun 'disabled' means the regulator output is OFF and is not 20*4882a593Smuzhiyun supplying power to the system (unless some non-Linux 21*4882a593Smuzhiyun control has enabled it). 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun 'unknown' means software cannot determine the state, or 24*4882a593Smuzhiyun the reported state is invalid. 25*4882a593Smuzhiyun 26*4882a593Smuzhiyun NOTE: this field can be used in conjunction with microvolts 27*4882a593Smuzhiyun or microamps to determine configured regulator output levels. 28*4882a593Smuzhiyun 29*4882a593Smuzhiyun 30*4882a593SmuzhiyunWhat: /sys/class/regulator/.../status 31*4882a593SmuzhiyunDescription: 32*4882a593Smuzhiyun Some regulator directories will contain a field called 33*4882a593Smuzhiyun "status". This reports the current regulator status, for 34*4882a593Smuzhiyun regulators which can report that output value. 35*4882a593Smuzhiyun 36*4882a593Smuzhiyun This will be one of the following strings: 37*4882a593Smuzhiyun 38*4882a593Smuzhiyun - off 39*4882a593Smuzhiyun - on 40*4882a593Smuzhiyun - error 41*4882a593Smuzhiyun - fast 42*4882a593Smuzhiyun - normal 43*4882a593Smuzhiyun - idle 44*4882a593Smuzhiyun - standby 45*4882a593Smuzhiyun 46*4882a593Smuzhiyun "off" means the regulator is not supplying power to the 47*4882a593Smuzhiyun system. 48*4882a593Smuzhiyun 49*4882a593Smuzhiyun "on" means the regulator is supplying power to the system, 50*4882a593Smuzhiyun and the regulator can't report a detailed operation mode. 51*4882a593Smuzhiyun 52*4882a593Smuzhiyun "error" indicates an out-of-regulation status such as being 53*4882a593Smuzhiyun disabled due to thermal shutdown, or voltage being unstable 54*4882a593Smuzhiyun because of problems with the input power supply. 55*4882a593Smuzhiyun 56*4882a593Smuzhiyun "fast", "normal", "idle", and "standby" are all detailed 57*4882a593Smuzhiyun regulator operation modes (described elsewhere). They 58*4882a593Smuzhiyun imply "on", but provide more detail. 59*4882a593Smuzhiyun 60*4882a593Smuzhiyun Note that regulator status is a function of many inputs, 61*4882a593Smuzhiyun not limited to control inputs from Linux. For example, 62*4882a593Smuzhiyun the actual load presented may trigger "error" status; or 63*4882a593Smuzhiyun a regulator may be enabled by another user, even though 64*4882a593Smuzhiyun Linux did not enable it. 65*4882a593Smuzhiyun 66*4882a593Smuzhiyun 67*4882a593SmuzhiyunWhat: /sys/class/regulator/.../type 68*4882a593SmuzhiyunDate: April 2008 69*4882a593SmuzhiyunKernelVersion: 2.6.26 70*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 71*4882a593SmuzhiyunDescription: 72*4882a593Smuzhiyun Each regulator directory will contain a field called 73*4882a593Smuzhiyun type. This holds the regulator type. 74*4882a593Smuzhiyun 75*4882a593Smuzhiyun This will be one of the following strings: 76*4882a593Smuzhiyun 77*4882a593Smuzhiyun - 'voltage' 78*4882a593Smuzhiyun - 'current' 79*4882a593Smuzhiyun - 'unknown' 80*4882a593Smuzhiyun 81*4882a593Smuzhiyun 'voltage' means the regulator output voltage can be controlled 82*4882a593Smuzhiyun by software. 83*4882a593Smuzhiyun 84*4882a593Smuzhiyun 'current' means the regulator output current limit can be 85*4882a593Smuzhiyun controlled by software. 86*4882a593Smuzhiyun 87*4882a593Smuzhiyun 'unknown' means software cannot control either voltage or 88*4882a593Smuzhiyun current limit. 89*4882a593Smuzhiyun 90*4882a593Smuzhiyun 91*4882a593SmuzhiyunWhat: /sys/class/regulator/.../microvolts 92*4882a593SmuzhiyunDate: April 2008 93*4882a593SmuzhiyunKernelVersion: 2.6.26 94*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 95*4882a593SmuzhiyunDescription: 96*4882a593Smuzhiyun Some regulator directories will contain a field called 97*4882a593Smuzhiyun microvolts. This holds the regulator output voltage setting 98*4882a593Smuzhiyun measured in microvolts (i.e. E-6 Volts), for regulators 99*4882a593Smuzhiyun which can report the control input for voltage. 100*4882a593Smuzhiyun 101*4882a593Smuzhiyun NOTE: This value should not be used to determine the regulator 102*4882a593Smuzhiyun output voltage level as this value is the same regardless of 103*4882a593Smuzhiyun whether the regulator is enabled or disabled. 104*4882a593Smuzhiyun 105*4882a593Smuzhiyun 106*4882a593SmuzhiyunWhat: /sys/class/regulator/.../microamps 107*4882a593SmuzhiyunDate: April 2008 108*4882a593SmuzhiyunKernelVersion: 2.6.26 109*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 110*4882a593SmuzhiyunDescription: 111*4882a593Smuzhiyun Some regulator directories will contain a field called 112*4882a593Smuzhiyun microamps. This holds the regulator output current limit 113*4882a593Smuzhiyun setting measured in microamps (i.e. E-6 Amps), for regulators 114*4882a593Smuzhiyun which can report the control input for a current limit. 115*4882a593Smuzhiyun 116*4882a593Smuzhiyun NOTE: This value should not be used to determine the regulator 117*4882a593Smuzhiyun output current level as this value is the same regardless of 118*4882a593Smuzhiyun whether the regulator is enabled or disabled. 119*4882a593Smuzhiyun 120*4882a593Smuzhiyun 121*4882a593SmuzhiyunWhat: /sys/class/regulator/.../opmode 122*4882a593SmuzhiyunDate: April 2008 123*4882a593SmuzhiyunKernelVersion: 2.6.26 124*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 125*4882a593SmuzhiyunDescription: 126*4882a593Smuzhiyun Some regulator directories will contain a field called 127*4882a593Smuzhiyun opmode. This holds the current regulator operating mode, 128*4882a593Smuzhiyun for regulators which can report that control input value. 129*4882a593Smuzhiyun 130*4882a593Smuzhiyun The opmode value can be one of the following strings: 131*4882a593Smuzhiyun 132*4882a593Smuzhiyun - 'fast' 133*4882a593Smuzhiyun - 'normal' 134*4882a593Smuzhiyun - 'idle' 135*4882a593Smuzhiyun - 'standby' 136*4882a593Smuzhiyun - 'unknown' 137*4882a593Smuzhiyun 138*4882a593Smuzhiyun The modes are described in include/linux/regulator/consumer.h 139*4882a593Smuzhiyun 140*4882a593Smuzhiyun NOTE: This value should not be used to determine the regulator 141*4882a593Smuzhiyun output operating mode as this value is the same regardless of 142*4882a593Smuzhiyun whether the regulator is enabled or disabled. A "status" 143*4882a593Smuzhiyun attribute may be available to determine the actual mode. 144*4882a593Smuzhiyun 145*4882a593Smuzhiyun 146*4882a593SmuzhiyunWhat: /sys/class/regulator/.../min_microvolts 147*4882a593SmuzhiyunDate: April 2008 148*4882a593SmuzhiyunKernelVersion: 2.6.26 149*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 150*4882a593SmuzhiyunDescription: 151*4882a593Smuzhiyun Some regulator directories will contain a field called 152*4882a593Smuzhiyun min_microvolts. This holds the minimum safe working regulator 153*4882a593Smuzhiyun output voltage setting for this domain measured in microvolts, 154*4882a593Smuzhiyun for regulators which support voltage constraints. 155*4882a593Smuzhiyun 156*4882a593Smuzhiyun NOTE: this will return the string 'constraint not defined' if 157*4882a593Smuzhiyun the power domain has no min microvolts constraint defined by 158*4882a593Smuzhiyun platform code. 159*4882a593Smuzhiyun 160*4882a593Smuzhiyun 161*4882a593SmuzhiyunWhat: /sys/class/regulator/.../max_microvolts 162*4882a593SmuzhiyunDate: April 2008 163*4882a593SmuzhiyunKernelVersion: 2.6.26 164*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 165*4882a593SmuzhiyunDescription: 166*4882a593Smuzhiyun Some regulator directories will contain a field called 167*4882a593Smuzhiyun max_microvolts. This holds the maximum safe working regulator 168*4882a593Smuzhiyun output voltage setting for this domain measured in microvolts, 169*4882a593Smuzhiyun for regulators which support voltage constraints. 170*4882a593Smuzhiyun 171*4882a593Smuzhiyun NOTE: this will return the string 'constraint not defined' if 172*4882a593Smuzhiyun the power domain has no max microvolts constraint defined by 173*4882a593Smuzhiyun platform code. 174*4882a593Smuzhiyun 175*4882a593Smuzhiyun 176*4882a593SmuzhiyunWhat: /sys/class/regulator/.../min_microamps 177*4882a593SmuzhiyunDate: April 2008 178*4882a593SmuzhiyunKernelVersion: 2.6.26 179*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 180*4882a593SmuzhiyunDescription: 181*4882a593Smuzhiyun Some regulator directories will contain a field called 182*4882a593Smuzhiyun min_microamps. This holds the minimum safe working regulator 183*4882a593Smuzhiyun output current limit setting for this domain measured in 184*4882a593Smuzhiyun microamps, for regulators which support current constraints. 185*4882a593Smuzhiyun 186*4882a593Smuzhiyun NOTE: this will return the string 'constraint not defined' if 187*4882a593Smuzhiyun the power domain has no min microamps constraint defined by 188*4882a593Smuzhiyun platform code. 189*4882a593Smuzhiyun 190*4882a593Smuzhiyun 191*4882a593SmuzhiyunWhat: /sys/class/regulator/.../max_microamps 192*4882a593SmuzhiyunDate: April 2008 193*4882a593SmuzhiyunKernelVersion: 2.6.26 194*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 195*4882a593SmuzhiyunDescription: 196*4882a593Smuzhiyun Some regulator directories will contain a field called 197*4882a593Smuzhiyun max_microamps. This holds the maximum safe working regulator 198*4882a593Smuzhiyun output current limit setting for this domain measured in 199*4882a593Smuzhiyun microamps, for regulators which support current constraints. 200*4882a593Smuzhiyun 201*4882a593Smuzhiyun NOTE: this will return the string 'constraint not defined' if 202*4882a593Smuzhiyun the power domain has no max microamps constraint defined by 203*4882a593Smuzhiyun platform code. 204*4882a593Smuzhiyun 205*4882a593Smuzhiyun 206*4882a593SmuzhiyunWhat: /sys/class/regulator/.../name 207*4882a593SmuzhiyunDate: October 2008 208*4882a593SmuzhiyunKernelVersion: 2.6.28 209*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 210*4882a593SmuzhiyunDescription: 211*4882a593Smuzhiyun Each regulator directory will contain a field called 212*4882a593Smuzhiyun name. This holds a string identifying the regulator for 213*4882a593Smuzhiyun display purposes. 214*4882a593Smuzhiyun 215*4882a593Smuzhiyun NOTE: this will be empty if no suitable name is provided 216*4882a593Smuzhiyun by platform or regulator drivers. 217*4882a593Smuzhiyun 218*4882a593Smuzhiyun 219*4882a593SmuzhiyunWhat: /sys/class/regulator/.../num_users 220*4882a593SmuzhiyunDate: April 2008 221*4882a593SmuzhiyunKernelVersion: 2.6.26 222*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 223*4882a593SmuzhiyunDescription: 224*4882a593Smuzhiyun Each regulator directory will contain a field called 225*4882a593Smuzhiyun num_users. This holds the number of consumer devices that 226*4882a593Smuzhiyun have called regulator_enable() on this regulator. 227*4882a593Smuzhiyun 228*4882a593Smuzhiyun 229*4882a593SmuzhiyunWhat: /sys/class/regulator/.../requested_microamps 230*4882a593SmuzhiyunDate: April 2008 231*4882a593SmuzhiyunKernelVersion: 2.6.26 232*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 233*4882a593SmuzhiyunDescription: 234*4882a593Smuzhiyun Some regulator directories will contain a field called 235*4882a593Smuzhiyun requested_microamps. This holds the total requested load 236*4882a593Smuzhiyun current in microamps for this regulator from all its consumer 237*4882a593Smuzhiyun devices. 238*4882a593Smuzhiyun 239*4882a593Smuzhiyun 240*4882a593SmuzhiyunWhat: /sys/class/regulator/.../parent 241*4882a593SmuzhiyunDate: April 2008 242*4882a593SmuzhiyunKernelVersion: 2.6.26 243*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 244*4882a593SmuzhiyunDescription: 245*4882a593Smuzhiyun Some regulator directories will contain a link called parent. 246*4882a593Smuzhiyun This points to the parent or supply regulator if one exists. 247*4882a593Smuzhiyun 248*4882a593SmuzhiyunWhat: /sys/class/regulator/.../suspend_mem_microvolts 249*4882a593SmuzhiyunDate: May 2008 250*4882a593SmuzhiyunKernelVersion: 2.6.26 251*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 252*4882a593SmuzhiyunDescription: 253*4882a593Smuzhiyun Some regulator directories will contain a field called 254*4882a593Smuzhiyun suspend_mem_microvolts. This holds the regulator output 255*4882a593Smuzhiyun voltage setting for this domain measured in microvolts when 256*4882a593Smuzhiyun the system is suspended to memory, for voltage regulators 257*4882a593Smuzhiyun implementing suspend voltage configuration constraints. 258*4882a593Smuzhiyun 259*4882a593SmuzhiyunWhat: /sys/class/regulator/.../suspend_disk_microvolts 260*4882a593SmuzhiyunDate: May 2008 261*4882a593SmuzhiyunKernelVersion: 2.6.26 262*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 263*4882a593SmuzhiyunDescription: 264*4882a593Smuzhiyun Some regulator directories will contain a field called 265*4882a593Smuzhiyun suspend_disk_microvolts. This holds the regulator output 266*4882a593Smuzhiyun voltage setting for this domain measured in microvolts when 267*4882a593Smuzhiyun the system is suspended to disk, for voltage regulators 268*4882a593Smuzhiyun implementing suspend voltage configuration constraints. 269*4882a593Smuzhiyun 270*4882a593SmuzhiyunWhat: /sys/class/regulator/.../suspend_standby_microvolts 271*4882a593SmuzhiyunDate: May 2008 272*4882a593SmuzhiyunKernelVersion: 2.6.26 273*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 274*4882a593SmuzhiyunDescription: 275*4882a593Smuzhiyun Some regulator directories will contain a field called 276*4882a593Smuzhiyun suspend_standby_microvolts. This holds the regulator output 277*4882a593Smuzhiyun voltage setting for this domain measured in microvolts when 278*4882a593Smuzhiyun the system is suspended to standby, for voltage regulators 279*4882a593Smuzhiyun implementing suspend voltage configuration constraints. 280*4882a593Smuzhiyun 281*4882a593SmuzhiyunWhat: /sys/class/regulator/.../suspend_mem_mode 282*4882a593SmuzhiyunDate: May 2008 283*4882a593SmuzhiyunKernelVersion: 2.6.26 284*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 285*4882a593SmuzhiyunDescription: 286*4882a593Smuzhiyun Some regulator directories will contain a field called 287*4882a593Smuzhiyun suspend_mem_mode. This holds the regulator operating mode 288*4882a593Smuzhiyun setting for this domain when the system is suspended to 289*4882a593Smuzhiyun memory, for regulators implementing suspend mode 290*4882a593Smuzhiyun configuration constraints. 291*4882a593Smuzhiyun 292*4882a593SmuzhiyunWhat: /sys/class/regulator/.../suspend_disk_mode 293*4882a593SmuzhiyunDate: May 2008 294*4882a593SmuzhiyunKernelVersion: 2.6.26 295*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 296*4882a593SmuzhiyunDescription: 297*4882a593Smuzhiyun Some regulator directories will contain a field called 298*4882a593Smuzhiyun suspend_disk_mode. This holds the regulator operating mode 299*4882a593Smuzhiyun setting for this domain when the system is suspended to disk, 300*4882a593Smuzhiyun for regulators implementing suspend mode configuration 301*4882a593Smuzhiyun constraints. 302*4882a593Smuzhiyun 303*4882a593SmuzhiyunWhat: /sys/class/regulator/.../suspend_standby_mode 304*4882a593SmuzhiyunDate: May 2008 305*4882a593SmuzhiyunKernelVersion: 2.6.26 306*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 307*4882a593SmuzhiyunDescription: 308*4882a593Smuzhiyun Some regulator directories will contain a field called 309*4882a593Smuzhiyun suspend_standby_mode. This holds the regulator operating mode 310*4882a593Smuzhiyun setting for this domain when the system is suspended to 311*4882a593Smuzhiyun standby, for regulators implementing suspend mode 312*4882a593Smuzhiyun configuration constraints. 313*4882a593Smuzhiyun 314*4882a593SmuzhiyunWhat: /sys/class/regulator/.../suspend_mem_state 315*4882a593SmuzhiyunDate: May 2008 316*4882a593SmuzhiyunKernelVersion: 2.6.26 317*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 318*4882a593SmuzhiyunDescription: 319*4882a593Smuzhiyun Some regulator directories will contain a field called 320*4882a593Smuzhiyun suspend_mem_state. This holds the regulator operating state 321*4882a593Smuzhiyun when suspended to memory, for regulators implementing suspend 322*4882a593Smuzhiyun configuration constraints. 323*4882a593Smuzhiyun 324*4882a593Smuzhiyun This will be one of the same strings reported by 325*4882a593Smuzhiyun the "state" attribute. 326*4882a593Smuzhiyun 327*4882a593SmuzhiyunWhat: /sys/class/regulator/.../suspend_disk_state 328*4882a593SmuzhiyunDate: May 2008 329*4882a593SmuzhiyunKernelVersion: 2.6.26 330*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 331*4882a593SmuzhiyunDescription: 332*4882a593Smuzhiyun Some regulator directories will contain a field called 333*4882a593Smuzhiyun suspend_disk_state. This holds the regulator operating state 334*4882a593Smuzhiyun when suspended to disk, for regulators implementing 335*4882a593Smuzhiyun suspend configuration constraints. 336*4882a593Smuzhiyun 337*4882a593Smuzhiyun This will be one of the same strings reported by 338*4882a593Smuzhiyun the "state" attribute. 339*4882a593Smuzhiyun 340*4882a593SmuzhiyunWhat: /sys/class/regulator/.../suspend_standby_state 341*4882a593SmuzhiyunDate: May 2008 342*4882a593SmuzhiyunKernelVersion: 2.6.26 343*4882a593SmuzhiyunContact: Liam Girdwood <lrg@slimlogic.co.uk> 344*4882a593SmuzhiyunDescription: 345*4882a593Smuzhiyun Some regulator directories will contain a field called 346*4882a593Smuzhiyun suspend_standby_state. This holds the regulator operating 347*4882a593Smuzhiyun state when suspended to standby, for regulators implementing 348*4882a593Smuzhiyun suspend configuration constraints. 349*4882a593Smuzhiyun 350*4882a593Smuzhiyun This will be one of the same strings reported by 351*4882a593Smuzhiyun the "state" attribute. 352*4882a593Smuzhiyun 353*4882a593SmuzhiyunWhat: /sys/class/regulator/.../bypass 354*4882a593SmuzhiyunDate: September 2012 355*4882a593SmuzhiyunKernelVersion: 3.7 356*4882a593SmuzhiyunContact: Mark Brown <broonie@opensource.wolfsonmicro.com> 357*4882a593SmuzhiyunDescription: 358*4882a593Smuzhiyun Some regulator directories will contain a field called 359*4882a593Smuzhiyun bypass. This indicates if the device is in bypass mode. 360*4882a593Smuzhiyun 361*4882a593Smuzhiyun This will be one of the following strings: 362*4882a593Smuzhiyun 363*4882a593Smuzhiyun - 'enabled' 364*4882a593Smuzhiyun - 'disabled' 365*4882a593Smuzhiyun - 'unknown' 366*4882a593Smuzhiyun 367*4882a593Smuzhiyun 'enabled' means the regulator is in bypass mode. 368*4882a593Smuzhiyun 369*4882a593Smuzhiyun 'disabled' means that the regulator is regulating. 370*4882a593Smuzhiyun 371*4882a593Smuzhiyun 'unknown' means software cannot determine the state, or 372*4882a593Smuzhiyun the reported state is invalid. 373