diff --git a/qcom/khaje-idp-pm7250b.dtsi b/qcom/khaje-idp-pm7250b.dtsi index 3a6abb86..d4db43ef 100644 --- a/qcom/khaje-idp-pm7250b.dtsi +++ b/qcom/khaje-idp-pm7250b.dtsi @@ -1,6 +1,7 @@ #include "khaje-pm7250b.dtsi" #include "khaje-thermal-pm7250b-overlay.dtsi" #include +#include &soc { mtp_batterydata: qcom,battery-data { @@ -39,6 +40,7 @@ &pm7250b_charger { status = "ok"; + #io-channel-cells = <1>; io-channels = <&pm7250b_vadc ADC5_USB_IN_V_16>, <&pm7250b_vadc ADC5_USB_IN_I>, <&pm7250b_vadc ADC5_CHG_TEMP>, @@ -46,7 +48,23 @@ <&pm7250b_vadc ADC5_AMUX_THM3_100K_PU>, <&pm7250b_vadc ADC5_SBUx>, <&pm7250b_vadc ADC5_VPH_PWR>, - <&pm7250b_vadc ADC5_AMUX_THM1_100K_PU>; + <&pm7250b_vadc ADC5_AMUX_THM1_100K_PU>, + <&pm7250b_qg PSY_IIO_RESISTANCE_ID>, + <&pm7250b_qg PSY_IIO_VOLTAGE_NOW>, + <&pm7250b_qg PSY_IIO_TEMP>, + <&pm7250b_qg PSY_IIO_CAPACITY>, + <&pm7250b_qg PSY_IIO_VOLTAGE_OCV>, + <&pm7250b_qg PSY_IIO_VOLTAGE_AVG>, + <&pm7250b_qg PSY_IIO_DEBUG_BATTERY>, + <&pm7250b_qg PSY_IIO_REAL_CAPACITY>, + <&pm7250b_qg PSY_IIO_CC_SOC>, + <&pm7250b_qg PSY_IIO_CURRENT_NOW>, + <&pm7250b_qg PSY_IIO_VOLTAGE_MAX>, + <&pm7250b_qg PSY_IIO_CHARGE_FULL>, + <&pm7250b_qg PSY_IIO_CHARGE_COUNTER>, + <&pm7250b_qg PSY_IIO_CYCLE_COUNT>, + <&pm7250b_qg PSY_IIO_CHARGE_FULL_DESIGN>, + <&pm7250b_qg PSY_IIO_TIME_TO_FULL_NOW>; io-channel-names = "usb_in_voltage", "usb_in_current", "chg_temp", @@ -54,7 +72,23 @@ "conn_temp", "sbux_res", "vph_voltage", - "skin_temp"; + "skin_temp", + "resistance_id", + "voltage_now", + "temp", + "capacity", + "voltage_ocv", + "voltage_avg", + "debug_battery", + "real_capacity", + "cc_soc", + "current_now", + "voltage_max", + "charge_full", + "charge_counter", + "cycle_count", + "charge_full_design", + "time_to_full_now"; qcom,battery-data = <&mtp_batterydata>; qcom,sec-charger-config = <2>; qcom,auto-recharge-soc = <98>; @@ -73,10 +107,19 @@ &pm7250b_qg { status = "ok"; + #io-channel-cells = <1>; io-channels = <&pm7250b_vadc ADC5_BAT_THERM_100K_PU>, - <&pm7250b_vadc ADC5_BAT_ID_100K_PU>; + <&pm7250b_vadc ADC5_BAT_ID_100K_PU>, + <&pm7250b_charger PSY_IIO_INPUT_CURRENT_LIMITED>, + <&pm7250b_charger PSY_IIO_RECHARGE_SOC>, + <&pm7250b_charger PSY_IIO_FORCE_RECHARGE>, + <&pm7250b_charger PSY_IIO_CHARGE_DONE>; io-channel-names = "batt-therm", - "batt-id"; + "batt-id", + "input_current_limited", + "recharge_soc", + "force_recharge", + "charge_done"; qcom,battery-data = <&mtp_batterydata>; qcom,qg-iterm-ma = <100>; qcom,hold-soc-while-full; @@ -109,6 +152,36 @@ vdd-pdphy-supply = <&L15A>; vbus-supply = <&smb5_vbus>; vconn-supply = <&smb5_vconn>; + + #io-channel-cells = <1>; + io-channels = <&pm7250b_charger PSY_IIO_PD_ACTIVE>, + <&pm7250b_charger PSY_IIO_TYPEC_CC_ORIENTATION>, + <&pm7250b_charger PSY_IIO_CONNECTOR_TYPE>, + <&pm7250b_charger PSY_IIO_TYPEC_POWER_ROLE>, + <&pm7250b_charger PSY_IIO_PD_USB_SUSPEND_SUPPORTED>, + <&pm7250b_charger PSY_IIO_TYPEC_SRC_RP>, + <&pm7250b_charger PSY_IIO_PD_IN_HARD_RESET>, + <&pm7250b_charger PSY_IIO_PD_CURRENT_MAX>, + <&pm7250b_charger PSY_IIO_PR_SWAP>, + <&pm7250b_charger PSY_IIO_PD_VOLTAGE_MIN>, + <&pm7250b_charger PSY_IIO_PD_VOLTAGE_MAX>, + <&pm7250b_charger PSY_IIO_USB_REAL_TYPE>, + <&pm7250b_charger PSY_IIO_TYPEC_MODE>, + <&pm7250b_charger PSY_IIO_PE_START>; + io-channel-names = "pd_active", + "typec_cc_orientation", + "connector_type", + "typec_power_role", + "pd_usb_suspend_supported", + "typec_src_rp", + "pd_in_hard_reset", + "pr_current_max", + "pr_swap", + "pd_voltage_min", + "pd_voltage_max", + "real_type", + "typec_mode", + "pe_start"; }; &usb0 { diff --git a/qcom/khaje-pm7250b.dtsi b/qcom/khaje-pm7250b.dtsi index 402e987e..4330593d 100644 --- a/qcom/khaje-pm7250b.dtsi +++ b/qcom/khaje-pm7250b.dtsi @@ -87,7 +87,3 @@ }; }; }; - -&pm7250b_pon { - qcom,log-kpd-event; -}; diff --git a/qcom/pm6125.dtsi b/qcom/pm6125.dtsi index 13483ad3..f36c9204 100644 --- a/qcom/pm6125.dtsi +++ b/qcom/pm6125.dtsi @@ -8,41 +8,28 @@ qcom,pm6125@0 { compatible = "qcom,spmi-pmic"; reg = <0x0 0x0>; - #address-cells = <2>; + #address-cells = <1>; #size-cells = <0>; - pm6125_revid: qcom,revid@100 { - compatible = "qcom,qpnp-revid"; - reg = <0x100 0x100>; - }; - qcom,power-on@800 { - compatible = "qcom,qpnp-power-on"; - reg = <0x800 0x100>; - interrupts = <0x0 0x8 0x0 IRQ_TYPE_EDGE_BOTH>, - <0x0 0x8 0x1 IRQ_TYPE_EDGE_BOTH>; - interrupt-names = "kpdpwr", "resin"; - qcom,pon-dbc-delay = <15625>; - qcom,kpdpwr-sw-debounce; - qcom,system-reset; - qcom,store-hard-reset-reason; - - qcom,pon_1 { - qcom,pon-type = ; - qcom,pull-up = <1>; + compatible = "qcom,pm8998-pon"; + reg = <0x800>; + pwrkey { + compatible = "qcom,pmk8350-pwrkey"; + interrupts = <0x0 0x8 0x0 IRQ_TYPE_EDGE_BOTH>; linux,code = ; }; - qcom,pon_2 { - qcom,pon-type = ; - qcom,pull-up = <1>; + resin { + compatible = "qcom,pmk8350-resin"; + interrupts = <0x0 0x8 0x1 IRQ_TYPE_EDGE_BOTH>; linux,code = ; }; }; pm6125_vadc: vadc@3100 { compatible = "qcom,spmi-adc5"; - reg = <0x3100 0x100>; + reg = <0x3100>; #address-cells = <1>; #size-cells = <0>; interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>; @@ -93,7 +80,7 @@ pm6125_adc_tm: adc_tm@3500 { compatible = "qcom,adc-tm5"; - reg = <0x3500 0x100>; + reg = <0x3500>; interrupts = <0x0 0x35 0x0 IRQ_TYPE_EDGE_RISING>; interrupt-names = "thr-int-en"; #address-cells = <1>; @@ -103,7 +90,7 @@ pm6125_tz: qcom,temp-alarm@2400 { compatible = "qcom,spmi-temp-alarm"; - reg = <0x2400 0x100>; + reg = <0x2400>; interrupts = <0x0 0x24 0x0 IRQ_TYPE_EDGE_BOTH>; #thermal-sensor-cells = <0>; qcom,temperature-threshold-set = <1>; @@ -111,7 +98,7 @@ pm6125_clkdiv: clock-controller@5b00 { compatible = "qcom,spmi-clkdiv"; - reg = <0x5b00 0x100>; + reg = <0x5b00>; #clock-cells = <1>; qcom,num-clkdivs = <1>; clock-output-names = "pm6125_div_clk1"; @@ -122,24 +109,12 @@ }; pm6125_gpios: pinctrl@c000 { - compatible = "qcom,spmi-gpio"; - reg = <0xc000 0x900>; - interrupts = <0x0 0xc0 0 IRQ_TYPE_NONE>, - <0x0 0xc1 0 IRQ_TYPE_NONE>, - <0x0 0xc2 0 IRQ_TYPE_NONE>, - <0x0 0xc3 0 IRQ_TYPE_NONE>, - <0x0 0xc4 0 IRQ_TYPE_NONE>, - <0x0 0xc5 0 IRQ_TYPE_NONE>, - <0x0 0xc6 0 IRQ_TYPE_NONE>, - <0x0 0xc7 0 IRQ_TYPE_NONE>, - <0x0 0xc8 0 IRQ_TYPE_NONE>; - interrupt-names = "pm6125_gpio1", "pm6125_gpio2", - "pm6125_gpio3", "pm6125_gpio4", - "pm6125_gpio5", "pm6125_gpio6", - "pm6125_gpio7", "pm6125_gpio8", - "pm6125_gpio9"; + compatible = "qcom,pm6125-gpio"; + reg = <0xc000>; gpio-controller; #gpio-cells = <2>; + interrupt-controller; + #interrupt-cells = <2>; }; pm6125_rtc: qcom,pm6125_rtc { @@ -151,13 +126,13 @@ qcom,pm6125@1 { compatible ="qcom,spmi-pmic"; reg = <0x1 0x0>; - #address-cells = <2>; + #address-cells = <1>; #size-cells = <0>; pm6125_pwm: qcom,pwms@b300 { status = "disabled"; compatible = "qcom,pwm-lpg"; - reg = <0xb300 0x100>; + reg = <0xb300>; reg-names = "lpg-base"; qcom,num-lpg-channels = <1>; #pwm-cells = <2>; diff --git a/qcom/pm7250b.dtsi b/qcom/pm7250b.dtsi index 118a5d1f..7b22aeb3 100644 --- a/qcom/pm7250b.dtsi +++ b/qcom/pm7250b.dtsi @@ -11,21 +11,12 @@ qcom,pm7250b@2 { compatible = "qcom,spmi-pmic"; reg = <0x2 SPMI_USID>; - #address-cells = <2>; + #address-cells = <1>; #size-cells = <0>; - pm7250b_revid: qcom,revid@100 { - compatible = "qcom,qpnp-revid"; - reg = <0x100 0x100>; - }; - - pm7250b_pon: qcom,power-on@800 { - compatible = "qcom,qpnp-power-on"; - reg = <0x800 0x100>; - }; - pm7250b_charger: qcom,qpnp-smb5 { - compatible = "qcom,qpnp-smb5"; + compatible = "qcom,pm7250b-smb5"; + depends-on-supply = <&pm7250b_vadc>; #address-cells = <1>; #size-cells = <1>; #cooling-cells = <2>; @@ -33,12 +24,11 @@ qcom,thermal-mitigation = <5400000 4500000 4000000 3500000 3000000 2500000 2000000 1500000 1000000 500000>; - qcom,pmic-revid = <&pm7250b_revid>; qcom,hvdcp2-max-icl-ua = <2000000>; qcom,hvdcp2-12v-max-icl-ua = <1500000>; qcom,chgr@1000 { - reg = <0x1000 0x100>; + reg = <0x1000>; interrupts = <0x2 0x10 0x0 IRQ_TYPE_EDGE_RISING>, <0x2 0x10 0x1 IRQ_TYPE_EDGE_RISING>, @@ -59,7 +49,7 @@ }; qcom,dcdc@1100 { - reg = <0x1100 0x100>; + reg = <0x1100>; interrupts = <0x2 0x11 0x0 IRQ_TYPE_EDGE_RISING>, <0x2 0x11 0x1 IRQ_TYPE_EDGE_RISING>, @@ -80,7 +70,7 @@ }; qcom,batif@1200 { - reg = <0x1200 0x100>; + reg = <0x1200>; interrupts = <0x2 0x12 0x0 IRQ_TYPE_EDGE_RISING>, <0x2 0x12 0x2 IRQ_TYPE_EDGE_BOTH>, @@ -99,7 +89,7 @@ }; qcom,usb@1300 { - reg = <0x1300 0x100>; + reg = <0x1300>; interrupts = <0x2 0x13 0x0 IRQ_TYPE_EDGE_BOTH>, <0x2 0x13 0x1 IRQ_TYPE_EDGE_BOTH>, @@ -120,7 +110,7 @@ }; qcom,dc@1400 { - reg = <0x1400 0x100>; + reg = <0x1400>; interrupts = <0x2 0x14 0x1 IRQ_TYPE_EDGE_BOTH>, <0x2 0x14 0x2 IRQ_TYPE_EDGE_BOTH>, @@ -139,7 +129,7 @@ }; qcom,typec@1500 { - reg = <0x1500 0x100>; + reg = <0x1500>; interrupts = <0x2 0x15 0x0 IRQ_TYPE_EDGE_RISING>, <0x2 0x15 0x1 IRQ_TYPE_EDGE_RISING>, @@ -160,7 +150,7 @@ }; qcom,misc@1600 { - reg = <0x1600 0x100>; + reg = <0x1600>; interrupts = <0x2 0x16 0x0 IRQ_TYPE_EDGE_RISING>, <0x2 0x16 0x1 IRQ_TYPE_EDGE_RISING>, @@ -181,13 +171,13 @@ }; qcom,chg-sdam@b000 { - reg = <0xb000 0x100>; + reg = <0xb000>; }; }; pm7250b_pdphy: qcom,usb-pdphy@1700 { compatible = "qcom,qpnp-pdphy"; - reg = <0x1700 0x100>; + reg = <0x1700>; interrupts = <0x2 0x17 0x0 IRQ_TYPE_EDGE_RISING>, <0x2 0x17 0x1 IRQ_TYPE_EDGE_RISING>, <0x2 0x17 0x2 IRQ_TYPE_EDGE_RISING>, @@ -205,6 +195,7 @@ "msg-tx-discarded", "msg-rx-discarded", "fr-swap"; + #io-channel-cells = <1>; qcom,default-sink-caps = <5000 3000>, /* 5V @ 3A */ <9000 3000>, /* 9V @ 3A */ @@ -213,7 +204,7 @@ pm7250b_tz: qcom,temp-alarm@2400 { compatible = "qcom,spmi-temp-alarm"; - reg = <0x2400 0x100>; + reg = <0x2400>; interrupts = <0x2 0x24 0x0 IRQ_TYPE_EDGE_BOTH>; io-channels = <&pm7250b_vadc ADC5_DIE_TEMP>; io-channel-names = "thermal"; @@ -222,7 +213,7 @@ }; pm7250b_qg: qpnp,qg { - compatible = "qcom,qpnp-qg"; + compatible = "qcom,pm7250b-qg"; #address-cells = <1>; #size-cells = <1>; @@ -233,11 +224,9 @@ qcom,vbatt-empty-cold-mv = <3000>; qcom,s3-entry-fifo-length = <2>; - qcom,pmic-revid = <&pm7250b_revid>; - qcom,qgauge@4800 { status = "okay"; - reg = <0x4800 0x100>; + reg = <0x4800>; interrupts = <0x2 0x48 0x0 IRQ_TYPE_EDGE_BOTH>, <0x2 0x48 0x1 IRQ_TYPE_EDGE_BOTH>, @@ -253,13 +242,13 @@ qcom,qg-sdam@b100 { status = "okay"; - reg = <0xb100 0x100>; + reg = <0xb100>; }; }; pm7250b_clkdiv: clock-controller@5b00 { compatible = "qcom,spmi-clkdiv"; - reg = <0x5b00 0x100>; + reg = <0x5b00>; #clock-cells = <1>; qcom,num-clkdivs = <1>; clock-output-names = "pm7250b_div_clk1"; @@ -270,33 +259,17 @@ }; pm7250b_gpios: pinctrl@c000 { - compatible = "qcom,spmi-gpio"; - reg = <0xc000 0xc00>; - interrupts = <0x2 0xc0 0x0 IRQ_TYPE_NONE>, - <0x2 0xc1 0x0 IRQ_TYPE_NONE>, - <0x2 0xc2 0x0 IRQ_TYPE_NONE>, - <0x2 0xc3 0x0 IRQ_TYPE_NONE>, - <0x2 0xc4 0x0 IRQ_TYPE_NONE>, - <0x2 0xc5 0x0 IRQ_TYPE_NONE>, - <0x2 0xc6 0x0 IRQ_TYPE_NONE>, - <0x2 0xc7 0x0 IRQ_TYPE_NONE>, - <0x2 0xc8 0x0 IRQ_TYPE_NONE>, - <0x2 0xc9 0x0 IRQ_TYPE_NONE>, - <0x2 0xca 0x0 IRQ_TYPE_NONE>, - <0x2 0xcb 0x0 IRQ_TYPE_NONE>; - interrupt-names = "pm7250b_gpio1", "pm7250b_gpio2", - "pm7250b_gpio3", "pm7250b_gpio4", - "pm7250b_gpio5", "pm7250b_gpio6", - "pm7250b_gpio7", "pm7250b_gpio8", - "pm7250b_gpio9", "pm7250b_gpio10", - "pm7250b_gpio11", "pm7250b_gpio12"; + compatible = "qcom,pm7250b-gpio"; + reg = <0xc000>; gpio-controller; #gpio-cells = <2>; + interrupt-controller; + #interrupt-cells = <2>; }; pm7250b_vadc: vadc@3100 { compatible = "qcom,spmi-adc5"; - reg = <0x3100 0x100>; + reg = <0x3100>; reg-names = "adc5-usr-base"; #address-cells = <1>; #size-cells = <0>; @@ -380,7 +353,7 @@ }; bat_id@4b { - reg = ; + reg = ; label = "bat_id"; qcom,ratiometric; qcom,hw-settle-time = <200>; @@ -406,22 +379,11 @@ qcom,pre-scaling = <1 6>; }; - v_i_int_ext@b0 { - reg = ; - label = "v_i_int_vbat_vdata"; - qcom,pre-scaling = <1 1>; - }; - - v_i_parallel@b0 { - reg = ; - label = "v_i_parallel_vbat_vdata"; - qcom,pre-scaling = <1 1>; - }; }; pm7250b_adc_tm: adc_tm@3500 { compatible = "qcom,adc-tm5"; - reg = <0x3500 0x100>; + reg = <0x3500>; interrupts = <0x2 0x35 0x0 IRQ_TYPE_EDGE_RISING>; interrupt-names = "thr-int-en"; #address-cells = <1>; @@ -431,7 +393,7 @@ pm7250b_bcl: bcl@1d00 { compatible = "qcom,bcl-v5"; - reg = <0x1d00 0x100>; + reg = <0x1d00>; interrupts = <0x2 0x1d 0x0 IRQ_TYPE_NONE>, <0x2 0x1d 0x1 IRQ_TYPE_NONE>, <0x2 0x1d 0x2 IRQ_TYPE_NONE>; @@ -450,12 +412,12 @@ qcom,pm7250b@3 { compatible = "qcom,spmi-pmic"; reg = <0x3 SPMI_USID>; - #address-cells = <2>; + #address-cells = <1>; #size-cells = <0>; pm7250b_vib: qcom,vibrator@5300 { compatible = "qcom,qpnp-vibrator-ldo"; - reg = <0x5300 0x100>; + reg = <0x5300>; qcom,vib-ldo-volt-uv = <3000000>; qcom,disable-overdrive; }; diff --git a/qcom/pm8008.dtsi b/qcom/pm8008.dtsi index f4fc4e88..a2bf51b6 100644 --- a/qcom/pm8008.dtsi +++ b/qcom/pm8008.dtsi @@ -22,19 +22,13 @@ pm8008_8: qcom,pm8008@8 { }; }; - qcom,revid@100 { - compatible = "qcom,qpnp-revid"; - reg = <0x100>; - }; - pm8008_gpios: pinctrl@c000 { - compatible = "qcom,spmi-gpio"; - reg = <0xc000 0x200>; - interrupts = <0xc0 0 IRQ_TYPE_EDGE_RISING>, - <0xc1 0 IRQ_TYPE_EDGE_RISING>; - interrupt-names = "pm8008_gpio1", "pm8008_gpio2"; + compatible = "qcom,pm8008-gpio"; + reg = <0xc000>; gpio-controller; #gpio-cells = <2>; + interrupt-controller; + #interrupt-cells = <2>; pm8008_gpio1_active: pm8008_gpio1_active { pins = "gpio1"; diff --git a/qcom/smb1355.dtsi b/qcom/smb1355.dtsi index f244a0dc..2e591d50 100644 --- a/qcom/smb1355.dtsi +++ b/qcom/smb1355.dtsi @@ -13,28 +13,22 @@ smb1355: qcom,smb1355@c { qcom,periph-map = <0x10 0x12 0x13 0x16>; status = "disabled"; - smb1355_revid: qcom,revid@100 { - compatible = "qcom,qpnp-revid"; - reg = <0x100 0x100>; - }; - smb1355_charger: qcom,smb1355-charger@1000 { compatible = "qcom,smb1355"; - qcom,pmic-revid = <&smb1355_revid>; - reg = <0x1000 0x700>; + reg = <0x1000>; #address-cells = <1>; #size-cells = <1>; interrupt-parent = <&smb1355>; status = "disabled"; qcom,chgr@1000 { - reg = <0x1000 0x100>; + reg = <0x1000>; interrupts = <0x10 0x1 IRQ_TYPE_EDGE_RISING>; interrupt-names = "chg-state-change"; }; qcom,chgr-misc@1600 { - reg = <0x1600 0x100>; + reg = <0x1600>; interrupts = <0x16 0x1 IRQ_TYPE_EDGE_RISING>, <0x16 0x6 IRQ_TYPE_EDGE_RISING>; interrupt-names = "wdog-bark", @@ -56,28 +50,22 @@ smb1355_0: qcom,smb1355@8 { qcom,periph-map = <0x10 0x12 0x13 0x16>; status = "disabled"; - smb1355_revid_0: qcom,revid@100 { - compatible = "qcom,qpnp-revid"; - reg = <0x100 0x100>; - }; - smb1355_charger_0: qcom,smb1355-charger@1000 { compatible = "qcom,smb1355"; - qcom,pmic-revid = <&smb1355_revid_0>; - reg = <0x1000 0x700>; + reg = <0x1000>; #address-cells = <1>; #size-cells = <1>; interrupt-parent = <&smb1355_0>; status = "disabled"; qcom,chgr@1000 { - reg = <0x1000 0x100>; + reg = <0x1000>; interrupts = <0x10 0x1 IRQ_TYPE_EDGE_RISING>; interrupt-names = "chg-state-change"; }; qcom,chgr-misc@1600 { - reg = <0x1600 0x100>; + reg = <0x1600>; interrupts = <0x16 0x1 IRQ_TYPE_EDGE_RISING>, <0x16 0x6 IRQ_TYPE_EDGE_RISING>; interrupt-names = "wdog-bark", diff --git a/qcom/smb1394.dtsi b/qcom/smb1394.dtsi index 23d03b6b..59b0bbfc 100644 --- a/qcom/smb1394.dtsi +++ b/qcom/smb1394.dtsi @@ -11,14 +11,8 @@ smb1394: qcom,smb1394@34 { qcom,periph-map = <0x6 0x26 0x27>; status = "disabled"; - smb1394_revid: qcom,revid { - compatible = "qcom,qpnp-revid"; - reg = <0x100>; - }; - smb1394_div2_cp_primary: qcom,div2_cp_pry { compatible = "qcom,smb1394-div2-cp-primary"; - qcom,pmic-revid = <&smb1394_revid>; #io-channel-cells = <1>; interrupts = <0x26 0x1 IRQ_TYPE_EDGE_RISING>, <0x26 0x3 IRQ_TYPE_EDGE_RISING>,