@@ -23,8 +23,9 @@ int hmc5883l_trigger_set(struct device *dev,
2323
2424 __ASSERT_NO_MSG (trig -> type == SENSOR_TRIG_DATA_READY );
2525
26- gpio_pin_disable_callback (drv_data -> gpio ,
27- DT_INST_0_HONEYWELL_HMC5883L_INT_GPIOS_PIN );
26+ gpio_pin_interrupt_configure (drv_data -> gpio ,
27+ DT_INST_0_HONEYWELL_HMC5883L_INT_GPIOS_PIN ,
28+ GPIO_INT_DISABLE );
2829
2930 drv_data -> data_ready_handler = handler ;
3031 if (handler == NULL ) {
@@ -33,8 +34,9 @@ int hmc5883l_trigger_set(struct device *dev,
3334
3435 drv_data -> data_ready_trigger = * trig ;
3536
36- gpio_pin_enable_callback (drv_data -> gpio ,
37- DT_INST_0_HONEYWELL_HMC5883L_INT_GPIOS_PIN );
37+ gpio_pin_interrupt_configure (drv_data -> gpio ,
38+ DT_INST_0_HONEYWELL_HMC5883L_INT_GPIOS_PIN ,
39+ GPIO_INT_EDGE_TO_ACTIVE );
3840
3941 return 0 ;
4042}
@@ -47,8 +49,9 @@ static void hmc5883l_gpio_callback(struct device *dev,
4749
4850 ARG_UNUSED (pins );
4951
50- gpio_pin_disable_callback (dev ,
51- DT_INST_0_HONEYWELL_HMC5883L_INT_GPIOS_PIN );
52+ gpio_pin_interrupt_configure (dev ,
53+ DT_INST_0_HONEYWELL_HMC5883L_INT_GPIOS_PIN ,
54+ GPIO_INT_DISABLE );
5255
5356#if defined(CONFIG_HMC5883L_TRIGGER_OWN_THREAD )
5457 k_sem_give (& drv_data -> gpio_sem );
@@ -67,8 +70,9 @@ static void hmc5883l_thread_cb(void *arg)
6770 & drv_data -> data_ready_trigger );
6871 }
6972
70- gpio_pin_enable_callback (drv_data -> gpio ,
71- DT_INST_0_HONEYWELL_HMC5883L_INT_GPIOS_PIN );
73+ gpio_pin_interrupt_configure (drv_data -> gpio ,
74+ DT_INST_0_HONEYWELL_HMC5883L_INT_GPIOS_PIN ,
75+ GPIO_INT_EDGE_TO_ACTIVE );
7276}
7377
7478#ifdef CONFIG_HMC5883L_TRIGGER_OWN_THREAD
@@ -111,8 +115,8 @@ int hmc5883l_init_interrupt(struct device *dev)
111115
112116 gpio_pin_configure (drv_data -> gpio ,
113117 DT_INST_0_HONEYWELL_HMC5883L_INT_GPIOS_PIN ,
114- GPIO_DIR_IN | GPIO_INT | GPIO_INT_EDGE |
115- GPIO_INT_ACTIVE_LOW | GPIO_INT_DEBOUNCE );
118+ GPIO_INPUT |
119+ DT_INST_0_HONEYWELL_HMC5883L_INT_GPIOS_FLAGS );
116120
117121 gpio_init_callback (& drv_data -> gpio_cb ,
118122 hmc5883l_gpio_callback ,
@@ -136,8 +140,9 @@ int hmc5883l_init_interrupt(struct device *dev)
136140 drv_data -> dev = dev ;
137141#endif
138142
139- gpio_pin_enable_callback (drv_data -> gpio ,
140- DT_INST_0_HONEYWELL_HMC5883L_INT_GPIOS_PIN );
143+ gpio_pin_interrupt_configure (drv_data -> gpio ,
144+ DT_INST_0_HONEYWELL_HMC5883L_INT_GPIOS_PIN ,
145+ GPIO_INT_EDGE_TO_ACTIVE );
141146
142147 return 0 ;
143148}
0 commit comments