The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/regulator/pwm-regulator.txt

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 Bindings for the Generic PWM Regulator
    2 ======================================
    3 
    4 Currently supports 2 modes of operation:
    5 
    6 Voltage Table:          When in this mode, a voltage table (See below) of
    7                         predefined voltage <=> duty-cycle values must be
    8                         provided via DT. Limitations are that the regulator can
    9                         only operate at the voltages supplied in the table.
   10                         Intermediary duty-cycle values which would normally
   11                         allow finer grained voltage selection are ignored and
   12                         rendered useless.  Although more control is given to
   13                         the user if the assumptions made in continuous-voltage
   14                         mode do not reign true.
   15 
   16 Continuous Voltage:     This mode uses the regulator's maximum and minimum
   17                         supplied voltages specified in the
   18                         regulator-{min,max}-microvolt properties to calculate
   19                         appropriate duty-cycle values.  This allows for a much
   20                         more fine grained solution when compared with
   21                         voltage-table mode above.  This solution does make an
   22                         assumption that a %50 duty-cycle value will cause the
   23                         regulator voltage to run at half way between the
   24                         supplied max_uV and min_uV values.
   25 
   26 Required properties:
   27 --------------------
   28 - compatible:           Should be "pwm-regulator"
   29 
   30 - pwms:                 PWM specification (See: ../pwm/pwm.txt)
   31 
   32 Only required for Voltage Table Mode:
   33 - voltage-table:        Voltage and Duty-Cycle table consisting of 2 cells
   34                             First cell is voltage in microvolts (uV)
   35                             Second cell is duty-cycle in percent (%)
   36 
   37 Optional properties for Continuous mode:
   38 - pwm-dutycycle-unit:   Integer value encoding the duty cycle unit. If not
   39                         defined, <100> is assumed, meaning that
   40                         pwm-dutycycle-range contains values expressed in
   41                         percent.
   42 
   43 - pwm-dutycycle-range:  Should contain 2 entries. The first entry is encoding
   44                         the dutycycle for regulator-min-microvolt and the
   45                         second one the dutycycle for regulator-max-microvolt.
   46                         Duty cycle values are expressed in pwm-dutycycle-unit.
   47                         If not defined, <0 100> is assumed.
   48 
   49 NB: To be clear, if voltage-table is provided, then the device will be used
   50 in Voltage Table Mode.  If no voltage-table is provided, then the device will
   51 be used in Continuous Voltage Mode.
   52 
   53 Optional properties:
   54 --------------------
   55 - enable-gpios:         GPIO to use to enable/disable the regulator
   56 
   57 Any property defined as part of the core regulator binding can also be used.
   58 (See: ../regulator/regulator.txt)
   59 
   60 Continuous Voltage With Enable GPIO Example:
   61         pwm_regulator {
   62                 compatible = "pwm-regulator";
   63                 pwms = <&pwm1 0 8448 0>;
   64                 enable-gpios = <&gpio0 23 GPIO_ACTIVE_HIGH>;
   65                 regulator-min-microvolt = <1016000>;
   66                 regulator-max-microvolt = <1114000>;
   67                 regulator-name = "vdd_logic";
   68                 /* unit == per-mille */
   69                 pwm-dutycycle-unit = <1000>;
   70                 /*
   71                  * Inverted PWM logic, and the duty cycle range is limited
   72                  * to 30%-70%.
   73                  */
   74                 pwm-dutycycle-range = <700 300>; /* */
   75         };
   76 
   77 Voltage Table Example:
   78         pwm_regulator {
   79                 compatible = "pwm-regulator";
   80                 pwms = <&pwm1 0 8448 0>;
   81                 regulator-min-microvolt = <1016000>;
   82                 regulator-max-microvolt = <1114000>;
   83                 regulator-name = "vdd_logic";
   84 
   85                               /* Voltage Duty-Cycle */
   86                 voltage-table = <1114000 0>,
   87                                 <1095000 10>,
   88                                 <1076000 20>,
   89                                 <1056000 30>,
   90                                 <1036000 40>,
   91                                 <1016000 50>;
   92         };

Cache object: 308f7a1ee9740dd14d5036417aa0ab5e


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.