cuart: fix etu calculation

Change-Id: Ib2f83654bdaae5090bb1dfd75e0906551d6b6aa7
diff --git a/ccid_common/cuart.c b/ccid_common/cuart.c
index 9a68167..1ae50c6 100644
--- a/ccid_common/cuart.c
+++ b/ccid_common/cuart.c
@@ -29,8 +29,12 @@
 /* obtain the current ETU in us */
 static int get_etu_in_us(struct card_uart *cuart)
 {
-	/* FIXME: actually implement this based on the real baud rate */
-	return (1000000/9600);
+	OSMO_ASSERT(cuart);
+	OSMO_ASSERT(cuart->driver);
+	OSMO_ASSERT(cuart->driver->ops);
+	OSMO_ASSERT(cuart->driver->ops->ctrl);
+
+	return 1e6 / cuart->driver->ops->ctrl(cuart, CUART_CTL_GET_BAUDRATE, 0);
 }
 
 /* software waiting-time timer has expired */