// SPDX-License-Identifier: GPL-2.0
#include <dt-bindings/iio/qcom,spmi-vadc.h>
#include <dt-bindings/input/linux-event-codes.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/spmi/spmi.h>

&spmi_bus {

	pm8916_0: pmic@0 {
		compatible = "qcom,pm8916", "qcom,spmi-pmic";
		reg = <0x0 SPMI_USID>;
		#address-cells = <1>;
		#size-cells = <0>;

		pon@800 {
			compatible = "qcom,pm8916-pon";
			reg = <0x800>;
			mode-bootloader = <0x2>;
			mode-recovery = <0x1>;

			pwrkey {
				compatible = "qcom,pm8941-pwrkey";
				interrupts = <0x0 0x8 0 IRQ_TYPE_EDGE_BOTH>;
				debounce = <15625>;
				bias-pull-up;
				linux,code = <KEY_POWER>;
			};

			pm8916_resin: resin {
				compatible = "qcom,pm8941-resin";
				interrupts = <0x0 0x8 1 IRQ_TYPE_EDGE_BOTH>;
				debounce = <15625>;
				bias-pull-up;
				status = "disabled";
			};

			watchdog {
				compatible = "qcom,pm8916-wdt";
				interrupts = <0x0 0x8 6 IRQ_TYPE_EDGE_RISING>;
				timeout-sec = <60>;
			};
		};

		pm8916_usbin: extcon@1300 {
			compatible = "qcom,pm8941-misc";
			reg = <0x1300>;
			interrupts = <0x0 0x13 1 IRQ_TYPE_EDGE_BOTH>;
			interrupt-names = "usb_vbus";
			status = "disabled";
		};

		pm8916_temp: temp-alarm@2400 {
			compatible = "qcom,spmi-temp-alarm";
			reg = <0x2400>;
			interrupts = <0 0x24 0 IRQ_TYPE_EDGE_RISING>;
			io-channels = <&pm8916_vadc VADC_DIE_TEMP>;
			io-channel-names = "thermal";
			#thermal-sensor-cells = <0>;
		};

		pm8916_vadc: adc@3100 {
			compatible = "qcom,spmi-vadc";
			reg = <0x3100>;
			interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
			#address-cells = <1>;
			#size-cells = <0>;
			#io-channel-cells = <1>;

			adc-chan@0 {
				reg = <VADC_USBIN>;
				qcom,pre-scaling = <1 10>;
			};
			adc-chan@7 {
				reg = <VADC_VSYS>;
				qcom,pre-scaling = <1 3>;
			};
			adc-chan@8 {
				reg = <VADC_DIE_TEMP>;
			};
			adc-chan@9 {
				reg = <VADC_REF_625MV>;
			};
			adc-chan@a {
				reg = <VADC_REF_1250MV>;
			};
			adc-chan@e {
				reg = <VADC_GND_REF>;
			};
			adc-chan@f {
				reg = <VADC_VDD_VADC>;
			};
		};

		rtc@6000 {
			compatible = "qcom,pm8941-rtc";
			reg = <0x6000>;
			interrupts = <0x0 0x61 0x1 IRQ_TYPE_EDGE_RISING>;
		};

		pm8916_mpps: mpps@a000 {
			compatible = "qcom,pm8916-mpp", "qcom,spmi-mpp";
			reg = <0xa000>;
			gpio-controller;
			#gpio-cells = <2>;
			gpio-ranges = <&pm8916_mpps 0 0 4>;
			interrupt-controller;
			#interrupt-cells = <2>;
		};

		pm8916_gpios: gpio@c000 {
			compatible = "qcom,pm8916-gpio", "qcom,spmi-gpio";
			reg = <0xc000>;
			gpio-controller;
			gpio-ranges = <&pm8916_gpios 0 0 4>;
			#gpio-cells = <2>;
			interrupt-controller;
			#interrupt-cells = <2>;
		};
	};

	pm8916_1: pmic@1 {
		compatible = "qcom,pm8916", "qcom,spmi-pmic";
		reg = <0x1 SPMI_USID>;
		#address-cells = <1>;
		#size-cells = <0>;

		pm8916_pwm: pwm {
			compatible = "qcom,pm8916-pwm";

			#pwm-cells = <2>;

			status = "disabled";
		};

		pm8916_vib: vibrator@c000 {
			compatible = "qcom,pm8916-vib";
			reg = <0xc000>;
			status = "disabled";
		};

		wcd_codec: audio-codec@f000 {
			compatible = "qcom,pm8916-wcd-analog-codec";
			reg = <0xf000>;
			reg-names = "pmic-codec-core";
			clocks = <&gcc GCC_CODEC_DIGCODEC_CLK>;
			clock-names = "mclk";
			interrupt-parent = <&spmi_bus>;
			interrupts = <0x1 0xf0 0x0 IRQ_TYPE_NONE>,
				     <0x1 0xf0 0x1 IRQ_TYPE_NONE>,
				     <0x1 0xf0 0x2 IRQ_TYPE_NONE>,
				     <0x1 0xf0 0x3 IRQ_TYPE_NONE>,
				     <0x1 0xf0 0x4 IRQ_TYPE_NONE>,
				     <0x1 0xf0 0x5 IRQ_TYPE_NONE>,
				     <0x1 0xf0 0x6 IRQ_TYPE_NONE>,
				     <0x1 0xf0 0x7 IRQ_TYPE_NONE>,
				     <0x1 0xf1 0x0 IRQ_TYPE_NONE>,
				     <0x1 0xf1 0x1 IRQ_TYPE_NONE>,
				     <0x1 0xf1 0x2 IRQ_TYPE_NONE>,
				     <0x1 0xf1 0x3 IRQ_TYPE_NONE>,
				     <0x1 0xf1 0x4 IRQ_TYPE_NONE>,
				     <0x1 0xf1 0x5 IRQ_TYPE_NONE>;
			interrupt-names = "cdc_spk_cnp_int",
					  "cdc_spk_clip_int",
					  "cdc_spk_ocp_int",
					  "mbhc_ins_rem_det1",
					  "mbhc_but_rel_det",
					  "mbhc_but_press_det",
					  "mbhc_ins_rem_det",
					  "mbhc_switch_int",
					  "cdc_ear_ocp_int",
					  "cdc_hphr_ocp_int",
					  "cdc_hphl_ocp_det",
					  "cdc_ear_cnp_int",
					  "cdc_hphr_cnp_int",
					  "cdc_hphl_cnp_int";
			vdd-cdc-io-supply = <&pm8916_l5>;
			vdd-cdc-tx-rx-cx-supply = <&pm8916_l5>;
			vdd-micbias-supply = <&pm8916_l13>;
			#sound-dai-cells = <1>;
		};
	};
};
