xref: /freebsd/sys/contrib/device-tree/Bindings/mfd/da9150.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel VadotDialog Semiconductor DA9150 Combined Charger/Fuel-Gauge MFD bindings
2*c66ec88fSEmmanuel Vadot
3*c66ec88fSEmmanuel VadotDA9150 consists of a group of sub-devices:
4*c66ec88fSEmmanuel Vadot
5*c66ec88fSEmmanuel VadotDevice			 Description
6*c66ec88fSEmmanuel Vadot------			 -----------
7*c66ec88fSEmmanuel Vadotda9150-gpadc		: General Purpose ADC
8*c66ec88fSEmmanuel Vadotda9150-charger		: Battery Charger
9*c66ec88fSEmmanuel Vadotda9150-fg		: Battery Fuel-Gauge
10*c66ec88fSEmmanuel Vadot
11*c66ec88fSEmmanuel Vadot======
12*c66ec88fSEmmanuel Vadot
13*c66ec88fSEmmanuel VadotRequired properties:
14*c66ec88fSEmmanuel Vadot- compatible : Should be "dlg,da9150"
15*c66ec88fSEmmanuel Vadot- reg: Specifies the I2C slave address
16*c66ec88fSEmmanuel Vadot- interrupts: IRQ line info for da9150 chip.
17*c66ec88fSEmmanuel Vadot- interrupt-controller: da9150 has internal IRQs (own IRQ domain).
18*c66ec88fSEmmanuel Vadot  (See ../interrupt-controller/interrupts.txt for
19*c66ec88fSEmmanuel Vadot   further information relating to interrupt properties)
20*c66ec88fSEmmanuel Vadot
21*c66ec88fSEmmanuel VadotSub-devices:
22*c66ec88fSEmmanuel Vadot- da9150-gpadc: See ../iio/adc/da9150-gpadc.txt
23*c66ec88fSEmmanuel Vadot- da9150-charger: See ../power/da9150-charger.txt
24*c66ec88fSEmmanuel Vadot- da9150-fg: See ../power/da9150-fg.txt
25*c66ec88fSEmmanuel Vadot
26*c66ec88fSEmmanuel VadotExample:
27*c66ec88fSEmmanuel Vadot
28*c66ec88fSEmmanuel Vadot	charger_fg: da9150@58 {
29*c66ec88fSEmmanuel Vadot		compatible = "dlg,da9150";
30*c66ec88fSEmmanuel Vadot		reg = <0x58>;
31*c66ec88fSEmmanuel Vadot		interrupt-parent = <&gpio6>;
32*c66ec88fSEmmanuel Vadot		interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
33*c66ec88fSEmmanuel Vadot		interrupt-controller;
34*c66ec88fSEmmanuel Vadot
35*c66ec88fSEmmanuel Vadot		gpadc: da9150-gpadc {
36*c66ec88fSEmmanuel Vadot			compatible = "dlg,da9150-gpadc";
37*c66ec88fSEmmanuel Vadot			#io-channel-cells = <1>;
38*c66ec88fSEmmanuel Vadot		};
39*c66ec88fSEmmanuel Vadot
40*c66ec88fSEmmanuel Vadot		charger {
41*c66ec88fSEmmanuel Vadot			compatible = "dlg,da9150-charger";
42*c66ec88fSEmmanuel Vadot
43*c66ec88fSEmmanuel Vadot			io-channels = <&gpadc 0>,
44*c66ec88fSEmmanuel Vadot				      <&gpadc 2>,
45*c66ec88fSEmmanuel Vadot				      <&gpadc 8>,
46*c66ec88fSEmmanuel Vadot				      <&gpadc 5>;
47*c66ec88fSEmmanuel Vadot			io-channel-names = "CHAN_IBUS",
48*c66ec88fSEmmanuel Vadot					   "CHAN_VBUS",
49*c66ec88fSEmmanuel Vadot					   "CHAN_TJUNC",
50*c66ec88fSEmmanuel Vadot					   "CHAN_VBAT";
51*c66ec88fSEmmanuel Vadot		};
52*c66ec88fSEmmanuel Vadot
53*c66ec88fSEmmanuel Vadot		fuel-gauge {
54*c66ec88fSEmmanuel Vadot			compatible = "dlg,da9150-fuel-gauge";
55*c66ec88fSEmmanuel Vadot
56*c66ec88fSEmmanuel Vadot			dlg,update-interval = <10000>;
57*c66ec88fSEmmanuel Vadot			dlg,warn-soc-level = /bits/ 8 <15>;
58*c66ec88fSEmmanuel Vadot			dlg,crit-soc-level = /bits/ 8 <5>
59*c66ec88fSEmmanuel Vadot		};
60*c66ec88fSEmmanuel Vadot	};
61