aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/samsung/fm_si47xx/Si47xx_ioctl.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/samsung/fm_si47xx/Si47xx_ioctl.h')
-rw-r--r--drivers/samsung/fm_si47xx/Si47xx_ioctl.h129
1 files changed, 129 insertions, 0 deletions
diff --git a/drivers/samsung/fm_si47xx/Si47xx_ioctl.h b/drivers/samsung/fm_si47xx/Si47xx_ioctl.h
new file mode 100644
index 0000000..08f8238
--- /dev/null
+++ b/drivers/samsung/fm_si47xx/Si47xx_ioctl.h
@@ -0,0 +1,129 @@
+/*
+ * Si47xx_ioctl.h -- Si47xx FM Radio driver
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#ifndef _Si47xx_IOCTL_H
+#define _Si47xx_IOCTL_H
+
+#include <linux/types.h>
+#include <linux/ioctl.h>
+
+#include "Si47xx_dev.h"
+
+/*****************IOCTLS******************/
+/*magic no*/
+#define Si47xx_IOC_MAGIC 0xFA
+/*max seq no*/
+#define Si47xx_IOC_NR_MAX 40
+
+/*commands*/
+
+#define Si47xx_IOC_POWERUP _IO(Si47xx_IOC_MAGIC, 0)
+
+#define Si47xx_IOC_POWERDOWN _IO(Si47xx_IOC_MAGIC, 1)
+
+#define Si47xx_IOC_BAND_SET _IOW(Si47xx_IOC_MAGIC, 2, int)
+
+#define Si47xx_IOC_CHAN_SPACING_SET _IOW(Si47xx_IOC_MAGIC, 3, int)
+
+#define Si47xx_IOC_CHAN_SELECT _IOW(Si47xx_IOC_MAGIC, 4, u32)
+
+#define Si47xx_IOC_CHAN_GET _IOR(Si47xx_IOC_MAGIC, 5, u32)
+
+#define Si47xx_IOC_SEEK_UP _IOR(Si47xx_IOC_MAGIC, 6, u32)
+
+#define Si47xx_IOC_SEEK_DOWN _IOR(Si47xx_IOC_MAGIC, 7, u32)
+
+/*VNVS:28OCT'09---- Si47xx_IOC_SEEK_AUTO is disabled as of now*/
+/* #define Si47xx_IOC_SEEK_AUTO _IOR(Si47xx_IOC_MAGIC, 8, u32) */
+
+#define Si47xx_IOC_RSSI_SEEK_TH_SET _IOW(Si47xx_IOC_MAGIC, 9, u8)
+
+#define Si47xx_IOC_SEEK_SNR_SET _IOW(Si47xx_IOC_MAGIC, 10, u8)
+
+#define Si47xx_IOC_SEEK_CNT_SET _IOW(Si47xx_IOC_MAGIC, 11, u8)
+
+#define Si47xx_IOC_CUR_RSSI_GET \
+_IOR(Si47xx_IOC_MAGIC, 12, struct rssi_snr_t)
+
+#define Si47xx_IOC_VOLEXT_ENB _IO(Si47xx_IOC_MAGIC, 13)
+
+#define Si47xx_IOC_VOLEXT_DISB _IO(Si47xx_IOC_MAGIC, 14)
+
+#define Si47xx_IOC_VOLUME_SET _IOW(Si47xx_IOC_MAGIC, 15, u8)
+
+#define Si47xx_IOC_VOLUME_GET _IOR(Si47xx_IOC_MAGIC, 16, u8)
+
+#define Si47xx_IOC_MUTE_ON _IO(Si47xx_IOC_MAGIC, 17)
+
+#define Si47xx_IOC_MUTE_OFF _IO(Si47xx_IOC_MAGIC, 18)
+
+#define Si47xx_IOC_MONO_SET _IO(Si47xx_IOC_MAGIC, 19)
+
+#define Si47xx_IOC_STEREO_SET _IO(Si47xx_IOC_MAGIC, 20)
+
+#define Si47xx_IOC_RSTATE_GET \
+_IOR(Si47xx_IOC_MAGIC, 21, struct dev_state_t)
+
+#define Si47xx_IOC_RDS_DATA_GET \
+_IOR(Si47xx_IOC_MAGIC, 22, struct radio_data_t)
+
+#define Si47xx_IOC_RDS_ENABLE _IO(Si47xx_IOC_MAGIC, 23)
+
+#define Si47xx_IOC_RDS_DISABLE _IO(Si47xx_IOC_MAGIC, 24)
+
+#define Si47xx_IOC_RDS_TIMEOUT_SET _IOW(Si47xx_IOC_MAGIC, 25, u32)
+
+#define Si47xx_IOC_SEEK_CANCEL _IO(Si47xx_IOC_MAGIC, 26)
+
+/*VNVS:START 13-OCT'09 :
+ Added IOCTLs for reading the device-id,chip-id,power configuration,
+ system configuration2 registers*/
+#define Si47xx_IOC_DEVICE_ID_GET \
+_IOR(Si47xx_IOC_MAGIC, 27, struct device_id)
+
+#define Si47xx_IOC_CHIP_ID_GET \
+_IOR(Si47xx_IOC_MAGIC, 28, struct chip_id)
+
+#define Si47xx_IOC_SYS_CONFIG2_GET \
+_IOR(Si47xx_IOC_MAGIC, 29, struct sys_config2)
+
+#define Si47xx_IOC_POWER_CONFIG_GET \
+_IO(Si47xx_IOC_MAGIC, 30)
+
+/* For reading AFCRL bit, to check for a valid channel */
+#define Si47xx_IOC_AFCRL_GET _IOR(Si47xx_IOC_MAGIC, 31, u8)
+
+/* Setting DE-emphasis Time Constant.
+For DE=0,TC=50us(Europe,Japan,Australia) and DE=1,TC=75us(USA) */
+#define Si47xx_IOC_DE_SET _IOW(Si47xx_IOC_MAGIC, 32, u8)
+/*VNVS:END*/
+
+#define Si47xx_IOC_SYS_CONFIG3_GET \
+_IOR(Si47xx_IOC_MAGIC, 33, struct sys_config3)
+
+#define Si47xx_IOC_STATUS_RSSI_GET \
+_IOR(Si47xx_IOC_MAGIC, 34, struct status_rssi)
+
+#define Si47xx_IOC_SYS_CONFIG2_SET \
+_IOW(Si47xx_IOC_MAGIC, 35, struct sys_config2)
+
+#define Si47xx_IOC_SYS_CONFIG3_SET \
+_IOW(Si47xx_IOC_MAGIC, 36, struct sys_config3)
+
+#define Si47xx_IOC_DSMUTE_ON _IO(Si47xx_IOC_MAGIC, 37)
+
+#define Si47xx_IOC_DSMUTE_OFF _IO(Si47xx_IOC_MAGIC, 38)
+
+#define Si47xx_IOC_RESET_RDS_DATA _IO(Si47xx_IOC_MAGIC, 39)
+
+#define Si47xx_IOC_SEEK_FULL _IOR(Si47xx_IOC_MAGIC, 40, u32)
+
+
+/*****************************************/
+
+#endif