diff --git a/arch/arm/src/stm32/stm32_1wire.c b/arch/arm/src/stm32/stm32_1wire.c index 44f9f68d31..cc728312d4 100644 --- a/arch/arm/src/stm32/stm32_1wire.c +++ b/arch/arm/src/stm32/stm32_1wire.c @@ -981,15 +981,12 @@ static int stm32_1wire_isr(int irq, void *context, void *arg) stm32_1wire_send(priv, READ_TX); break; - case ONEWIRETASK_WRITEBIT: - *priv->byte = 0; - priv->msgs = NULL; - priv->result = OK; - nxsem_post(&priv->sem_isr); - break; - case ONEWIRETASK_READBIT: *priv->byte = (dr == READ_RX1) ? 1 : 0; + + /* Fall through */ + + case ONEWIRETASK_WRITEBIT: priv->msgs = NULL; priv->result = OK; nxsem_post(&priv->sem_isr); diff --git a/arch/arm/src/stm32l4/stm32l4_1wire.c b/arch/arm/src/stm32l4/stm32l4_1wire.c index 2892f08e71..b884cd57b2 100644 --- a/arch/arm/src/stm32l4/stm32l4_1wire.c +++ b/arch/arm/src/stm32l4/stm32l4_1wire.c @@ -906,15 +906,12 @@ static int stm32_1wire_isr(int irq, void *context, void *arg) stm32_1wire_send(priv, READ_TX); break; - case ONEWIRETASK_WRITEBIT: - *priv->byte = 0; - priv->msgs = NULL; - priv->result = OK; - nxsem_post(&priv->sem_isr); - break; - case ONEWIRETASK_READBIT: *priv->byte = (dr == READ_RX1) ? 1 : 0; + + /* Fall through */ + + case ONEWIRETASK_WRITEBIT: priv->msgs = NULL; priv->result = OK; nxsem_post(&priv->sem_isr);