[PATCH 27/49] rc-loopback: add RCIOCGIRTX ioctl support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



As an example, this patch adds support for the new RCIOCGIRRX ioctl
to rc-loopback.

Signed-off-by: David Härdeman <david@xxxxxxxxxxx>
---
 drivers/media/rc/rc-loopback.c |   26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/drivers/media/rc/rc-loopback.c b/drivers/media/rc/rc-loopback.c
index 2ae1b5a..ba36fbe 100644
--- a/drivers/media/rc/rc-loopback.c
+++ b/drivers/media/rc/rc-loopback.c
@@ -204,6 +204,31 @@ static int loop_set_ir_rx(struct rc_dev *dev, struct rc_ir_rx *rx)
 	return 0;
 }
 
+/**
+ * loop_get_ir_tx() - returns the current TX settings
+ * @dev: the &struct rc_dev to get the settings for
+ * @tx: the &struct rc_ir_tx to fill in with the current settings
+ *
+ * This function is used to return the current TX settings.
+ */
+static void loop_get_ir_tx(struct rc_dev *dev, struct rc_ir_tx *tx)
+{
+	struct loopback_dev *lodev = dev->priv;
+
+	tx->tx_supported = RXMASK_REGULAR | RXMASK_LEARNING;
+	tx->tx_connected = RXMASK_REGULAR | RXMASK_LEARNING;
+	tx->tx_enabled = lodev->txmask;
+	tx->freq = lodev->txcarrier;
+	tx->freq_min = 1;
+	tx->freq_max = UINT_MAX;
+	tx->duty = lodev->txduty;
+	tx->duty_min = 1;
+	tx->duty_max = 99;
+	tx->resolution = 1;
+	tx->resolution_min = 1;
+	tx->resolution_max = 1;
+}
+
 static int __init loop_init(void)
 {
 	struct rc_dev *rc;
@@ -236,6 +261,7 @@ static int __init loop_init(void)
 	rc->s_idle		= loop_set_idle;
 	rc->get_ir_rx		= loop_get_ir_rx;
 	rc->set_ir_rx		= loop_set_ir_rx;
+	rc->get_ir_tx		= loop_get_ir_tx;
 
 	loopdev.txmask		= RXMASK_REGULAR;
 	loopdev.txcarrier	= 36000;

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux