* ROHM BD71837 and BD71847 Power Management Integrated Circuit bindings

BD71837MWV and BD71847MWV are programmable Power Management ICs for powering
single-core, dual-core, and quad-core SoCs such as NXP-i.MX 8M. They are
optimized for low BOM cost and compact solution footprint. BD71837MWV
integrates 8 Buck regulators and 7 LDOs. BD71847MWV contains 6 Buck regulators
and 6 LDOs.

Datasheet for BD71837 is available at:
https://www.rohm.com/datasheet/BD71837MWV/bd71837mwv-e
Datasheet for BD71847 is available at:
https://www.rohm.com/datasheet/BD71847AMWV/bd71847amwv-e

Required properties:
 - compatible		: Should be "rohm,bd71837" for bd71837
				    "rohm,bd71847" for bd71847.
 - reg			: I2C slave address.
 - interrupt-parent	: Phandle to the parent interrupt controller.
 - interrupts		: The interrupt line the device is connected to.
 - clocks		: The parent clock connected to PMIC. If this is missing
			  32768 KHz clock is assumed.
 - #clock-cells		: Should be 0.
 - regulators:		: List of child nodes that specify the regulators.
			  Please see ../regulator/rohm,bd71837-regulator.txt

Optional properties:
- clock-output-names	: Should contain name for output clock.
- rohm,reset-snvs-powered : Transfer BD718x7 to SNVS state at reset.

The BD718x7 supports two different HW states as reset target states. States
are called as SNVS and READY. At READY state all the PMIC power outputs go
down and OTP is reload. At the SNVS state all other logic and external
devices apart from the SNVS power domain are shut off. Please refer to NXP
i.MX8 documentation for further information regarding SNVS state. When a
reset is done via SNVS state the PMIC OTP data is not reload. This causes
power outputs that have been under SW control to stay down when reset has
switched power state to SNVS. If reset is done via READY state the power
outputs will be returned to HW control by OTP loading. Thus the reset
target state is set to READY by default. If SNVS state is used the boot
crucial regulators must have the regulator-always-on and regulator-boot-on
properties set in regulator node.

- rohm,short-press-ms	: Short press duration in milliseconds
- rohm,long-press-ms	: Long press duration in milliseconds

Configure the "short press" and "long press" timers for the power button.
Values are rounded to what hardware supports (500ms multiple for short and
1000ms multiple for long). If these properties are not present the existing
configuration (from bootloader or OTP) is not touched.

Example:

	/* external oscillator node */
	osc: oscillator {
		compatible = "fixed-clock";
		#clock-cells = <1>;
		clock-frequency  = <32768>;
		clock-output-names = "osc";
	};

	pmic: pmic@4b {
		compatible = "rohm,bd71837";
		reg = <0x4b>;
		interrupt-parent = <&gpio1>;
		interrupts = <29 GPIO_ACTIVE_LOW>;
		interrupt-names = "irq";
		#clock-cells = <0>;
		clocks = <&osc 0>;
		clock-output-names = "bd71837-32k-out";
		rohm,reset-snvs-powered;

		regulators {
			buck1: BUCK1 {
				regulator-name = "buck1";
				regulator-min-microvolt = <700000>;
				regulator-max-microvolt = <1300000>;
				regulator-boot-on;
				regulator-always-on;
				regulator-ramp-delay = <1250>;
			};
			// [...]
		};
	};

	/* Clock consumer node */
	rtc@0 {
		compatible = "company,my-rtc";
		clock-names = "my-clock";
		clocks = <&pmic>;
	};
