blob: 0ff10a46bc24d3a1e232506b339ecf6e55bc0a40 [file] [log] [blame]
Qualcomm QPNP BSI - battery serial interface devices
qpnp-bsi is a BIF driver which supports the BSI peripheral inside of PMICs
that utilize the MSM SPMI implementation.
Required properties:
- compatible: Must be "qcom,qpnp-bsi".
- reg: Specifies the SPMI address and size for this BSI device as
well as the address of the BATT_ID status register.
- reg-names: A list of strings identifying the reg property entries. The
list must contain both "bsi-base" and "batt-id-status".
- label: A string used as a descriptive name for this BIF controller.
- interrupts: Specifies a list of four interrupts corresponding to
IRQ ERR, IRQ RX, IRQ TX, and IRQ BATT_PRESENT in any order.
- interrupt-names: Must be a list of strings containing all three of these
strings: "err", "rx", "tx", "batt-present". The ordering of
these strings must match the ordering of the interrupts in
the "interrupts" property.
Required structure:
- A qcom,qpnp-bsi node must be a child of an SPMI node that has specified the
spmi-slave-container property.
Optional properties:
- qcom,min-clock-period: This property specifies a minimum clock period for the
Tau BIF reference in nanoseconds. It can be used to
impose a minimum period which is higher (i.e. more
restrictive) than that supported by the hardware.
The BSI module supports 8 possible periods between
2080 ns and 150420 ns.
- qcom,max-clock-period: This property specifies a maximum clock period for the
Tau BIF reference in nanoseconds. It can be used to
impose a maximum period which is lower (i.e. more
restrictive) than that supported by the hardware.
The BSI module supports 8 possible periods between
2080 ns and 150420 ns.
- qcom,sample-rate: Specifies the rate at which the BIF BCL should be
sampled during communication with respect to the Tau
BIF reference rate. Supported values are 4 and 8
which represent 4x and 8x sampling rates
respectively. If this property is not specified,
then 4x sampling is assumed.
- qcom,channel-num: VADC channel number associated PMIC BATT_ID pin. If
no channel is specified, then it will not be
possible to measure the slave Rid.
- qcom,pullup-ohms: Host side pull-up resistance present on BCL in ohms.
If no value is specified, then 100000 ohms is
assumed.
- qcom,vref-microvolts: Reference voltage used for BCL divider circuit in
microvolts. If no value is specified, then
1800000 uV is assumed.
- qcom,bsi-vadc: Corresponding VADC device phandle.
All properties specified within for the BIF framework can also be used. These
properties can be found in bif.txt.
Example:
qcom,spmi@fc4c0000 {
#address-cells = <1>;
#size-cells = <0>;
interrupt-controller;
#interrupt-cells = <3>;
qcom,pm8941@1 {
spmi-slave-container;
reg = <0x1>;
#address-cells = <1>;
#size-cells = <1>;
qcom,bsi@1b00 {
compatible = "qcom,qpnp-bsi";
reg = <0x1b00 0x100>,
<0x1208 0x1>;
reg-names = "bsi-base", "batt-id-status";
label = "pm8941-bsi";
interrupts = <0x0 0x1b 0x0>,
<0x0 0x1b 0x1>,
<0x0 0x1b 0x2>,
<0x0 0x12 0x0>;
interrupt-names = "err",
"rx",
"tx",
"batt-present";
qcom,sample-rate = <8>;
qcom,min-clock-period = <15830>;
qcom,max-clock-period = <122080>;
qcom,channel-num = <0x31>;
qcom,pullup-ohms = <100000>;
qcom,vref-microvolts = <1800000>;
qcom,bsi-vadc = <&pm8941_vadc>;
};
};
};