1// SPDX-License-Identifier: BSD-3-Clause 2/* 3 * Copyright (c) 2021, Linaro Limited 4 */ 5 6#include <dt-bindings/input/input.h> 7#include <dt-bindings/input/linux-event-codes.h> 8#include <dt-bindings/interrupt-controller/irq.h> 9#include <dt-bindings/spmi/spmi.h> 10 11/* (Sadly) this PMIC can be configured to be at different SIDs */ 12#ifndef PMK8350_SID 13 #define PMK8350_SID 0 14#endif 15 16/ { 17 reboot-mode { 18 compatible = "nvmem-reboot-mode"; 19 nvmem-cells = <&reboot_reason>; 20 nvmem-cell-names = "reboot-mode"; 21 mode-recovery = <0x01>; 22 mode-bootloader = <0x02>; 23 }; 24}; 25 26&spmi_bus { 27 pmk8350: pmic@PMK8350_SID { 28 compatible = "qcom,pmk8350", "qcom,spmi-pmic"; 29 reg = <PMK8350_SID SPMI_USID>; 30 #address-cells = <1>; 31 #size-cells = <0>; 32 33 pmk8350_pon: pon@1300 { 34 compatible = "qcom,pmk8350-pon"; 35 reg = <0x1300>, <0x800>; 36 reg-names = "hlos", "pbs"; 37 38 pon_pwrkey: pwrkey { 39 compatible = "qcom,pmk8350-pwrkey"; 40 interrupts = <PMK8350_SID 0x13 0x7 IRQ_TYPE_EDGE_BOTH>; 41 linux,code = <KEY_POWER>; 42 status = "disabled"; 43 }; 44 45 pon_resin: resin { 46 compatible = "qcom,pmk8350-resin"; 47 interrupts = <PMK8350_SID 0x13 0x6 IRQ_TYPE_EDGE_BOTH>; 48 status = "disabled"; 49 }; 50 }; 51 52 pmk8350_vadc: adc@3100 { 53 compatible = "qcom,spmi-adc7"; 54 reg = <0x3100>; 55 #address-cells = <1>; 56 #size-cells = <0>; 57 interrupts = <PMK8350_SID 0x31 0x0 IRQ_TYPE_EDGE_RISING>; 58 #io-channel-cells = <1>; 59 }; 60 61 pmk8350_adc_tm: adc-tm@3400 { 62 compatible = "qcom,adc-tm7"; 63 reg = <0x3400>; 64 interrupts = <PMK8350_SID 0x34 0x0 IRQ_TYPE_EDGE_RISING>; 65 #address-cells = <1>; 66 #size-cells = <0>; 67 #thermal-sensor-cells = <1>; 68 status = "disabled"; 69 }; 70 71 pmk8350_rtc: rtc@6100 { 72 compatible = "qcom,pmk8350-rtc"; 73 reg = <0x6100>, <0x6200>; 74 reg-names = "rtc", "alarm"; 75 interrupts = <PMK8350_SID 0x62 0x1 IRQ_TYPE_EDGE_RISING>; 76 status = "disabled"; 77 }; 78 79 pmk8350_sdam_2: nvram@7100 { 80 compatible = "qcom,spmi-sdam"; 81 reg = <0x7100>; 82 #address-cells = <1>; 83 #size-cells = <1>; 84 ranges = <0 0x7100 0x100>; 85 86 reboot_reason: reboot-reason@48 { 87 reg = <0x48 0x1>; 88 bits = <1 7>; 89 }; 90 }; 91 92 pmk8350_gpios: gpio@b000 { 93 compatible = "qcom,pmk8350-gpio", "qcom,spmi-gpio"; 94 reg = <0xb000>; 95 gpio-controller; 96 gpio-ranges = <&pmk8350_gpios 0 0 4>; 97 #gpio-cells = <2>; 98 interrupt-controller; 99 #interrupt-cells = <2>; 100 }; 101 }; 102}; 103