drivers: serial: uart_async_to_irq: Move resetting to disabling function

Move resetting of the receiver state to disabling function so that once
uart is disabled there is no data pending in the module.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
diff --git a/drivers/serial/uart_async_to_irq.c b/drivers/serial/uart_async_to_irq.c
index 59216cb..eed05e8 100644
--- a/drivers/serial/uart_async_to_irq.c
+++ b/drivers/serial/uart_async_to_irq.c
@@ -107,6 +107,10 @@
 	if (data->flags & A2I_RX_ENABLE) {
 		int err;
 
+		if (data->rx.async_rx.pending_bytes == 0) {
+			uart_async_rx_reset(&data->rx.async_rx);
+		}
+
 		err = try_rx_enable(dev, data);
 		if (err == 0) {
 			data->rx.pending_buf_req = 0;
@@ -331,7 +335,6 @@
 		return err;
 	}
 
-	uart_async_rx_reset(&data->rx.async_rx);
 
 	err = try_rx_enable(dev, data);
 	if (err == 0) {
@@ -355,6 +358,8 @@
 		k_sem_take(&data->rx.sem, K_FOREVER);
 	}
 
+	uart_async_rx_reset(&data->rx.async_rx);
+
 	return 0;
 }