Thread (1 message) 1 message, 1 author, 2016-06-10

[linux-sunxi] PATH[1/3] ARM: axp20x_usb_power.c add device tree configuration options for REG 30H: VBUS-IPSOUT

From: Hans de Goede <hidden>
Date: 2016-06-10 09:56:36
Also in: linux-devicetree, lkml

Hi,

On 17-05-16 19:41, Ene Alexandru wrote:
quoted hunk
The AXP20X chips have a configuration register "REG 30H: VBUS-IPSOUT Power Path Management" that provide USB power supply protection.
The current axp20x_usb_power.c provides support only for reading those values.

From the datasheet:
In order not to affect the USB communication, VBUS is always working under Voltage-Limit mode by default. In this mode, AXP209 ensures that VBUS voltage remains above a configurable reference voltage VHOLD which can meet the USB specification. The default VHOLD is 4.4V, adjustable in Reg30H [5:3] register. If the system has limit on current obtained from USB VBUS, a current-limit mode is provided (See REG30H[1] register), with 900mA/500mA/100mA (Reg30H [0]) selectable.

The following entries are added in the axp209.dtsi file: vhold-enable, vhold-set and ibus-limit
The chosen default values are the AXP20X reset values, as described in the data sheet.

Signed-off-by: Ene Alexandru <redacted>


---
diff -uprN -X linux-sunxi-original/Documentation/dontdiff linux-sunxi-original/arch/arm/boot/dts/axp209.dtsi linux-sunxi/arch/arm/boot/dts/axp209.dtsi
--- linux-sunxi-original/arch/arm/boot/dts/axp209.dtsi         2016-05-11 09:21:47.470923679 +0200
+++ linux-sunxi/arch/arm/boot/dts/axp209.dtsi     2016-05-10 18:45:32.795158651 +0200
@@ -98,5 +98,8 @@
           usb_power_supply: usb_power_supply {
                       compatible = "x-powers,axp202-usb-power-supply";
                       status = "disabled";
+                      vhold-enable = <0x01>;
+                      vhold-set = <0x04>;
+                      ibus-limit = <0x01>;
           };
};
Please do not use raw register values like this, instead make the device-tree property take
microvolts / microamps like e.g. the regulator bindings do, and translate these in the
driver.

Regards,

Hans
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help