diff --git a/ccid_common/cuart.c b/ccid_common/cuart.c
index 895717a..fc3cfb6 100644
--- a/ccid_common/cuart.c
+++ b/ccid_common/cuart.c
@@ -53,20 +53,20 @@
 	return cuart->driver->ops->close(cuart);
 }
 
-int card_uart_ctrl(struct card_uart *cuart, enum card_uart_ctl ctl, bool enable)
+int card_uart_ctrl(struct card_uart *cuart, enum card_uart_ctl ctl, int arg)
 {
 	int rc;
 	OSMO_ASSERT(cuart);
 	OSMO_ASSERT(cuart->driver);
 	OSMO_ASSERT(cuart->driver->ops);
 	OSMO_ASSERT(cuart->driver->ops->ctrl);
-	rc = cuart->driver->ops->ctrl(cuart, ctl, enable);
+	rc = cuart->driver->ops->ctrl(cuart, ctl, arg);
 	if (rc < 0)
 		return rc;
 
 	switch (ctl) {
 	case CUART_CTL_RX:
-		cuart->rx_enabled = enable;
+		cuart->rx_enabled = arg ? true : false;
 		break;
 	default:
 		break;
diff --git a/ccid_common/cuart.h b/ccid_common/cuart.h
index 790c277..f35cdd2 100644
--- a/ccid_common/cuart.h
+++ b/ccid_common/cuart.h
@@ -33,7 +33,7 @@
 	int (*async_tx)(struct card_uart *cuart, const uint8_t *data, size_t len);
 	int (*async_rx)(struct card_uart *cuart, uint8_t *data, size_t len);
 
-	int (*ctrl)(struct card_uart *cuart, enum card_uart_ctl ctl, bool enable);
+	int (*ctrl)(struct card_uart *cuart, enum card_uart_ctl ctl, int arg);
 };
 
 /* Card UART driver */
@@ -98,7 +98,7 @@
 /*! Schedule (asynchronous) receive data via UART (after CUART_E_RX_COMPLETE) */
 int card_uart_rx(struct card_uart *cuart, uint8_t *data, size_t len);
 
-int card_uart_ctrl(struct card_uart *cuart, enum card_uart_ctl ctl, bool enable);
+int card_uart_ctrl(struct card_uart *cuart, enum card_uart_ctl ctl, int arg);
 
 /*! Set the Rx notification threshold in number of bytes received */
 void card_uart_set_rx_threshold(struct card_uart *cuart, size_t rx_threshold);
diff --git a/ccid_host/cuart_driver_tty.c b/ccid_host/cuart_driver_tty.c
index 3695b58..10ea60f 100644
--- a/ccid_host/cuart_driver_tty.c
+++ b/ccid_host/cuart_driver_tty.c
@@ -249,7 +249,7 @@
 	return i;
 }
 
-static int tty_uart_ctrl(struct card_uart *cuart, enum card_uart_ctl ctl, bool enable)
+static int tty_uart_ctrl(struct card_uart *cuart, enum card_uart_ctl ctl, int arg)
 {
 	struct termios tio;
 	int rc;
@@ -263,7 +263,7 @@
 		}
 		/* We do our best here, but lots of [USB] serial drivers seem to ignore
 		 * CREAD, see https://bugzilla.kernel.org/show_bug.cgi?id=205033 */
-		if (enable)
+		if (arg)
 			tio.c_cflag |= CREAD;
 		else
 			tio.c_cflag &= ~CREAD;
@@ -274,8 +274,8 @@
 		}
 		break;
 	case CUART_CTL_RST:
-		_set_rts(cuart->u.tty.ofd.fd, enable);
-		if (enable)
+		_set_rts(cuart->u.tty.ofd.fd, arg ? true : false);
+		if (arg)
 			_flush(cuart->u.tty.ofd.fd);
 		break;
 	case CUART_CTL_POWER:
