0001
0002
0003
0004
0005
0006
0007
0008 #ifndef __LINUX_EXTCON_SM5502_H
0009 #define __LINUX_EXTCON_SM5502_H
0010
0011
0012 enum sm5502_reg {
0013 SM5502_REG_DEVICE_ID = 0x01,
0014 SM5502_REG_CONTROL,
0015 SM5502_REG_INT1,
0016 SM5502_REG_INT2,
0017 SM5502_REG_INTMASK1,
0018 SM5502_REG_INTMASK2,
0019 SM5502_REG_ADC,
0020 SM5502_REG_TIMING_SET1,
0021 SM5502_REG_TIMING_SET2,
0022 SM5502_REG_DEV_TYPE1,
0023 SM5502_REG_DEV_TYPE2,
0024 SM5502_REG_BUTTON1,
0025 SM5502_REG_BUTTON2,
0026 SM5502_REG_CAR_KIT_STATUS,
0027 SM5502_REG_RSVD1,
0028 SM5502_REG_RSVD2,
0029 SM5502_REG_RSVD3,
0030 SM5502_REG_RSVD4,
0031 SM5502_REG_MANUAL_SW1,
0032 SM5502_REG_MANUAL_SW2,
0033 SM5502_REG_DEV_TYPE3,
0034 SM5502_REG_RSVD5,
0035 SM5502_REG_RSVD6,
0036 SM5502_REG_RSVD7,
0037 SM5502_REG_RSVD8,
0038 SM5502_REG_RSVD9,
0039 SM5502_REG_RESET,
0040 SM5502_REG_RSVD10,
0041 SM5502_REG_RESERVED_ID1,
0042 SM5502_REG_RSVD11,
0043 SM5502_REG_RSVD12,
0044 SM5502_REG_RESERVED_ID2,
0045 SM5502_REG_RSVD13,
0046 SM5502_REG_OCP,
0047 SM5502_REG_RSVD14,
0048 SM5502_REG_RSVD15,
0049 SM5502_REG_RSVD16,
0050 SM5502_REG_RSVD17,
0051 SM5502_REG_RSVD18,
0052 SM5502_REG_RSVD19,
0053 SM5502_REG_RSVD20,
0054 SM5502_REG_RSVD21,
0055 SM5502_REG_RSVD22,
0056 SM5502_REG_RSVD23,
0057 SM5502_REG_RSVD24,
0058 SM5502_REG_RSVD25,
0059 SM5502_REG_RSVD26,
0060 SM5502_REG_RSVD27,
0061 SM5502_REG_RSVD28,
0062 SM5502_REG_RSVD29,
0063 SM5502_REG_RSVD30,
0064 SM5502_REG_RSVD31,
0065 SM5502_REG_RSVD32,
0066 SM5502_REG_RSVD33,
0067 SM5502_REG_RSVD34,
0068 SM5502_REG_RSVD35,
0069 SM5502_REG_RSVD36,
0070 SM5502_REG_RESERVED_ID3,
0071
0072 SM5502_REG_END,
0073 };
0074
0075
0076 #define SM5502_REG_DEVICE_ID_VENDOR_SHIFT 0
0077 #define SM5502_REG_DEVICE_ID_VERSION_SHIFT 3
0078 #define SM5502_REG_DEVICE_ID_VENDOR_MASK (0x3 << SM5502_REG_DEVICE_ID_VENDOR_SHIFT)
0079 #define SM5502_REG_DEVICE_ID_VERSION_MASK (0x1f << SM5502_REG_DEVICE_ID_VERSION_SHIFT)
0080
0081 #define SM5502_REG_CONTROL_MASK_INT_SHIFT 0
0082 #define SM5502_REG_CONTROL_WAIT_SHIFT 1
0083 #define SM5502_REG_CONTROL_MANUAL_SW_SHIFT 2
0084 #define SM5502_REG_CONTROL_RAW_DATA_SHIFT 3
0085 #define SM5502_REG_CONTROL_SW_OPEN_SHIFT 4
0086 #define SM5502_REG_CONTROL_MASK_INT_MASK (0x1 << SM5502_REG_CONTROL_MASK_INT_SHIFT)
0087 #define SM5502_REG_CONTROL_WAIT_MASK (0x1 << SM5502_REG_CONTROL_WAIT_SHIFT)
0088 #define SM5502_REG_CONTROL_MANUAL_SW_MASK (0x1 << SM5502_REG_CONTROL_MANUAL_SW_SHIFT)
0089 #define SM5502_REG_CONTROL_RAW_DATA_MASK (0x1 << SM5502_REG_CONTROL_RAW_DATA_SHIFT)
0090 #define SM5502_REG_CONTROL_SW_OPEN_MASK (0x1 << SM5502_REG_CONTROL_SW_OPEN_SHIFT)
0091
0092 #define SM5504_REG_CONTROL_CHGTYP_SHIFT 5
0093 #define SM5504_REG_CONTROL_USBCHDEN_SHIFT 6
0094 #define SM5504_REG_CONTROL_ADC_EN_SHIFT 7
0095 #define SM5504_REG_CONTROL_CHGTYP_MASK (0x1 << SM5504_REG_CONTROL_CHGTYP_SHIFT)
0096 #define SM5504_REG_CONTROL_USBCHDEN_MASK (0x1 << SM5504_REG_CONTROL_USBCHDEN_SHIFT)
0097 #define SM5504_REG_CONTROL_ADC_EN_MASK (0x1 << SM5504_REG_CONTROL_ADC_EN_SHIFT)
0098
0099 #define SM5502_REG_INTM1_ATTACH_SHIFT 0
0100 #define SM5502_REG_INTM1_DETACH_SHIFT 1
0101 #define SM5502_REG_INTM1_KP_SHIFT 2
0102 #define SM5502_REG_INTM1_LKP_SHIFT 3
0103 #define SM5502_REG_INTM1_LKR_SHIFT 4
0104 #define SM5502_REG_INTM1_OVP_EVENT_SHIFT 5
0105 #define SM5502_REG_INTM1_OCP_EVENT_SHIFT 6
0106 #define SM5502_REG_INTM1_OVP_OCP_DIS_SHIFT 7
0107 #define SM5502_REG_INTM1_ATTACH_MASK (0x1 << SM5502_REG_INTM1_ATTACH_SHIFT)
0108 #define SM5502_REG_INTM1_DETACH_MASK (0x1 << SM5502_REG_INTM1_DETACH_SHIFT)
0109 #define SM5502_REG_INTM1_KP_MASK (0x1 << SM5502_REG_INTM1_KP_SHIFT)
0110 #define SM5502_REG_INTM1_LKP_MASK (0x1 << SM5502_REG_INTM1_LKP_SHIFT)
0111 #define SM5502_REG_INTM1_LKR_MASK (0x1 << SM5502_REG_INTM1_LKR_SHIFT)
0112 #define SM5502_REG_INTM1_OVP_EVENT_MASK (0x1 << SM5502_REG_INTM1_OVP_EVENT_SHIFT)
0113 #define SM5502_REG_INTM1_OCP_EVENT_MASK (0x1 << SM5502_REG_INTM1_OCP_EVENT_SHIFT)
0114 #define SM5502_REG_INTM1_OVP_OCP_DIS_MASK (0x1 << SM5502_REG_INTM1_OVP_OCP_DIS_SHIFT)
0115
0116 #define SM5502_REG_INTM2_VBUS_DET_SHIFT 0
0117 #define SM5502_REG_INTM2_REV_ACCE_SHIFT 1
0118 #define SM5502_REG_INTM2_ADC_CHG_SHIFT 2
0119 #define SM5502_REG_INTM2_STUCK_KEY_SHIFT 3
0120 #define SM5502_REG_INTM2_STUCK_KEY_RCV_SHIFT 4
0121 #define SM5502_REG_INTM2_MHL_SHIFT 5
0122 #define SM5502_REG_INTM2_VBUS_DET_MASK (0x1 << SM5502_REG_INTM2_VBUS_DET_SHIFT)
0123 #define SM5502_REG_INTM2_REV_ACCE_MASK (0x1 << SM5502_REG_INTM2_REV_ACCE_SHIFT)
0124 #define SM5502_REG_INTM2_ADC_CHG_MASK (0x1 << SM5502_REG_INTM2_ADC_CHG_SHIFT)
0125 #define SM5502_REG_INTM2_STUCK_KEY_MASK (0x1 << SM5502_REG_INTM2_STUCK_KEY_SHIFT)
0126 #define SM5502_REG_INTM2_STUCK_KEY_RCV_MASK (0x1 << SM5502_REG_INTM2_STUCK_KEY_RCV_SHIFT)
0127 #define SM5502_REG_INTM2_MHL_MASK (0x1 << SM5502_REG_INTM2_MHL_SHIFT)
0128
0129 #define SM5504_REG_INTM1_ATTACH_SHIFT 0
0130 #define SM5504_REG_INTM1_DETACH_SHIFT 1
0131 #define SM5504_REG_INTM1_CHG_DET_SHIFT 2
0132 #define SM5504_REG_INTM1_DCD_OUT_SHIFT 3
0133 #define SM5504_REG_INTM1_OVP_EVENT_SHIFT 4
0134 #define SM5504_REG_INTM1_CONNECT_SHIFT 5
0135 #define SM5504_REG_INTM1_ADC_CHG_SHIFT 6
0136 #define SM5504_REG_INTM1_ATTACH_MASK (0x1 << SM5504_REG_INTM1_ATTACH_SHIFT)
0137 #define SM5504_REG_INTM1_DETACH_MASK (0x1 << SM5504_REG_INTM1_DETACH_SHIFT)
0138 #define SM5504_REG_INTM1_CHG_DET_MASK (0x1 << SM5504_REG_INTM1_CHG_DET_SHIFT)
0139 #define SM5504_REG_INTM1_DCD_OUT_MASK (0x1 << SM5504_REG_INTM1_DCD_OUT_SHIFT)
0140 #define SM5504_REG_INTM1_OVP_EVENT_MASK (0x1 << SM5504_REG_INTM1_OVP_EVENT_SHIFT)
0141 #define SM5504_REG_INTM1_CONNECT_MASK (0x1 << SM5504_REG_INTM1_CONNECT_SHIFT)
0142 #define SM5504_REG_INTM1_ADC_CHG_MASK (0x1 << SM5504_REG_INTM1_ADC_CHG_SHIFT)
0143
0144 #define SM5504_REG_INTM2_RID_CHG_SHIFT 0
0145 #define SM5504_REG_INTM2_UVLO_SHIFT 1
0146 #define SM5504_REG_INTM2_POR_SHIFT 2
0147 #define SM5504_REG_INTM2_OVP_FET_SHIFT 4
0148 #define SM5504_REG_INTM2_OCP_LATCH_SHIFT 5
0149 #define SM5504_REG_INTM2_OCP_EVENT_SHIFT 6
0150 #define SM5504_REG_INTM2_OVP_OCP_EVENT_SHIFT 7
0151 #define SM5504_REG_INTM2_RID_CHG_MASK (0x1 << SM5504_REG_INTM2_RID_CHG_SHIFT)
0152 #define SM5504_REG_INTM2_UVLO_MASK (0x1 << SM5504_REG_INTM2_UVLO_SHIFT)
0153 #define SM5504_REG_INTM2_POR_MASK (0x1 << SM5504_REG_INTM2_POR_SHIFT)
0154 #define SM5504_REG_INTM2_OVP_FET_MASK (0x1 << SM5504_REG_INTM2_OVP_FET_SHIFT)
0155 #define SM5504_REG_INTM2_OCP_LATCH_MASK (0x1 << SM5504_REG_INTM2_OCP_LATCH_SHIFT)
0156 #define SM5504_REG_INTM2_OCP_EVENT_MASK (0x1 << SM5504_REG_INTM2_OCP_EVENT_SHIFT)
0157 #define SM5504_REG_INTM2_OVP_OCP_EVENT_MASK (0x1 << SM5504_REG_INTM2_OVP_OCP_EVENT_SHIFT)
0158
0159 #define SM5502_REG_ADC_SHIFT 0
0160 #define SM5502_REG_ADC_MASK (0x1f << SM5502_REG_ADC_SHIFT)
0161
0162 #define SM5502_REG_TIMING_SET1_KEY_PRESS_SHIFT 4
0163 #define SM5502_REG_TIMING_SET1_KEY_PRESS_MASK (0xf << SM5502_REG_TIMING_SET1_KEY_PRESS_SHIFT)
0164 #define TIMING_KEY_PRESS_100MS 0x0
0165 #define TIMING_KEY_PRESS_200MS 0x1
0166 #define TIMING_KEY_PRESS_300MS 0x2
0167 #define TIMING_KEY_PRESS_400MS 0x3
0168 #define TIMING_KEY_PRESS_500MS 0x4
0169 #define TIMING_KEY_PRESS_600MS 0x5
0170 #define TIMING_KEY_PRESS_700MS 0x6
0171 #define TIMING_KEY_PRESS_800MS 0x7
0172 #define TIMING_KEY_PRESS_900MS 0x8
0173 #define TIMING_KEY_PRESS_1000MS 0x9
0174 #define SM5502_REG_TIMING_SET1_ADC_DET_SHIFT 0
0175 #define SM5502_REG_TIMING_SET1_ADC_DET_MASK (0xf << SM5502_REG_TIMING_SET1_ADC_DET_SHIFT)
0176 #define TIMING_ADC_DET_50MS 0x0
0177 #define TIMING_ADC_DET_100MS 0x1
0178 #define TIMING_ADC_DET_150MS 0x2
0179 #define TIMING_ADC_DET_200MS 0x3
0180 #define TIMING_ADC_DET_300MS 0x4
0181 #define TIMING_ADC_DET_400MS 0x5
0182 #define TIMING_ADC_DET_500MS 0x6
0183 #define TIMING_ADC_DET_600MS 0x7
0184 #define TIMING_ADC_DET_700MS 0x8
0185 #define TIMING_ADC_DET_800MS 0x9
0186 #define TIMING_ADC_DET_900MS 0xA
0187 #define TIMING_ADC_DET_1000MS 0xB
0188
0189 #define SM5502_REG_TIMING_SET2_SW_WAIT_SHIFT 4
0190 #define SM5502_REG_TIMING_SET2_SW_WAIT_MASK (0xf << SM5502_REG_TIMING_SET2_SW_WAIT_SHIFT)
0191 #define TIMING_SW_WAIT_10MS 0x0
0192 #define TIMING_SW_WAIT_30MS 0x1
0193 #define TIMING_SW_WAIT_50MS 0x2
0194 #define TIMING_SW_WAIT_70MS 0x3
0195 #define TIMING_SW_WAIT_90MS 0x4
0196 #define TIMING_SW_WAIT_110MS 0x5
0197 #define TIMING_SW_WAIT_130MS 0x6
0198 #define TIMING_SW_WAIT_150MS 0x7
0199 #define TIMING_SW_WAIT_170MS 0x8
0200 #define TIMING_SW_WAIT_190MS 0x9
0201 #define TIMING_SW_WAIT_210MS 0xA
0202 #define SM5502_REG_TIMING_SET2_LONG_KEY_SHIFT 0
0203 #define SM5502_REG_TIMING_SET2_LONG_KEY_MASK (0xf << SM5502_REG_TIMING_SET2_LONG_KEY_SHIFT)
0204 #define TIMING_LONG_KEY_300MS 0x0
0205 #define TIMING_LONG_KEY_400MS 0x1
0206 #define TIMING_LONG_KEY_500MS 0x2
0207 #define TIMING_LONG_KEY_600MS 0x3
0208 #define TIMING_LONG_KEY_700MS 0x4
0209 #define TIMING_LONG_KEY_800MS 0x5
0210 #define TIMING_LONG_KEY_900MS 0x6
0211 #define TIMING_LONG_KEY_1000MS 0x7
0212 #define TIMING_LONG_KEY_1100MS 0x8
0213 #define TIMING_LONG_KEY_1200MS 0x9
0214 #define TIMING_LONG_KEY_1300MS 0xA
0215 #define TIMING_LONG_KEY_1400MS 0xB
0216 #define TIMING_LONG_KEY_1500MS 0xC
0217
0218 #define SM5502_REG_DEV_TYPE1_AUDIO_TYPE1_SHIFT 0
0219 #define SM5502_REG_DEV_TYPE1_AUDIO_TYPE2_SHIFT 1
0220 #define SM5502_REG_DEV_TYPE1_USB_SDP_SHIFT 2
0221 #define SM5502_REG_DEV_TYPE1_UART_SHIFT 3
0222 #define SM5502_REG_DEV_TYPE1_CAR_KIT_CHARGER_SHIFT 4
0223 #define SM5502_REG_DEV_TYPE1_USB_CHG_SHIFT 5
0224 #define SM5502_REG_DEV_TYPE1_DEDICATED_CHG_SHIFT 6
0225 #define SM5502_REG_DEV_TYPE1_USB_OTG_SHIFT 7
0226 #define SM5502_REG_DEV_TYPE1_AUDIO_TYPE1_MASK (0x1 << SM5502_REG_DEV_TYPE1_AUDIO_TYPE1_SHIFT)
0227 #define SM5502_REG_DEV_TYPE1_AUDIO_TYPE1__MASK (0x1 << SM5502_REG_DEV_TYPE1_AUDIO_TYPE2_SHIFT)
0228 #define SM5502_REG_DEV_TYPE1_USB_SDP_MASK (0x1 << SM5502_REG_DEV_TYPE1_USB_SDP_SHIFT)
0229 #define SM5502_REG_DEV_TYPE1_UART_MASK (0x1 << SM5502_REG_DEV_TYPE1_UART_SHIFT)
0230 #define SM5502_REG_DEV_TYPE1_CAR_KIT_CHARGER_MASK (0x1 << SM5502_REG_DEV_TYPE1_CAR_KIT_CHARGER_SHIFT)
0231 #define SM5502_REG_DEV_TYPE1_USB_CHG_MASK (0x1 << SM5502_REG_DEV_TYPE1_USB_CHG_SHIFT)
0232 #define SM5502_REG_DEV_TYPE1_DEDICATED_CHG_MASK (0x1 << SM5502_REG_DEV_TYPE1_DEDICATED_CHG_SHIFT)
0233 #define SM5502_REG_DEV_TYPE1_USB_OTG_MASK (0x1 << SM5502_REG_DEV_TYPE1_USB_OTG_SHIFT)
0234
0235 #define SM5504_REG_DEV_TYPE1_USB_OTG_SHIFT 0
0236 #define SM5504_REG_DEV_TYPE1_USB_OTG_MASK (0x1 << SM5504_REG_DEV_TYPE1_USB_OTG_SHIFT)
0237
0238 #define SM5502_REG_DEV_TYPE2_JIG_USB_ON_SHIFT 0
0239 #define SM5502_REG_DEV_TYPE2_JIG_USB_OFF_SHIFT 1
0240 #define SM5502_REG_DEV_TYPE2_JIG_UART_ON_SHIFT 2
0241 #define SM5502_REG_DEV_TYPE2_JIG_UART_OFF_SHIFT 3
0242 #define SM5502_REG_DEV_TYPE2_PPD_SHIFT 4
0243 #define SM5502_REG_DEV_TYPE2_TTY_SHIFT 5
0244 #define SM5502_REG_DEV_TYPE2_AV_CABLE_SHIFT 6
0245 #define SM5502_REG_DEV_TYPE2_JIG_USB_ON_MASK (0x1 << SM5502_REG_DEV_TYPE2_JIG_USB_ON_SHIFT)
0246 #define SM5502_REG_DEV_TYPE2_JIG_USB_OFF_MASK (0x1 << SM5502_REG_DEV_TYPE2_JIG_USB_OFF_SHIFT)
0247 #define SM5502_REG_DEV_TYPE2_JIG_UART_ON_MASK (0x1 << SM5502_REG_DEV_TYPE2_JIG_UART_ON_SHIFT)
0248 #define SM5502_REG_DEV_TYPE2_JIG_UART_OFF_MASK (0x1 << SM5502_REG_DEV_TYPE2_JIG_UART_OFF_SHIFT)
0249 #define SM5502_REG_DEV_TYPE2_PPD_MASK (0x1 << SM5502_REG_DEV_TYPE2_PPD_SHIFT)
0250 #define SM5502_REG_DEV_TYPE2_TTY_MASK (0x1 << SM5502_REG_DEV_TYPE2_TTY_SHIFT)
0251 #define SM5502_REG_DEV_TYPE2_AV_CABLE_MASK (0x1 << SM5502_REG_DEV_TYPE2_AV_CABLE_SHIFT)
0252
0253 #define SM5502_REG_MANUAL_SW1_VBUSIN_SHIFT 0
0254 #define SM5502_REG_MANUAL_SW1_DP_SHIFT 2
0255 #define SM5502_REG_MANUAL_SW1_DM_SHIFT 5
0256 #define SM5502_REG_MANUAL_SW1_VBUSIN_MASK (0x3 << SM5502_REG_MANUAL_SW1_VBUSIN_SHIFT)
0257 #define SM5502_REG_MANUAL_SW1_DP_MASK (0x7 << SM5502_REG_MANUAL_SW1_DP_SHIFT)
0258 #define SM5502_REG_MANUAL_SW1_DM_MASK (0x7 << SM5502_REG_MANUAL_SW1_DM_SHIFT)
0259 #define VBUSIN_SWITCH_OPEN 0x0
0260 #define VBUSIN_SWITCH_VBUSOUT 0x1
0261 #define VBUSIN_SWITCH_MIC 0x2
0262 #define VBUSIN_SWITCH_VBUSOUT_WITH_USB 0x3
0263 #define DM_DP_CON_SWITCH_OPEN 0x0
0264 #define DM_DP_CON_SWITCH_USB 0x1
0265 #define DM_DP_CON_SWITCH_AUDIO 0x2
0266 #define DM_DP_CON_SWITCH_UART 0x3
0267 #define DM_DP_SWITCH_OPEN ((DM_DP_CON_SWITCH_OPEN <<SM5502_REG_MANUAL_SW1_DP_SHIFT) \
0268 | (DM_DP_CON_SWITCH_OPEN <<SM5502_REG_MANUAL_SW1_DM_SHIFT))
0269 #define DM_DP_SWITCH_USB ((DM_DP_CON_SWITCH_USB <<SM5502_REG_MANUAL_SW1_DP_SHIFT) \
0270 | (DM_DP_CON_SWITCH_USB <<SM5502_REG_MANUAL_SW1_DM_SHIFT))
0271 #define DM_DP_SWITCH_AUDIO ((DM_DP_CON_SWITCH_AUDIO <<SM5502_REG_MANUAL_SW1_DP_SHIFT) \
0272 | (DM_DP_CON_SWITCH_AUDIO <<SM5502_REG_MANUAL_SW1_DM_SHIFT))
0273 #define DM_DP_SWITCH_UART ((DM_DP_CON_SWITCH_UART <<SM5502_REG_MANUAL_SW1_DP_SHIFT) \
0274 | (DM_DP_CON_SWITCH_UART <<SM5502_REG_MANUAL_SW1_DM_SHIFT))
0275
0276 #define SM5502_REG_RESET_MASK (0x1)
0277
0278
0279 enum sm5502_irq {
0280
0281 SM5502_IRQ_INT1_ATTACH,
0282 SM5502_IRQ_INT1_DETACH,
0283 SM5502_IRQ_INT1_KP,
0284 SM5502_IRQ_INT1_LKP,
0285 SM5502_IRQ_INT1_LKR,
0286 SM5502_IRQ_INT1_OVP_EVENT,
0287 SM5502_IRQ_INT1_OCP_EVENT,
0288 SM5502_IRQ_INT1_OVP_OCP_DIS,
0289
0290
0291 SM5502_IRQ_INT2_VBUS_DET,
0292 SM5502_IRQ_INT2_REV_ACCE,
0293 SM5502_IRQ_INT2_ADC_CHG,
0294 SM5502_IRQ_INT2_STUCK_KEY,
0295 SM5502_IRQ_INT2_STUCK_KEY_RCV,
0296 SM5502_IRQ_INT2_MHL,
0297
0298 SM5502_IRQ_NUM,
0299 };
0300
0301 #define SM5502_IRQ_INT1_ATTACH_MASK BIT(0)
0302 #define SM5502_IRQ_INT1_DETACH_MASK BIT(1)
0303 #define SM5502_IRQ_INT1_KP_MASK BIT(2)
0304 #define SM5502_IRQ_INT1_LKP_MASK BIT(3)
0305 #define SM5502_IRQ_INT1_LKR_MASK BIT(4)
0306 #define SM5502_IRQ_INT1_OVP_EVENT_MASK BIT(5)
0307 #define SM5502_IRQ_INT1_OCP_EVENT_MASK BIT(6)
0308 #define SM5502_IRQ_INT1_OVP_OCP_DIS_MASK BIT(7)
0309 #define SM5502_IRQ_INT2_VBUS_DET_MASK BIT(0)
0310 #define SM5502_IRQ_INT2_REV_ACCE_MASK BIT(1)
0311 #define SM5502_IRQ_INT2_ADC_CHG_MASK BIT(2)
0312 #define SM5502_IRQ_INT2_STUCK_KEY_MASK BIT(3)
0313 #define SM5502_IRQ_INT2_STUCK_KEY_RCV_MASK BIT(4)
0314 #define SM5502_IRQ_INT2_MHL_MASK BIT(5)
0315
0316
0317 enum sm5504_irq {
0318
0319 SM5504_IRQ_INT1_ATTACH,
0320 SM5504_IRQ_INT1_DETACH,
0321 SM5504_IRQ_INT1_CHG_DET,
0322 SM5504_IRQ_INT1_DCD_OUT,
0323 SM5504_IRQ_INT1_OVP_EVENT,
0324 SM5504_IRQ_INT1_CONNECT,
0325 SM5504_IRQ_INT1_ADC_CHG,
0326
0327
0328 SM5504_IRQ_INT2_RID_CHG,
0329 SM5504_IRQ_INT2_UVLO,
0330 SM5504_IRQ_INT2_POR,
0331 SM5504_IRQ_INT2_OVP_FET,
0332 SM5504_IRQ_INT2_OCP_LATCH,
0333 SM5504_IRQ_INT2_OCP_EVENT,
0334 SM5504_IRQ_INT2_OVP_OCP_EVENT,
0335
0336 SM5504_IRQ_NUM,
0337 };
0338
0339 #define SM5504_IRQ_INT1_ATTACH_MASK BIT(0)
0340 #define SM5504_IRQ_INT1_DETACH_MASK BIT(1)
0341 #define SM5504_IRQ_INT1_CHG_DET_MASK BIT(2)
0342 #define SM5504_IRQ_INT1_DCD_OUT_MASK BIT(3)
0343 #define SM5504_IRQ_INT1_OVP_MASK BIT(4)
0344 #define SM5504_IRQ_INT1_CONNECT_MASK BIT(5)
0345 #define SM5504_IRQ_INT1_ADC_CHG_MASK BIT(6)
0346 #define SM5504_IRQ_INT2_RID_CHG_MASK BIT(0)
0347 #define SM5504_IRQ_INT2_UVLO_MASK BIT(1)
0348 #define SM5504_IRQ_INT2_POR_MASK BIT(2)
0349 #define SM5504_IRQ_INT2_OVP_FET_MASK BIT(4)
0350 #define SM5504_IRQ_INT2_OCP_LATCH_MASK BIT(5)
0351 #define SM5504_IRQ_INT2_OCP_EVENT_MASK BIT(6)
0352 #define SM5504_IRQ_INT2_OVP_OCP_EVENT_MASK BIT(7)
0353
0354 #endif