brintos

brintos / linux-shallow public Read only

0
0
Text · 12.9 KiB · b2cfa41 Raw
523 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/mfd/stericsson,ab8500.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: ST-Ericsson Analog Baseband AB8500 and AB85058 9maintainers:10  - Linus Walleij <linus.walleij@linaro.org>11 12description:13  the AB8500 "Analog Baseband" is the mixed-signals integrated circuit14  handling power management (regulators), analog-to-digital conversion15  (ADC), battery charging, fuel gauging of the battery, battery-backed16  RTC, PWM, USB PHY and some GPIO lines in the ST-Ericsson U8500 platforms17  in connection with the DB8500 digital baseband. The DB8500 PRCMU18  communicates directly and autonomously with the AB8500 and thus it19  appears as a subnode of the DB8500 PRCMU. An altered version called20  AB8505 also exist, the difference in AB8505 is that some of the USB and21  USB charging handling has changed, and it has an embedded USB-to-serial22  converter. Most subblocks takes their interrupts directly from the23  AB8500 embedded interrupt controller.24 25properties:26  $nodename:27    pattern: '^ab850[05]$'28 29  compatible:30    enum:31      - stericsson,ab850032      - stericsson,ab850533 34  interrupts:35    maxItems: 136 37  interrupt-controller: true38 39  '#interrupt-cells':40    const: 241 42  # Some subnodes use a reg, some don't. Those that do use a single cell.43  '#address-cells':44    const: 145 46  '#size-cells':47    const: 048 49  clock-controller:50    description: Node describing the AB8500 clock controller. This51      provides the reference clock for the entire U8500 system and52      the DB8500 counterpart.53    type: object54    additionalProperties: false55 56    properties:57      compatible:58        const: stericsson,ab8500-clk59 60      '#clock-cells':61        const: 162 63  gpio:64    description: Node describing the AB8500 GPIO controller. A few65      GPIO pins available for misc usage.66    type: object67    additionalProperties: false68 69    properties:70      compatible:71        enum:72          - stericsson,ab8500-gpio73          - stericsson,ab8505-gpio74 75      gpio-controller: true76 77      '#gpio-cells':78        const: 279 80  rtc:81    description: Node describing the AB8500 battery-backed RTC.82    type: object83    additionalProperties: false84 85    properties:86      compatible:87        const: stericsson,ab8500-rtc88 89      interrupts:90        items:91          - description: 60 second interval alarm interrupt92          - description: RTC alarm93 94      interrupt-names:95        items:96          - const: 60S97          - const: ALARM98 99  adc:100    description: Node describing the AB8500 general purpose analog to digital101      converter, GPADC.102    type: object103 104    properties:105      compatible:106        const: stericsson,ab8500-gpadc107 108      # AB8505 only supports one (software) EOC interrupt109      interrupts:110        minItems: 1111        maxItems: 2112 113      interrupt-names: true114 115      vddadc-supply: true116 117      '#address-cells':118        const: 1119 120      '#size-cells':121        const: 0122 123      '#io-channel-cells':124        const: 1125 126    patternProperties:127      "^channel@[0-9a-f]+$":128        type: object129        $ref: /schemas/iio/adc/adc.yaml#130        description: Represents each of the external channels which are131          connected to the ADC.132 133        properties:134          reg:135            items:136              minimum: 1137              maximum: 31138 139        required:140          - reg141 142        additionalProperties: false143 144    required:145      - compatible146      - interrupts147      - interrupt-names148      - vddadc-supply149      - '#address-cells'150      - '#size-cells'151      - '#io-channel-cells'152 153    additionalProperties: false154 155  thermal:156    description: Node describing the AB8500 thermal control block. All this block157      really does is to fire an interrupt when the die becomes 130 degrees Celsius158      in temperature.159    type: object160 161    properties:162      compatible:163        const: stericsson,abx500-temp164 165      interrupts:166        items:167          - description: Thermal warm warning interrupt168 169      interrupt-names:170        items:171          - const: ABX500_TEMP_WARM172 173    required:174      - compatible175      - interrupts176      - interrupt-names177 178    additionalProperties: false179 180  ab8500_fg:181    description: Node describing the AB8500 fuel gauge control block.182    type: object183    $ref: /schemas/power/supply/stericsson,ab8500-fg.yaml184 185  ab8500_btemp:186    description: Node describing the AB8500 battery temperature control block.187    type: object188    $ref: /schemas/power/supply/stericsson,ab8500-btemp.yaml189 190  ab8500_charger:191    description: Node describing the AB8500 battery charger control block.192    type: object193    $ref: /schemas/power/supply/stericsson,ab8500-charger.yaml194 195  ab8500_chargalg:196    description: Node describing the AB8500 battery charger algorithm.197    type: object198    $ref: /schemas/power/supply/stericsson,ab8500-chargalg.yaml199 200  phy:201    description: Node describing the AB8500 USB PHY control block.202    type: object203 204    properties:205      compatible:206        const: stericsson,ab8500-usb207 208      interrupts:209        items:210          - description: ID wakeup rising IRQ211          - description: ID wakeup falling IRQ212          - description: VBUS detection falling IRQ213          - description: VBUS detection rising IRQ214          - description: USB link status change IRQ215          - description: ADP probe plug IRQ216          - description: ADP probe unplug IRQ217 218      interrupt-names:219        items:220          - const: ID_WAKEUP_R221          - const: ID_WAKEUP_F222          - const: VBUS_DET_F223          - const: VBUS_DET_R224          - const: USB_LINK_STATUS225          - const: USB_ADP_PROBE_PLUG226          - const: USB_ADP_PROBE_UNPLUG227 228      vddulpivio18-supply: true229      v-ape-supply: true230      musb_1v8-supply: true231 232      clocks:233        items:234          - description: PRCMY system clock235 236      clock-names:237        items:238          - const: sysclk239 240      '#phy-cells':241        const: 0242 243    required:244      - compatible245      - interrupts246      - interrupt-names247      - vddulpivio18-supply248      - v-ape-supply249      - musb_1v8-supply250      - clocks251      - clock-names252      - '#phy-cells'253 254    additionalProperties: false255 256  key:257    description: Node describing the AB8500 power-on key control block.258    type: object259 260    properties:261      compatible:262        const: stericsson,ab8500-poweron-key263 264      interrupts:265        items:266          - description: ON key falling IRQ267          - description: ON key rising IRQ268 269      interrupt-names:270        items:271          - const: ONKEY_DBF272          - const: ONKEY_DBR273 274    required:275      - compatible276      - interrupts277      - interrupt-names278 279    additionalProperties: false280 281  ab8500-sysctrl:282    description: Node describing the AB8500 system control block.283    type: object284 285    properties:286      compatible:287        const: stericsson,ab8500-sysctrl288 289    required:290      - compatible291 292    additionalProperties: false293 294  codec:295    description: Node describing the AB8500 audio codec block.296    type: object297 298    properties:299      compatible:300        const: stericsson,ab8500-codec301 302      V-AUD-supply: true303      V-AMIC1-supply: true304      V-AMIC2-supply: true305      V-DMIC-supply: true306 307      clocks:308        items:309          - description: Audio system clock310 311      clock-names:312        items:313          - const: audioclk314 315      stericsson,earpeice-cmv:316        description: Earpiece voltage317        $ref: /schemas/types.yaml#/definitions/uint32318        enum: [ 950, 1100, 1270, 1580 ]319 320    required:321      - compatible322 323    additionalProperties: false324 325  regulator:326    description: Node describing the AB8500 internal regulators.327    type: object328 329    properties:330      compatible:331        enum:332          - stericsson,ab8500-regulator333          - stericsson,ab8505-regulator334 335      vin-supply:336        description: The regulator supplying all of the internal regulators337          with power.338 339      ab8500_ldo_aux1:340        description: The voltage for the auxiliary LDO regulator 1341        type: object342        $ref: /schemas/regulator/regulator.yaml#343        unevaluatedProperties: false344 345      ab8500_ldo_aux2:346        description: The voltage for the auxiliary LDO regulator 2347        type: object348        $ref: /schemas/regulator/regulator.yaml#349        unevaluatedProperties: false350 351      ab8500_ldo_aux3:352        description: The voltage for the auxiliary LDO regulator 3353        type: object354        $ref: /schemas/regulator/regulator.yaml#355        unevaluatedProperties: false356 357      ab8500_ldo_aux4:358        description: The voltage for the auxiliary LDO regulator 4359          only present on AB8505360        type: object361        $ref: /schemas/regulator/regulator.yaml#362        unevaluatedProperties: false363 364      ab8500_ldo_aux5:365        description: The voltage for the auxiliary LDO regulator 5366          only present on AB8505367        type: object368        $ref: /schemas/regulator/regulator.yaml#369        unevaluatedProperties: false370 371      ab8500_ldo_aux6:372        description: The voltage for the auxiliary LDO regulator 6373          only present on AB8505374        type: object375        $ref: /schemas/regulator/regulator.yaml#376        unevaluatedProperties: false377 378      # There is never any AUX7 regulator which is confusing379 380      ab8500_ldo_aux8:381        description: The voltage for the auxiliary LDO regulator 8382          only present on AB8505383        type: object384        $ref: /schemas/regulator/regulator.yaml#385        unevaluatedProperties: false386 387      ab8500_ldo_intcore:388        description: The LDO regulator for the internal core voltage389          of the AB8500390        type: object391        $ref: /schemas/regulator/regulator.yaml#392        unevaluatedProperties: false393 394      ab8500_ldo_adc:395        description: Analog power regulator for the analog to digital converter396          ADC, only present on AB8505397        type: object398        $ref: /schemas/regulator/regulator.yaml#399        unevaluatedProperties: false400 401      ab8500_ldo_tvout:402        description: The voltage for the TV output regulator, incidentally403          this voltage is also used for other purposes such as measuring404          the temperature of the NTC thermistor on the battery.405          Only present on AB8500.406        type: object407        $ref: /schemas/regulator/regulator.yaml#408        unevaluatedProperties: false409 410      ab8500_ldo_audio:411        description: The LDO regulator for the audio codec output412        type: object413        $ref: /schemas/regulator/regulator.yaml#414        unevaluatedProperties: false415 416      ab8500_ldo_anamic1:417        description: The LDO regulator for the analog microphone 1418        type: object419        $ref: /schemas/regulator/regulator.yaml#420        unevaluatedProperties: false421 422      ab8500_ldo_anamic2:423        description: The LDO regulator for the analog microphone 2424        type: object425        $ref: /schemas/regulator/regulator.yaml#426        unevaluatedProperties: false427 428      ab8500_ldo_dmic:429        description: The LDO regulator for the digital microphone430          only present on AB8500431        type: object432        $ref: /schemas/regulator/regulator.yaml#433        unevaluatedProperties: false434 435      ab8500_ldo_ana:436        description: Analog power regulator for CSI and DSI interfaces,437          Camera Serial Interface CSI and Display Serial Interface DSI.438        type: object439        $ref: /schemas/regulator/regulator.yaml#440        unevaluatedProperties: false441 442    required:443      - compatible444 445    additionalProperties: false446 447 448  regulator-external:449    description: Node describing the AB8500 external regulators. This450      concerns the autonomous regulators VSMPS1, VSMPS2 and VSMPS3451      that are normally controlled by external electronics but also452      sometimes need to be explicitly controlled by software.453    type: object454 455    properties:456      compatible:457        const: stericsson,ab8500-ext-regulator458 459      ab8500_ext1:460        description: The voltage for the VSMPS1 external regulator461        type: object462        $ref: /schemas/regulator/regulator.yaml#463        unevaluatedProperties: false464 465      ab8500_ext2:466        description: The voltage for the VSMPS2 external regulator467        type: object468        $ref: /schemas/regulator/regulator.yaml#469        unevaluatedProperties: false470 471      ab8500_ext3:472        description: The voltage for the VSMPS3 external regulator473        type: object474        $ref: /schemas/regulator/regulator.yaml#475        unevaluatedProperties: false476 477    required:478      - compatible479 480    additionalProperties: false481 482patternProperties:483  "^pwm@[1-9]+?$":484    type: object485    $ref: /schemas/pwm/pwm.yaml#486    unevaluatedProperties: false487    description: Represents each of the PWM blocks in the AB8500488 489    properties:490      compatible:491        const: stericsson,ab8500-pwm492 493      reg: true494 495      clocks:496        items:497          - description: internal clock498 499      clock-names:500        items:501          - const: intclk502 503    required:504      - compatible505      - reg506 507required:508  - compatible509  - clock-controller510  - gpio511  - rtc512  - adc513  - thermal514  - ab8500_fg515  - ab8500_btemp516  - ab8500_charger517  - ab8500_chargalg518  - phy519  - key520  - regulator521 522additionalProperties: false523