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/mfd/stericsson,ab8500.yaml

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 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
    2 %YAML 1.2
    3 ---
    4 $id: http://devicetree.org/schemas/mfd/stericsson,ab8500.yaml#
    5 $schema: http://devicetree.org/meta-schemas/core.yaml#
    6 
    7 title: ST-Ericsson Analog Baseband AB8500 and AB8505
    8 
    9 maintainers:
   10   - Linus Walleij <linus.walleij@linaro.org>
   11 
   12 description:
   13   the AB8500 "Analog Baseband" is the mixed-signals integrated circuit
   14   handling power management (regulators), analog-to-digital conversion
   15   (ADC), battery charging, fuel gauging of the battery, battery-backed
   16   RTC, PWM, USB PHY and some GPIO lines in the ST-Ericsson U8500 platforms
   17   in connection with the DB8500 digital baseband. The DB8500 PRCMU
   18   communicates directly and autonomously with the AB8500 and thus it
   19   appears as a subnode of the DB8500 PRCMU. An altered version called
   20   AB8505 also exist, the difference in AB8505 is that some of the USB and
   21   USB charging handling has changed, and it has an embedded USB-to-serial
   22   converter. Most subblocks takes their interrupts directly from the
   23   AB8500 embedded interrupt controller.
   24 
   25 properties:
   26   $nodename:
   27     pattern: '^ab850[05]$'
   28 
   29   compatible:
   30     enum:
   31       - stericsson,ab8500
   32       - stericsson,ab8505
   33 
   34   interrupts:
   35     maxItems: 1
   36 
   37   interrupt-controller: true
   38 
   39   '#interrupt-cells':
   40     const: 2
   41 
   42   # Some subnodes use a reg, some don't. Those that do use a single cell.
   43   '#address-cells':
   44     const: 1
   45 
   46   '#size-cells':
   47     const: 0
   48 
   49   clock-controller:
   50     description: Node describing the AB8500 clock controller. This
   51       provides the reference clock for the entire U8500 system and
   52       the DB8500 counterpart.
   53     type: object
   54 
   55     properties:
   56       compatible:
   57         const: stericsson,ab8500-clk
   58 
   59       '#clock-cells':
   60         const: 1
   61 
   62   gpio:
   63     description: Node describing the AB8500 GPIO controller. A few
   64       GPIO pins available for misc usage.
   65     type: object
   66 
   67     properties:
   68       compatible:
   69         enum:
   70           - stericsson,ab8500-gpio
   71           - stericsson,ab8505-gpio
   72 
   73       gpio-controller: true
   74 
   75       '#gpio-cells':
   76         const: 2
   77 
   78   rtc:
   79     description: Node describing the AB8500 battery-backed RTC.
   80     type: object
   81 
   82     properties:
   83       compatible:
   84         const: stericsson,ab8500-rtc
   85 
   86       interrupts:
   87         items:
   88           - description: 60 second interval alarm interrupt
   89           - description: RTC alarm
   90 
   91       interrupt-names:
   92         items:
   93           - const: 60S
   94           - const: ALARM
   95 
   96   adc:
   97     description: Node describing the AB8500 general purpose analog to digital
   98       converter, GPADC.
   99     type: object
  100 
  101     properties:
  102       compatible:
  103         const: stericsson,ab8500-gpadc
  104 
  105       # AB8505 only supports one (software) EOC interrupt
  106       interrupts:
  107         minItems: 1
  108         maxItems: 2
  109 
  110       interrupt-names: true
  111 
  112       vddadc-supply: true
  113 
  114       '#address-cells':
  115         const: 1
  116 
  117       '#size-cells':
  118         const: 0
  119 
  120       '#io-channel-cells':
  121         const: 1
  122 
  123     patternProperties:
  124       "^channel@[0-9a-f]+$":
  125         type: object
  126         $ref: ../iio/adc/adc.yaml#
  127         description: Represents each of the external channels which are
  128           connected to the ADC.
  129 
  130         properties:
  131           reg:
  132             items:
  133               minimum: 1
  134               maximum: 31
  135 
  136         required:
  137           - reg
  138 
  139         additionalProperties: false
  140 
  141     required:
  142       - compatible
  143       - interrupts
  144       - interrupt-names
  145       - vddadc-supply
  146       - '#address-cells'
  147       - '#size-cells'
  148       - '#io-channel-cells'
  149 
  150     additionalProperties: false
  151 
  152   thermal:
  153     description: Node describing the AB8500 thermal control block. All this block
  154       really does is to fire an interrupt when the die becomes 130 degrees Celsius
  155       in temperature.
  156     type: object
  157 
  158     properties:
  159       compatible:
  160         const: stericsson,abx500-temp
  161 
  162       interrupts:
  163         items:
  164           - description: Thermal warm warning interrupt
  165 
  166       interrupt-names:
  167         items:
  168           - const: ABX500_TEMP_WARM
  169 
  170     required:
  171       - compatible
  172       - interrupts
  173       - interrupt-names
  174 
  175     additionalProperties: false
  176 
  177   ab8500_fg:
  178     description: Node describing the AB8500 fuel gauge control block.
  179     type: object
  180     $ref: ../power/supply/stericsson,ab8500-fg.yaml
  181 
  182   ab8500_btemp:
  183     description: Node describing the AB8500 battery temperature control block.
  184     type: object
  185     $ref: ../power/supply/stericsson,ab8500-btemp.yaml
  186 
  187   ab8500_charger:
  188     description: Node describing the AB8500 battery charger control block.
  189     type: object
  190     $ref: ../power/supply/stericsson,ab8500-charger.yaml
  191 
  192   ab8500_chargalg:
  193     description: Node describing the AB8500 battery charger algorithm.
  194     type: object
  195     $ref: ../power/supply/stericsson,ab8500-chargalg.yaml
  196 
  197   phy:
  198     description: Node describing the AB8500 USB PHY control block.
  199     type: object
  200 
  201     properties:
  202       compatible:
  203         const: stericsson,ab8500-usb
  204 
  205       interrupts:
  206         items:
  207           - description: ID wakeup rising IRQ
  208           - description: ID wakeup falling IRQ
  209           - description: VBUS detection falling IRQ
  210           - description: VBUS detection rising IRQ
  211           - description: USB link status change IRQ
  212           - description: ADP probe plug IRQ
  213           - description: ADP probe unplug IRQ
  214 
  215       interrupt-names:
  216         items:
  217           - const: ID_WAKEUP_R
  218           - const: ID_WAKEUP_F
  219           - const: VBUS_DET_F
  220           - const: VBUS_DET_R
  221           - const: USB_LINK_STATUS
  222           - const: USB_ADP_PROBE_PLUG
  223           - const: USB_ADP_PROBE_UNPLUG
  224 
  225       vddulpivio18-supply: true
  226       v-ape-supply: true
  227       musb_1v8-supply: true
  228 
  229       clocks:
  230         items:
  231           - description: PRCMY system clock
  232 
  233       clock-names:
  234         items:
  235           - const: sysclk
  236 
  237       '#phy-cells':
  238         const: 0
  239 
  240     required:
  241       - compatible
  242       - interrupts
  243       - interrupt-names
  244       - vddulpivio18-supply
  245       - v-ape-supply
  246       - musb_1v8-supply
  247       - clocks
  248       - clock-names
  249       - '#phy-cells'
  250 
  251     additionalProperties: false
  252 
  253   key:
  254     description: Node describing the AB8500 power-on key control block.
  255     type: object
  256 
  257     properties:
  258       compatible:
  259         const: stericsson,ab8500-poweron-key
  260 
  261       interrupts:
  262         items:
  263           - description: ON key falling IRQ
  264           - description: ON key rising IRQ
  265 
  266       interrupt-names:
  267         items:
  268           - const: ONKEY_DBF
  269           - const: ONKEY_DBR
  270 
  271     required:
  272       - compatible
  273       - interrupts
  274       - interrupt-names
  275 
  276     additionalProperties: false
  277 
  278   ab8500-sysctrl:
  279     description: Node describing the AB8500 system control block.
  280     type: object
  281 
  282     properties:
  283       compatible:
  284         const: stericsson,ab8500-sysctrl
  285 
  286     required:
  287       - compatible
  288 
  289     additionalProperties: false
  290 
  291   codec:
  292     description: Node describing the AB8500 audio codec block.
  293     type: object
  294 
  295     properties:
  296       compatible:
  297         const: stericsson,ab8500-codec
  298 
  299       V-AUD-supply: true
  300       V-AMIC1-supply: true
  301       V-AMIC2-supply: true
  302       V-DMIC-supply: true
  303 
  304       clocks:
  305         items:
  306           - description: Audio system clock
  307 
  308       clock-names:
  309         items:
  310           - const: audioclk
  311 
  312       stericsson,earpeice-cmv:
  313         description: Earpeice voltage
  314         $ref: /schemas/types.yaml#/definitions/uint32
  315         enum: [ 950, 1100, 1270, 1580 ]
  316 
  317     required:
  318       - compatible
  319 
  320     additionalProperties: false
  321 
  322   regulator:
  323     description: Node describing the AB8500 internal regulators.
  324     type: object
  325 
  326     properties:
  327       compatible:
  328         enum:
  329           - stericsson,ab8500-regulator
  330           - stericsson,ab8505-regulator
  331 
  332       vin-supply:
  333         description: The regulator supplying all of the internal regulators
  334           with power.
  335 
  336       ab8500_ldo_aux1:
  337         description: The voltage for the auxilary LDO regulator 1
  338         type: object
  339         $ref: ../regulator/regulator.yaml#
  340 
  341       ab8500_ldo_aux2:
  342         description: The voltage for the auxilary LDO regulator 2
  343         type: object
  344         $ref: ../regulator/regulator.yaml#
  345 
  346       ab8500_ldo_aux3:
  347         description: The voltage for the auxilary LDO regulator 3
  348         type: object
  349         $ref: ../regulator/regulator.yaml#
  350 
  351       ab8500_ldo_aux4:
  352         description: The voltage for the auxilary LDO regulator 4
  353           only present on AB8505
  354         type: object
  355         $ref: ../regulator/regulator.yaml#
  356 
  357       ab8500_ldo_aux5:
  358         description: The voltage for the auxilary LDO regulator 5
  359           only present on AB8505
  360         type: object
  361         $ref: ../regulator/regulator.yaml#
  362 
  363       ab8500_ldo_aux6:
  364         description: The voltage for the auxilary LDO regulator 6
  365           only present on AB8505
  366         type: object
  367         $ref: ../regulator/regulator.yaml#
  368 
  369       # There is never any AUX7 regulator which is confusing
  370 
  371       ab8500_ldo_aux8:
  372         description: The voltage for the auxilary LDO regulator 8
  373           only present on AB8505
  374         type: object
  375         $ref: ../regulator/regulator.yaml#
  376 
  377       ab8500_ldo_intcore:
  378         description: The LDO regulator for the internal core voltage
  379           of the AB8500
  380         type: object
  381         $ref: ../regulator/regulator.yaml#
  382 
  383       ab8500_ldo_adc:
  384         description: Analog power regulator for the analog to digital converter
  385           ADC, only present on AB8505
  386         type: object
  387         $ref: ../regulator/regulator.yaml#
  388 
  389       ab8500_ldo_tvout:
  390         description: The voltage for the TV output regulator, incidentally
  391           this voltage is also used for other purposes such as measuring
  392           the temperature of the NTC thermistor on the battery.
  393           Only present on AB8500.
  394         type: object
  395         $ref: ../regulator/regulator.yaml#
  396 
  397       ab8500_ldo_audio:
  398         description: The LDO regulator for the audio codec output
  399         type: object
  400         $ref: ../regulator/regulator.yaml#
  401 
  402       ab8500_ldo_anamic1:
  403         description: The LDO regulator for the analog microphone 1
  404         type: object
  405         $ref: ../regulator/regulator.yaml#
  406 
  407       ab8500_ldo_anamic2:
  408         description: The LDO regulator for the analog microphone 2
  409         type: object
  410         $ref: ../regulator/regulator.yaml#
  411 
  412       ab8500_ldo_dmic:
  413         description: The LDO regulator for the digital microphone
  414           only present on AB8500
  415         type: object
  416         $ref: ../regulator/regulator.yaml#
  417 
  418       ab8500_ldo_ana:
  419         description: Analog power regulator for CSI and DSI interfaces,
  420           Camera Serial Interface CSI and Display Serial Interface DSI.
  421         type: object
  422         $ref: ../regulator/regulator.yaml#
  423 
  424     required:
  425       - compatible
  426 
  427     additionalProperties: false
  428 
  429 
  430   regulator-external:
  431     description: Node describing the AB8500 external regulators. This
  432       concerns the autonomous regulators VSMPS1, VSMPS2 and VSMPS3
  433       that are normally controlled by external electronics but also
  434       sometimes need to be explicitly controlled by software.
  435     type: object
  436 
  437     properties:
  438       compatible:
  439         const: stericsson,ab8500-ext-regulator
  440 
  441       ab8500_ext1:
  442         description: The voltage for the VSMPS1 external regulator
  443         type: object
  444         $ref: ../regulator/regulator.yaml#
  445 
  446       ab8500_ext2:
  447         description: The voltage for the VSMPS2 external regulator
  448         type: object
  449         $ref: ../regulator/regulator.yaml#
  450 
  451       ab8500_ext3:
  452         description: The voltage for the VSMPS3 external regulator
  453         type: object
  454         $ref: ../regulator/regulator.yaml#
  455 
  456     required:
  457       - compatible
  458 
  459     additionalProperties: false
  460 
  461 patternProperties:
  462   "^pwm@[1-9]+?$":
  463     type: object
  464     $ref: ../pwm/pwm.yaml#
  465     description: Represents each of the PWM blocks in the AB8500
  466 
  467     properties:
  468       compatible:
  469         const: stericsson,ab8500-pwm
  470 
  471       reg: true
  472 
  473       clocks:
  474         items:
  475           - description: internal clock
  476 
  477       clock-names:
  478         items:
  479           - const: intclk
  480 
  481     required:
  482       - compatible
  483       - reg
  484 
  485 required:
  486   - compatible
  487   - clock-controller
  488   - gpio
  489   - rtc
  490   - adc
  491   - thermal
  492   - ab8500_fg
  493   - ab8500_btemp
  494   - ab8500_charger
  495   - ab8500_chargalg
  496   - phy
  497   - key
  498   - regulator
  499 
  500 additionalProperties: false

Cache object: 956e3376efc88111978480243840cda6


[ 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.