Lee Jones | ad95ad1 | 2012-07-13 12:42:26 +0200 | [diff] [blame] | 1 | * AB8500 Multi-Functional Device (MFD) |
| 2 | |
| 3 | Required parent device properties: |
| 4 | - compatible : contains "stericsson,ab8500"; |
| 5 | - interrupts : contains the IRQ line for the AB8500 |
| 6 | - interrupt-controller : describes the AB8500 as an Interrupt Controller (has its own domain) |
| 7 | - #interrupt-cells : should be 2, for 2-cell format |
| 8 | - The first cell is the AB8500 local IRQ number |
| 9 | - The second cell is used to specify optional parameters |
| 10 | - bits[3:0] trigger type and level flags: |
| 11 | 1 = low-to-high edge triggered |
| 12 | 2 = high-to-low edge triggered |
| 13 | 4 = active high level-sensitive |
| 14 | 8 = active low level-sensitive |
| 15 | |
| 16 | Optional parent device properties: |
| 17 | - reg : contains the PRCMU mailbox address for the AB8500 i2c port |
| 18 | |
| 19 | The AB8500 consists of a large and varied group of sub-devices: |
| 20 | |
| 21 | Device IRQ Names Supply Names Description |
| 22 | ------ --------- ------------ ----------- |
| 23 | ab8500-bm : : : Battery Manager |
| 24 | ab8500-btemp : : : Battery Temperature |
| 25 | ab8500-charger : : : Battery Charger |
| 26 | ab8500-fg : : : Fuel Gauge |
| 27 | ab8500-gpadc : HW_CONV_END : vddadc : Analogue to Digital Converter |
| 28 | SW_CONV_END : : |
| 29 | ab8500-gpio : : : GPIO Controller |
| 30 | ab8500-ponkey : ONKEY_DBF : : Power-on Key |
| 31 | ONKEY_DBR : : |
| 32 | ab8500-pwm : : : Pulse Width Modulator |
| 33 | ab8500-regulator : : : Regulators |
| 34 | ab8500-rtc : 60S : : Real Time Clock |
| 35 | : ALARM : : |
| 36 | ab8500-sysctrl : : : System Control |
| 37 | ab8500-usb : ID_WAKEUP_R : vddulpivio18 : Universal Serial Bus |
| 38 | : ID_WAKEUP_F : v-ape : |
| 39 | : VBUS_DET_F : musb_1v8 : |
| 40 | : VBUS_DET_R : : |
| 41 | : USB_LINK_STATUS : : |
| 42 | : USB_ADP_PROBE_PLUG : : |
| 43 | : USB_ADP_PROBE_UNPLUG : : |
| 44 | |
| 45 | Required child device properties: |
| 46 | - compatible : "stericsson,ab8500-[bm|btemp|charger|fg|gpadc|gpio|ponkey| |
| 47 | pwm|regulator|rtc|sysctrl|usb]"; |
| 48 | |
| 49 | Optional child device properties: |
| 50 | - interrupts : contains the device IRQ(s) using the 2-cell format (see above) |
| 51 | - interrupt-names : contains names of IRQ resource in the order in which they were |
| 52 | supplied in the interrupts property |
| 53 | - <supply_name>-supply : contains a phandle to the regulator supply node in Device Tree |
| 54 | |
| 55 | ab8500@5 { |
| 56 | compatible = "stericsson,ab8500"; |
| 57 | reg = <5>; /* mailbox 5 is i2c */ |
| 58 | interrupts = <0 40 0x4>; |
| 59 | interrupt-controller; |
| 60 | #interrupt-cells = <2>; |
| 61 | |
| 62 | ab8500-rtc { |
| 63 | compatible = "stericsson,ab8500-rtc"; |
| 64 | interrupts = <17 0x4 |
| 65 | 18 0x4>; |
| 66 | interrupt-names = "60S", "ALARM"; |
| 67 | }; |
| 68 | |
| 69 | ab8500-gpadc { |
| 70 | compatible = "stericsson,ab8500-gpadc"; |
| 71 | interrupts = <32 0x4 |
| 72 | 39 0x4>; |
| 73 | interrupt-names = "HW_CONV_END", "SW_CONV_END"; |
| 74 | vddadc-supply = <&ab8500_ldo_tvout_reg>; |
| 75 | }; |
| 76 | |
| 77 | ab8500-usb { |
| 78 | compatible = "stericsson,ab8500-usb"; |
| 79 | interrupts = < 90 0x4 |
| 80 | 96 0x4 |
| 81 | 14 0x4 |
| 82 | 15 0x4 |
| 83 | 79 0x4 |
| 84 | 74 0x4 |
| 85 | 75 0x4>; |
| 86 | interrupt-names = "ID_WAKEUP_R", |
| 87 | "ID_WAKEUP_F", |
| 88 | "VBUS_DET_F", |
| 89 | "VBUS_DET_R", |
| 90 | "USB_LINK_STATUS", |
| 91 | "USB_ADP_PROBE_PLUG", |
| 92 | "USB_ADP_PROBE_UNPLUG"; |
| 93 | vddulpivio18-supply = <&ab8500_ldo_initcore_reg>; |
| 94 | v-ape-supply = <&db8500_vape_reg>; |
| 95 | musb_1v8-supply = <&db8500_vsmps2_reg>; |
| 96 | }; |
| 97 | |
| 98 | ab8500-ponkey { |
| 99 | compatible = "stericsson,ab8500-ponkey"; |
| 100 | interrupts = <6 0x4 |
| 101 | 7 0x4>; |
| 102 | interrupt-names = "ONKEY_DBF", "ONKEY_DBR"; |
| 103 | }; |
| 104 | |
| 105 | ab8500-sysctrl { |
| 106 | compatible = "stericsson,ab8500-sysctrl"; |
| 107 | }; |
| 108 | |
| 109 | ab8500-pwm { |
| 110 | compatible = "stericsson,ab8500-pwm"; |
| 111 | }; |
| 112 | |
| 113 | ab8500-regulators { |
| 114 | compatible = "stericsson,ab8500-regulator"; |
| 115 | |
| 116 | ab8500_ldo_aux1_reg: ab8500_ldo_aux1 { |
| 117 | /* |
| 118 | * See: Documentation/devicetree/bindings/regulator/regulator.txt |
| 119 | * for more information on regulators |
| 120 | */ |
| 121 | }; |
| 122 | }; |
| 123 | }; |