1*43be4f66SJacky Bai# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*43be4f66SJacky Bai%YAML 1.2 3*43be4f66SJacky Bai--- 4*43be4f66SJacky Bai$id: http://devicetree.org/schemas/mfd/nxp,bbnsm.yaml# 5*43be4f66SJacky Bai$schema: http://devicetree.org/meta-schemas/core.yaml# 6*43be4f66SJacky Bai 7*43be4f66SJacky Baititle: NXP Battery-Backed Non-Secure Module 8*43be4f66SJacky Bai 9*43be4f66SJacky Baimaintainers: 10*43be4f66SJacky Bai - Jacky Bai <ping.bai@nxp.com> 11*43be4f66SJacky Bai 12*43be4f66SJacky Baidescription: | 13*43be4f66SJacky Bai NXP BBNSM serves as non-volatile logic and storage for the system. 14*43be4f66SJacky Bai it Intergrates RTC & ON/OFF control. 15*43be4f66SJacky Bai The RTC can retain its state and continues counting even when the 16*43be4f66SJacky Bai main chip is power down. A time alarm is generated once the most 17*43be4f66SJacky Bai significant 32 bits of the real-time counter match the value in the 18*43be4f66SJacky Bai Time Alarm register. 19*43be4f66SJacky Bai The ON/OFF logic inside the BBNSM allows for connecting directly to 20*43be4f66SJacky Bai a PMIC or other voltage regulator device. both smart PMIC mode and 21*43be4f66SJacky Bai Dumb PMIC mode supported. 22*43be4f66SJacky Bai 23*43be4f66SJacky Baiproperties: 24*43be4f66SJacky Bai compatible: 25*43be4f66SJacky Bai items: 26*43be4f66SJacky Bai - enum: 27*43be4f66SJacky Bai - nxp,imx93-bbnsm 28*43be4f66SJacky Bai - const: syscon 29*43be4f66SJacky Bai - const: simple-mfd 30*43be4f66SJacky Bai 31*43be4f66SJacky Bai reg: 32*43be4f66SJacky Bai maxItems: 1 33*43be4f66SJacky Bai 34*43be4f66SJacky Bai rtc: 35*43be4f66SJacky Bai type: object 36*43be4f66SJacky Bai $ref: /schemas/rtc/rtc.yaml# 37*43be4f66SJacky Bai 38*43be4f66SJacky Bai properties: 39*43be4f66SJacky Bai compatible: 40*43be4f66SJacky Bai enum: 41*43be4f66SJacky Bai - nxp,imx93-bbnsm-rtc 42*43be4f66SJacky Bai 43*43be4f66SJacky Bai interrupts: 44*43be4f66SJacky Bai maxItems: 1 45*43be4f66SJacky Bai 46*43be4f66SJacky Bai start-year: true 47*43be4f66SJacky Bai 48*43be4f66SJacky Bai required: 49*43be4f66SJacky Bai - compatible 50*43be4f66SJacky Bai - interrupts 51*43be4f66SJacky Bai 52*43be4f66SJacky Bai additionalProperties: false 53*43be4f66SJacky Bai 54*43be4f66SJacky Bai pwrkey: 55*43be4f66SJacky Bai type: object 56*43be4f66SJacky Bai $ref: /schemas/input/input.yaml# 57*43be4f66SJacky Bai 58*43be4f66SJacky Bai properties: 59*43be4f66SJacky Bai compatible: 60*43be4f66SJacky Bai enum: 61*43be4f66SJacky Bai - nxp,imx93-bbnsm-pwrkey 62*43be4f66SJacky Bai 63*43be4f66SJacky Bai interrupts: 64*43be4f66SJacky Bai maxItems: 1 65*43be4f66SJacky Bai 66*43be4f66SJacky Bai linux,code: true 67*43be4f66SJacky Bai 68*43be4f66SJacky Bai required: 69*43be4f66SJacky Bai - compatible 70*43be4f66SJacky Bai - interrupts 71*43be4f66SJacky Bai 72*43be4f66SJacky Bai additionalProperties: false 73*43be4f66SJacky Bai 74*43be4f66SJacky Bairequired: 75*43be4f66SJacky Bai - compatible 76*43be4f66SJacky Bai - reg 77*43be4f66SJacky Bai - rtc 78*43be4f66SJacky Bai - pwrkey 79*43be4f66SJacky Bai 80*43be4f66SJacky BaiadditionalProperties: false 81*43be4f66SJacky Bai 82*43be4f66SJacky Baiexamples: 83*43be4f66SJacky Bai - | 84*43be4f66SJacky Bai #include <dt-bindings/input/linux-event-codes.h> 85*43be4f66SJacky Bai #include <dt-bindings/interrupt-controller/arm-gic.h> 86*43be4f66SJacky Bai 87*43be4f66SJacky Bai bbnsm: bbnsm@44440000 { 88*43be4f66SJacky Bai compatible = "nxp,imx93-bbnsm", "syscon", "simple-mfd"; 89*43be4f66SJacky Bai reg = <0x44440000 0x10000>; 90*43be4f66SJacky Bai 91*43be4f66SJacky Bai bbnsm_rtc: rtc { 92*43be4f66SJacky Bai compatible = "nxp,imx93-bbnsm-rtc"; 93*43be4f66SJacky Bai interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 94*43be4f66SJacky Bai }; 95*43be4f66SJacky Bai 96*43be4f66SJacky Bai bbnsm_pwrkey: pwrkey { 97*43be4f66SJacky Bai compatible = "nxp,imx93-bbnsm-pwrkey"; 98*43be4f66SJacky Bai interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 99*43be4f66SJacky Bai linux,code = <KEY_POWER>; 100*43be4f66SJacky Bai }; 101*43be4f66SJacky Bai }; 102