aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/media/dvb/dvb-core/dvb_frontend.c442
-rw-r--r--drivers/media/dvb/dvb-core/dvb_frontend.h8
-rw-r--r--drivers/media/dvb/frontends/cx24116.c6
-rw-r--r--include/linux/dvb/frontend.h108
4 files changed, 282 insertions, 282 deletions
diff --git a/drivers/media/dvb/dvb-core/dvb_frontend.c b/drivers/media/dvb/dvb-core/dvb_frontend.c
index 620c62084029..9c4761506d2d 100644
--- a/drivers/media/dvb/dvb-core/dvb_frontend.c
+++ b/drivers/media/dvb/dvb-core/dvb_frontend.c
@@ -755,235 +755,235 @@ static int dvb_frontend_check_parameters(struct dvb_frontend *fe,
755 return 0; 755 return 0;
756} 756}
757 757
758struct tv_cmds_h tv_cmds[] = { 758struct dtv_cmds_h dtv_cmds[] = {
759 [TV_SEQ_UNDEFINED] = { 759 [DTV_SEQ_UNDEFINED] = {
760 .name = "TV_SEQ_UNDEFINED", 760 .name = "DTV_SEQ_UNDEFINED",
761 .cmd = TV_SEQ_UNDEFINED, 761 .cmd = DTV_SEQ_UNDEFINED,
762 .set = 1, 762 .set = 1,
763 }, 763 },
764 [TV_SEQ_START] = { 764 [DTV_SEQ_START] = {
765 .name = "TV_SEQ_START", 765 .name = "DTV_SEQ_START",
766 .cmd = TV_SEQ_START, 766 .cmd = DTV_SEQ_START,
767 .set = 1, 767 .set = 1,
768 }, 768 },
769 [TV_SEQ_CONTINUE] = { 769 [DTV_SEQ_CONTINUE] = {
770 .name = "TV_SEQ_CONTINUE", 770 .name = "DTV_SEQ_CONTINUE",
771 .cmd = TV_SEQ_CONTINUE, 771 .cmd = DTV_SEQ_CONTINUE,
772 .set = 1, 772 .set = 1,
773 }, 773 },
774 [TV_SEQ_COMPLETE] = { 774 [DTV_SEQ_COMPLETE] = {
775 .name = "TV_SEQ_COMPLETE", 775 .name = "DTV_SEQ_COMPLETE",
776 .cmd = TV_SEQ_COMPLETE, 776 .cmd = DTV_SEQ_COMPLETE,
777 .set = 1, 777 .set = 1,
778 }, 778 },
779 [TV_SEQ_TERMINATE] = { 779 [DTV_SEQ_TERMINATE] = {
780 .name = "TV_SEQ_TERMINATE", 780 .name = "DTV_SEQ_TERMINATE",
781 .cmd = TV_SEQ_TERMINATE, 781 .cmd = DTV_SEQ_TERMINATE,
782 .set = 1, 782 .set = 1,
783 }, 783 },
784 784
785 /* Set */ 785 /* Set */
786 [TV_SET_FREQUENCY] = { 786 [DTV_SET_FREQUENCY] = {
787 .name = "TV_SET_FREQUENCY", 787 .name = "DTV_SET_FREQUENCY",
788 .cmd = TV_SET_FREQUENCY, 788 .cmd = DTV_SET_FREQUENCY,
789 .set = 1, 789 .set = 1,
790 }, 790 },
791 [TV_SET_BANDWIDTH] = { 791 [DTV_SET_BANDWIDTH] = {
792 .name = "TV_SET_BANDWIDTH", 792 .name = "DTV_SET_BANDWIDTH",
793 .cmd = TV_SET_BANDWIDTH, 793 .cmd = DTV_SET_BANDWIDTH,
794 .set = 1, 794 .set = 1,
795 }, 795 },
796 [TV_SET_MODULATION] = { 796 [DTV_SET_MODULATION] = {
797 .name = "TV_SET_MODULATION", 797 .name = "DTV_SET_MODULATION",
798 .cmd = TV_SET_MODULATION, 798 .cmd = DTV_SET_MODULATION,
799 .set = 1, 799 .set = 1,
800 }, 800 },
801 [TV_SET_INVERSION] = { 801 [DTV_SET_INVERSION] = {
802 .name = "TV_SET_INVERSION", 802 .name = "DTV_SET_INVERSION",
803 .cmd = TV_SET_INVERSION, 803 .cmd = DTV_SET_INVERSION,
804 .set = 1, 804 .set = 1,
805 }, 805 },
806 [TV_SET_DISEQC_MASTER] = { 806 [DTV_SET_DISEQC_MASTER] = {
807 .name = "TV_SET_DISEQC_MASTER", 807 .name = "DTV_SET_DISEQC_MASTER",
808 .cmd = TV_SET_DISEQC_MASTER, 808 .cmd = DTV_SET_DISEQC_MASTER,
809 .set = 1, 809 .set = 1,
810 .buffer = 1, 810 .buffer = 1,
811 }, 811 },
812 [TV_SET_SYMBOLRATE] = { 812 [DTV_SET_SYMBOLRATE] = {
813 .name = "TV_SET_SYMBOLRATE", 813 .name = "DTV_SET_SYMBOLRATE",
814 .cmd = TV_SET_SYMBOLRATE, 814 .cmd = DTV_SET_SYMBOLRATE,
815 .set = 1, 815 .set = 1,
816 }, 816 },
817 [TV_SET_INNERFEC] = { 817 [DTV_SET_INNERFEC] = {
818 .name = "TV_SET_INNERFEC", 818 .name = "DTV_SET_INNERFEC",
819 .cmd = TV_SET_INNERFEC, 819 .cmd = DTV_SET_INNERFEC,
820 .set = 1, 820 .set = 1,
821 }, 821 },
822 [TV_SET_VOLTAGE] = { 822 [DTV_SET_VOLTAGE] = {
823 .name = "TV_SET_VOLTAGE", 823 .name = "DTV_SET_VOLTAGE",
824 .cmd = TV_SET_VOLTAGE, 824 .cmd = DTV_SET_VOLTAGE,
825 .set = 1, 825 .set = 1,
826 }, 826 },
827 [TV_SET_TONE] = { 827 [DTV_SET_TONE] = {
828 .name = "TV_SET_TONE", 828 .name = "DTV_SET_TONE",
829 .cmd = TV_SET_TONE, 829 .cmd = DTV_SET_TONE,
830 .set = 1, 830 .set = 1,
831 }, 831 },
832 [TV_SET_PILOT] = { 832 [DTV_SET_PILOT] = {
833 .name = "TV_SET_PILOT", 833 .name = "DTV_SET_PILOT",
834 .cmd = TV_SET_PILOT, 834 .cmd = DTV_SET_PILOT,
835 .set = 1, 835 .set = 1,
836 }, 836 },
837 [TV_SET_ROLLOFF] = { 837 [DTV_SET_ROLLOFF] = {
838 .name = "TV_SET_ROLLOFF", 838 .name = "DTV_SET_ROLLOFF",
839 .cmd = TV_SET_ROLLOFF, 839 .cmd = DTV_SET_ROLLOFF,
840 .set = 1, 840 .set = 1,
841 }, 841 },
842 [TV_SET_DELIVERY_SYSTEM] = { 842 [DTV_SET_DELIVERY_SYSTEM] = {
843 .name = "TV_SET_DELIVERY_SYSTEM", 843 .name = "DTV_SET_DELIVERY_SYSTEM",
844 .cmd = TV_SET_DELIVERY_SYSTEM, 844 .cmd = DTV_SET_DELIVERY_SYSTEM,
845 .set = 1, 845 .set = 1,
846 }, 846 },
847 [TV_SET_ISDB_SEGMENT_NUM] = { 847 [DTV_SET_ISDB_SEGMENT_NUM] = {
848 .name = "TV_SET_ISDB_SEGMENT_NUM", 848 .name = "DTV_SET_ISDB_SEGMENT_NUM",
849 .cmd = TV_SET_ISDB_SEGMENT_NUM, 849 .cmd = DTV_SET_ISDB_SEGMENT_NUM,
850 .set = 1, 850 .set = 1,
851 }, 851 },
852 [TV_SET_ISDB_SEGMENT_WIDTH] = { 852 [DTV_SET_ISDB_SEGMENT_WIDTH] = {
853 .name = "TV_SET_ISDB_SEGMENT_WIDTH", 853 .name = "DTV_SET_ISDB_SEGMENT_WIDTH",
854 .cmd = TV_SET_ISDB_SEGMENT_WIDTH, 854 .cmd = DTV_SET_ISDB_SEGMENT_WIDTH,
855 .set = 1, 855 .set = 1,
856 }, 856 },
857 857
858 /* Get */ 858 /* Get */
859 [TV_GET_FREQUENCY] = { 859 [DTV_GET_FREQUENCY] = {
860 .name = "TV_GET_FREQUENCY", 860 .name = "DTV_GET_FREQUENCY",
861 .cmd = TV_GET_FREQUENCY, 861 .cmd = DTV_GET_FREQUENCY,
862 .set = 0, 862 .set = 0,
863 }, 863 },
864 [TV_GET_BANDWIDTH] = { 864 [DTV_GET_BANDWIDTH] = {
865 .name = "TV_GET_BANDWIDTH", 865 .name = "DTV_GET_BANDWIDTH",
866 .cmd = TV_GET_BANDWIDTH, 866 .cmd = DTV_GET_BANDWIDTH,
867 .set = 0, 867 .set = 0,
868 }, 868 },
869 [TV_GET_MODULATION] = { 869 [DTV_GET_MODULATION] = {
870 .name = "TV_GET_MODULATION", 870 .name = "DTV_GET_MODULATION",
871 .cmd = TV_GET_MODULATION, 871 .cmd = DTV_GET_MODULATION,
872 .set = 0, 872 .set = 0,
873 }, 873 },
874 [TV_GET_INVERSION] = { 874 [DTV_GET_INVERSION] = {
875 .name = "TV_GET_INVERSION", 875 .name = "DTV_GET_INVERSION",
876 .cmd = TV_GET_INVERSION, 876 .cmd = DTV_GET_INVERSION,
877 .set = 0, 877 .set = 0,
878 }, 878 },
879 [TV_GET_DISEQC_SLAVE_REPLY] = { 879 [DTV_GET_DISEQC_SLAVE_REPLY] = {
880 .name = "TV_GET_DISEQC_SLAVE_REPLY", 880 .name = "DTV_GET_DISEQC_SLAVE_REPLY",
881 .cmd = TV_GET_DISEQC_SLAVE_REPLY, 881 .cmd = DTV_GET_DISEQC_SLAVE_REPLY,
882 .set = 0, 882 .set = 0,
883 .buffer = 1, 883 .buffer = 1,
884 }, 884 },
885 [TV_GET_SYMBOLRATE] = { 885 [DTV_GET_SYMBOLRATE] = {
886 .name = "TV_GET_SYMBOLRATE", 886 .name = "DTV_GET_SYMBOLRATE",
887 .cmd = TV_GET_SYMBOLRATE, 887 .cmd = DTV_GET_SYMBOLRATE,
888 .set = 0, 888 .set = 0,
889 }, 889 },
890 [TV_GET_INNERFEC] = { 890 [DTV_GET_INNERFEC] = {
891 .name = "TV_GET_INNERFEC", 891 .name = "DTV_GET_INNERFEC",
892 .cmd = TV_GET_INNERFEC, 892 .cmd = DTV_GET_INNERFEC,
893 .set = 0, 893 .set = 0,
894 }, 894 },
895 [TV_GET_VOLTAGE] = { 895 [DTV_GET_VOLTAGE] = {
896 .name = "TV_GET_VOLTAGE", 896 .name = "DTV_GET_VOLTAGE",
897 .cmd = TV_GET_VOLTAGE, 897 .cmd = DTV_GET_VOLTAGE,
898 .set = 0, 898 .set = 0,
899 }, 899 },
900 [TV_GET_TONE] = { 900 [DTV_GET_TONE] = {
901 .name = "TV_GET_TONE", 901 .name = "DTV_GET_TONE",
902 .cmd = TV_GET_TONE, 902 .cmd = DTV_GET_TONE,
903 .set = 0, 903 .set = 0,
904 }, 904 },
905 [TV_GET_PILOT] = { 905 [DTV_GET_PILOT] = {
906 .name = "TV_GET_PILOT", 906 .name = "DTV_GET_PILOT",
907 .cmd = TV_GET_PILOT, 907 .cmd = DTV_GET_PILOT,
908 .set = 0, 908 .set = 0,
909 }, 909 },
910 [TV_GET_ROLLOFF] = { 910 [DTV_GET_ROLLOFF] = {
911 .name = "TV_GET_ROLLOFF", 911 .name = "DTV_GET_ROLLOFF",
912 .cmd = TV_GET_ROLLOFF, 912 .cmd = DTV_GET_ROLLOFF,
913 .set = 0, 913 .set = 0,
914 }, 914 },
915 [TV_GET_DELIVERY_SYSTEM] = { 915 [DTV_GET_DELIVERY_SYSTEM] = {
916 .name = "TV_GET_DELIVERY_SYSTEM", 916 .name = "DTV_GET_DELIVERY_SYSTEM",
917 .cmd = TV_GET_DELIVERY_SYSTEM, 917 .cmd = DTV_GET_DELIVERY_SYSTEM,
918 .set = 0, 918 .set = 0,
919 }, 919 },
920 [TV_GET_ISDB_SEGMENT_NUM] = { 920 [DTV_GET_ISDB_SEGMENT_NUM] = {
921 .name = "TV_GET_ISDB_SEGMENT_NUM", 921 .name = "DTV_GET_ISDB_SEGMENT_NUM",
922 .cmd = TV_GET_ISDB_SEGMENT_NUM, 922 .cmd = DTV_GET_ISDB_SEGMENT_NUM,
923 .set = 0, 923 .set = 0,
924 }, 924 },
925 [TV_GET_ISDB_SEGMENT_WIDTH] = { 925 [DTV_GET_ISDB_SEGMENT_WIDTH] = {
926 .name = "TV_GET_ISDB_SEGMENT_WIDTH", 926 .name = "DTV_GET_ISDB_SEGMENT_WIDTH",
927 .cmd = TV_GET_ISDB_SEGMENT_WIDTH, 927 .cmd = DTV_GET_ISDB_SEGMENT_WIDTH,
928 .set = 0, 928 .set = 0,
929 }, 929 },
930 [TV_GET_ISDB_LAYERA_FEC] = { 930 [DTV_GET_ISDB_LAYERA_FEC] = {
931 .name = "TV_GET_ISDB_LAYERA_FEC", 931 .name = "DTV_GET_ISDB_LAYERA_FEC",
932 .cmd = TV_GET_ISDB_LAYERA_FEC, 932 .cmd = DTV_GET_ISDB_LAYERA_FEC,
933 .set = 0, 933 .set = 0,
934 }, 934 },
935 [TV_GET_ISDB_LAYERA_MODULATION] = { 935 [DTV_GET_ISDB_LAYERA_MODULATION] = {
936 .name = "TV_GET_ISDB_LAYERA_MODULATION", 936 .name = "DTV_GET_ISDB_LAYERA_MODULATION",
937 .cmd = TV_GET_ISDB_LAYERA_MODULATION, 937 .cmd = DTV_GET_ISDB_LAYERA_MODULATION,
938 .set = 0, 938 .set = 0,
939 }, 939 },
940 [TV_GET_ISDB_LAYERA_SEGMENT_WIDTH] = { 940 [DTV_GET_ISDB_LAYERA_SEGMENT_WIDTH] = {
941 .name = "TV_GET_ISDB_LAYERA_SEGMENT_WIDTH", 941 .name = "DTV_GET_ISDB_LAYERA_SEGMENT_WIDTH",
942 .cmd = TV_GET_ISDB_LAYERA_SEGMENT_WIDTH, 942 .cmd = DTV_GET_ISDB_LAYERA_SEGMENT_WIDTH,
943 .set = 0, 943 .set = 0,
944 }, 944 },
945 [TV_GET_ISDB_LAYERB_FEC] = { 945 [DTV_GET_ISDB_LAYERB_FEC] = {
946 .name = "TV_GET_ISDB_LAYERB_FEC", 946 .name = "DTV_GET_ISDB_LAYERB_FEC",
947 .cmd = TV_GET_ISDB_LAYERB_FEC, 947 .cmd = DTV_GET_ISDB_LAYERB_FEC,
948 .set = 0, 948 .set = 0,
949 }, 949 },
950 [TV_GET_ISDB_LAYERB_MODULATION] = { 950 [DTV_GET_ISDB_LAYERB_MODULATION] = {
951 .name = "TV_GET_ISDB_LAYERB_MODULATION", 951 .name = "DTV_GET_ISDB_LAYERB_MODULATION",
952 .cmd = TV_GET_ISDB_LAYERB_MODULATION, 952 .cmd = DTV_GET_ISDB_LAYERB_MODULATION,
953 .set = 0, 953 .set = 0,
954 }, 954 },
955 [TV_GET_ISDB_LAYERB_SEGMENT_WIDTH] = { 955 [DTV_GET_ISDB_LAYERB_SEGMENT_WIDTH] = {
956 .name = "TV_GET_ISDB_LAYERB_SEGMENT_WIDTH", 956 .name = "DTV_GET_ISDB_LAYERB_SEGMENT_WIDTH",
957 .cmd = TV_GET_ISDB_LAYERB_SEGMENT_WIDTH, 957 .cmd = DTV_GET_ISDB_LAYERB_SEGMENT_WIDTH,
958 .set = 0, 958 .set = 0,
959 }, 959 },
960 [TV_GET_ISDB_LAYERC_FEC] = { 960 [DTV_GET_ISDB_LAYERC_FEC] = {
961 .name = "TV_GET_ISDB_LAYERC_FEC", 961 .name = "DTV_GET_ISDB_LAYERC_FEC",
962 .cmd = TV_GET_ISDB_LAYERC_FEC, 962 .cmd = DTV_GET_ISDB_LAYERC_FEC,
963 .set = 0, 963 .set = 0,
964 }, 964 },
965 [TV_GET_ISDB_LAYERC_MODULATION] = { 965 [DTV_GET_ISDB_LAYERC_MODULATION] = {
966 .name = "TV_GET_ISDB_LAYERC_MODULATION", 966 .name = "DTV_GET_ISDB_LAYERC_MODULATION",
967 .cmd = TV_GET_ISDB_LAYERC_MODULATION, 967 .cmd = DTV_GET_ISDB_LAYERC_MODULATION,
968 .set = 0, 968 .set = 0,
969 }, 969 },
970 [TV_GET_ISDB_LAYERC_SEGMENT_WIDTH] = { 970 [DTV_GET_ISDB_LAYERC_SEGMENT_WIDTH] = {
971 .name = "TV_GET_ISDB_LAYERC_SEGMENT_WIDTH", 971 .name = "DTV_GET_ISDB_LAYERC_SEGMENT_WIDTH",
972 .cmd = TV_GET_ISDB_LAYERC_SEGMENT_WIDTH, 972 .cmd = DTV_GET_ISDB_LAYERC_SEGMENT_WIDTH,
973 .set = 0, 973 .set = 0,
974 }, 974 },
975}; 975};
976 976
977void tv_property_dump(tv_property_t *tvp) 977void dtv_property_dump(dtv_property_t *tvp)
978{ 978{
979 int i; 979 int i;
980 980
981 printk("%s() tvp.cmd = 0x%08x (%s)\n" 981 printk("%s() tvp.cmd = 0x%08x (%s)\n"
982 ,__FUNCTION__ 982 ,__FUNCTION__
983 ,tvp->cmd 983 ,tvp->cmd
984 ,tv_cmds[ tvp->cmd ].name); 984 ,dtv_cmds[ tvp->cmd ].name);
985 985
986 if(tv_cmds[ tvp->cmd ].buffer) { 986 if(dtv_cmds[ tvp->cmd ].buffer) {
987 987
988 printk("%s() tvp.u.buffer.len = 0x%02x\n" 988 printk("%s() tvp.u.buffer.len = 0x%02x\n"
989 ,__FUNCTION__ 989 ,__FUNCTION__
@@ -1008,7 +1008,7 @@ int is_legacy_delivery_system(fe_delivery_system_t s)
1008 return 0; 1008 return 0;
1009} 1009}
1010 1010
1011int tv_property_cache_submit(struct dvb_frontend *fe) 1011int dtv_property_cache_submit(struct dvb_frontend *fe)
1012{ 1012{
1013 1013
1014 /* We have to do one of two things: 1014 /* We have to do one of two things:
@@ -1036,7 +1036,7 @@ int tv_property_cache_submit(struct dvb_frontend *fe)
1036 1036
1037 int r; 1037 int r;
1038 1038
1039 struct tv_frontend_properties *c = &fe->tv_property_cache; 1039 struct dtv_frontend_properties *c = &fe->dtv_property_cache;
1040 struct dvb_frontend_private *fepriv = fe->frontend_priv; 1040 struct dvb_frontend_private *fepriv = fe->frontend_priv;
1041 struct dvb_frontend_parameters p; 1041 struct dvb_frontend_parameters p;
1042 1042
@@ -1115,7 +1115,7 @@ int tv_property_cache_submit(struct dvb_frontend *fe)
1115 case _16APSK: 1115 case _16APSK:
1116 case NBC_QPSK: 1116 case NBC_QPSK:
1117 /* Just post a notification to the demod driver and let it pull 1117 /* Just post a notification to the demod driver and let it pull
1118 * the specific values it wants from its tv_property_cache. 1118 * the specific values it wants from its dtv_property_cache.
1119 * It can decide how best to use those parameters. 1119 * It can decide how best to use those parameters.
1120 * IOCTL will call set_frontend (by default) due to zigzag 1120 * IOCTL will call set_frontend (by default) due to zigzag
1121 * support etc. 1121 * support etc.
@@ -1161,147 +1161,147 @@ static int dvb_frontend_ioctl_legacy(struct inode *inode, struct file *file,
1161static int dvb_frontend_ioctl_properties(struct inode *inode, struct file *file, 1161static int dvb_frontend_ioctl_properties(struct inode *inode, struct file *file,
1162 unsigned int cmd, void *parg); 1162 unsigned int cmd, void *parg);
1163 1163
1164int tv_property_process(struct dvb_frontend *fe, tv_property_t *tvp, 1164int dtv_property_process(struct dvb_frontend *fe, dtv_property_t *tvp,
1165 struct inode *inode, struct file *file) 1165 struct inode *inode, struct file *file)
1166{ 1166{
1167 int r = 0; 1167 int r = 0;
1168 struct dvb_frontend_private *fepriv = fe->frontend_priv; 1168 struct dvb_frontend_private *fepriv = fe->frontend_priv;
1169 printk("%s()\n", __FUNCTION__); 1169 printk("%s()\n", __FUNCTION__);
1170 tv_property_dump(tvp); 1170 dtv_property_dump(tvp);
1171 1171
1172 switch(tvp->cmd) { 1172 switch(tvp->cmd) {
1173 case TV_SEQ_START: 1173 case DTV_SEQ_START:
1174 case TV_SEQ_TERMINATE: 1174 case DTV_SEQ_TERMINATE:
1175 /* Reset a cache of data specific to the frontend here. This does 1175 /* Reset a cache of data specific to the frontend here. This does
1176 * not effect hardware. 1176 * not effect hardware.
1177 */ 1177 */
1178 printk("%s() Flushing property cache\n", __FUNCTION__); 1178 printk("%s() Flushing property cache\n", __FUNCTION__);
1179 memset(&fe->tv_property_cache, 0, sizeof(struct tv_frontend_properties)); 1179 memset(&fe->dtv_property_cache, 0, sizeof(struct dtv_frontend_properties));
1180 fe->tv_property_cache.state = TV_SEQ_START; 1180 fe->dtv_property_cache.state = DTV_SEQ_START;
1181 fe->tv_property_cache.delivery_system = SYS_UNDEFINED; 1181 fe->dtv_property_cache.delivery_system = SYS_UNDEFINED;
1182 break; 1182 break;
1183 case TV_SEQ_COMPLETE: 1183 case DTV_SEQ_COMPLETE:
1184 /* interpret the cache of data, build either a traditional frontend 1184 /* interpret the cache of data, build either a traditional frontend
1185 * tunerequest and submit it to a subset of the ioctl handler, 1185 * tunerequest and submit it to a subset of the ioctl handler,
1186 * or, call a new undefined method on the frontend to deal with 1186 * or, call a new undefined method on the frontend to deal with
1187 * all new tune requests. 1187 * all new tune requests.
1188 */ 1188 */
1189 fe->tv_property_cache.state = TV_SEQ_COMPLETE; 1189 fe->dtv_property_cache.state = DTV_SEQ_COMPLETE;
1190 printk("%s() Finalised property cache\n", __FUNCTION__); 1190 printk("%s() Finalised property cache\n", __FUNCTION__);
1191 r |= tv_property_cache_submit(fe); 1191 r |= dtv_property_cache_submit(fe);
1192 r |= dvb_frontend_ioctl_legacy(inode, file, FE_SET_FRONTEND, 1192 r |= dvb_frontend_ioctl_legacy(inode, file, FE_SET_FRONTEND,
1193 &fepriv->parameters); 1193 &fepriv->parameters);
1194 break; 1194 break;
1195 case TV_SET_FREQUENCY: 1195 case DTV_SET_FREQUENCY:
1196 fe->tv_property_cache.frequency = tvp->u.data; 1196 fe->dtv_property_cache.frequency = tvp->u.data;
1197 break; 1197 break;
1198 case TV_GET_FREQUENCY: 1198 case DTV_GET_FREQUENCY:
1199 tvp->u.data = fe->tv_property_cache.frequency; 1199 tvp->u.data = fe->dtv_property_cache.frequency;
1200 break; 1200 break;
1201 case TV_SET_MODULATION: 1201 case DTV_SET_MODULATION:
1202 fe->tv_property_cache.modulation = tvp->u.data; 1202 fe->dtv_property_cache.modulation = tvp->u.data;
1203 break; 1203 break;
1204 case TV_GET_MODULATION: 1204 case DTV_GET_MODULATION:
1205 tvp->u.data = fe->tv_property_cache.modulation; 1205 tvp->u.data = fe->dtv_property_cache.modulation;
1206 break; 1206 break;
1207 case TV_SET_BANDWIDTH: 1207 case DTV_SET_BANDWIDTH:
1208 fe->tv_property_cache.bandwidth = tvp->u.data; 1208 fe->dtv_property_cache.bandwidth = tvp->u.data;
1209 break; 1209 break;
1210 case TV_GET_BANDWIDTH: 1210 case DTV_GET_BANDWIDTH:
1211 tvp->u.data = fe->tv_property_cache.bandwidth; 1211 tvp->u.data = fe->dtv_property_cache.bandwidth;
1212 break; 1212 break;
1213 case TV_SET_INVERSION: 1213 case DTV_SET_INVERSION:
1214 fe->tv_property_cache.inversion = tvp->u.data; 1214 fe->dtv_property_cache.inversion = tvp->u.data;
1215 break; 1215 break;
1216 case TV_GET_INVERSION: 1216 case DTV_GET_INVERSION:
1217 tvp->u.data = fe->tv_property_cache.inversion; 1217 tvp->u.data = fe->dtv_property_cache.inversion;
1218 break; 1218 break;
1219 case TV_SET_SYMBOLRATE: 1219 case DTV_SET_SYMBOLRATE:
1220 fe->tv_property_cache.symbol_rate = tvp->u.data; 1220 fe->dtv_property_cache.symbol_rate = tvp->u.data;
1221 break; 1221 break;
1222 case TV_GET_SYMBOLRATE: 1222 case DTV_GET_SYMBOLRATE:
1223 tvp->u.data = fe->tv_property_cache.symbol_rate; 1223 tvp->u.data = fe->dtv_property_cache.symbol_rate;
1224 break; 1224 break;
1225 case TV_SET_INNERFEC: 1225 case DTV_SET_INNERFEC:
1226 fe->tv_property_cache.fec_inner = tvp->u.data; 1226 fe->dtv_property_cache.fec_inner = tvp->u.data;
1227 break; 1227 break;
1228 case TV_GET_INNERFEC: 1228 case DTV_GET_INNERFEC:
1229 tvp->u.data = fe->tv_property_cache.fec_inner; 1229 tvp->u.data = fe->dtv_property_cache.fec_inner;
1230 break; 1230 break;
1231 case TV_SET_PILOT: 1231 case DTV_SET_PILOT:
1232 fe->tv_property_cache.pilot = tvp->u.data; 1232 fe->dtv_property_cache.pilot = tvp->u.data;
1233 break; 1233 break;
1234 case TV_GET_PILOT: 1234 case DTV_GET_PILOT:
1235 tvp->u.data = fe->tv_property_cache.pilot; 1235 tvp->u.data = fe->dtv_property_cache.pilot;
1236 break; 1236 break;
1237 case TV_SET_ROLLOFF: 1237 case DTV_SET_ROLLOFF:
1238 fe->tv_property_cache.rolloff = tvp->u.data; 1238 fe->dtv_property_cache.rolloff = tvp->u.data;
1239 break; 1239 break;
1240 case TV_GET_ROLLOFF: 1240 case DTV_GET_ROLLOFF:
1241 tvp->u.data = fe->tv_property_cache.rolloff; 1241 tvp->u.data = fe->dtv_property_cache.rolloff;
1242 break; 1242 break;
1243 case TV_SET_DELIVERY_SYSTEM: 1243 case DTV_SET_DELIVERY_SYSTEM:
1244 fe->tv_property_cache.delivery_system = tvp->u.data; 1244 fe->dtv_property_cache.delivery_system = tvp->u.data;
1245 break; 1245 break;
1246 case TV_GET_DELIVERY_SYSTEM: 1246 case DTV_GET_DELIVERY_SYSTEM:
1247 tvp->u.data = fe->tv_property_cache.delivery_system; 1247 tvp->u.data = fe->dtv_property_cache.delivery_system;
1248 break; 1248 break;
1249 1249
1250 /* ISDB-T Support here */ 1250 /* ISDB-T Support here */
1251 case TV_SET_ISDB_SEGMENT_NUM: 1251 case DTV_SET_ISDB_SEGMENT_NUM:
1252 fe->tv_property_cache.isdb_segment_num = tvp->u.data; 1252 fe->dtv_property_cache.isdb_segment_num = tvp->u.data;
1253 break; 1253 break;
1254 case TV_GET_ISDB_SEGMENT_NUM: 1254 case DTV_GET_ISDB_SEGMENT_NUM:
1255 tvp->u.data = fe->tv_property_cache.isdb_segment_num; 1255 tvp->u.data = fe->dtv_property_cache.isdb_segment_num;
1256 break; 1256 break;
1257 case TV_SET_ISDB_SEGMENT_WIDTH: 1257 case DTV_SET_ISDB_SEGMENT_WIDTH:
1258 fe->tv_property_cache.isdb_segment_width = tvp->u.data; 1258 fe->dtv_property_cache.isdb_segment_width = tvp->u.data;
1259 break; 1259 break;
1260 case TV_GET_ISDB_SEGMENT_WIDTH: 1260 case DTV_GET_ISDB_SEGMENT_WIDTH:
1261 tvp->u.data = fe->tv_property_cache.isdb_segment_width; 1261 tvp->u.data = fe->dtv_property_cache.isdb_segment_width;
1262 break; 1262 break;
1263 case TV_GET_ISDB_LAYERA_FEC: 1263 case DTV_GET_ISDB_LAYERA_FEC:
1264 tvp->u.data = fe->tv_property_cache.isdb_layera_fec; 1264 tvp->u.data = fe->dtv_property_cache.isdb_layera_fec;
1265 break; 1265 break;
1266 case TV_GET_ISDB_LAYERA_MODULATION: 1266 case DTV_GET_ISDB_LAYERA_MODULATION:
1267 tvp->u.data = fe->tv_property_cache.isdb_layera_modulation; 1267 tvp->u.data = fe->dtv_property_cache.isdb_layera_modulation;
1268 break; 1268 break;
1269 case TV_GET_ISDB_LAYERA_SEGMENT_WIDTH: 1269 case DTV_GET_ISDB_LAYERA_SEGMENT_WIDTH:
1270 tvp->u.data = fe->tv_property_cache.isdb_layera_segment_width; 1270 tvp->u.data = fe->dtv_property_cache.isdb_layera_segment_width;
1271 break; 1271 break;
1272 case TV_GET_ISDB_LAYERB_FEC: 1272 case DTV_GET_ISDB_LAYERB_FEC:
1273 tvp->u.data = fe->tv_property_cache.isdb_layerb_fec; 1273 tvp->u.data = fe->dtv_property_cache.isdb_layerb_fec;
1274 break; 1274 break;
1275 case TV_GET_ISDB_LAYERB_MODULATION: 1275 case DTV_GET_ISDB_LAYERB_MODULATION:
1276 tvp->u.data = fe->tv_property_cache.isdb_layerb_modulation; 1276 tvp->u.data = fe->dtv_property_cache.isdb_layerb_modulation;
1277 break; 1277 break;
1278 case TV_GET_ISDB_LAYERB_SEGMENT_WIDTH: 1278 case DTV_GET_ISDB_LAYERB_SEGMENT_WIDTH:
1279 tvp->u.data = fe->tv_property_cache.isdb_layerb_segment_width; 1279 tvp->u.data = fe->dtv_property_cache.isdb_layerb_segment_width;
1280 break; 1280 break;
1281 case TV_GET_ISDB_LAYERC_FEC: 1281 case DTV_GET_ISDB_LAYERC_FEC:
1282 tvp->u.data = fe->tv_property_cache.isdb_layerc_fec; 1282 tvp->u.data = fe->dtv_property_cache.isdb_layerc_fec;
1283 break; 1283 break;
1284 case TV_GET_ISDB_LAYERC_MODULATION: 1284 case DTV_GET_ISDB_LAYERC_MODULATION:
1285 tvp->u.data = fe->tv_property_cache.isdb_layerc_modulation; 1285 tvp->u.data = fe->dtv_property_cache.isdb_layerc_modulation;
1286 break; 1286 break;
1287 case TV_GET_ISDB_LAYERC_SEGMENT_WIDTH: 1287 case DTV_GET_ISDB_LAYERC_SEGMENT_WIDTH:
1288 tvp->u.data = fe->tv_property_cache.isdb_layerc_segment_width; 1288 tvp->u.data = fe->dtv_property_cache.isdb_layerc_segment_width;
1289 break; 1289 break;
1290 case TV_SET_VOLTAGE: 1290 case DTV_SET_VOLTAGE:
1291 fe->tv_property_cache.voltage = tvp->u.data; 1291 fe->dtv_property_cache.voltage = tvp->u.data;
1292 r = dvb_frontend_ioctl_legacy(inode, file, FE_SET_VOLTAGE, 1292 r = dvb_frontend_ioctl_legacy(inode, file, FE_SET_VOLTAGE,
1293 (void *)fe->tv_property_cache.voltage); 1293 (void *)fe->dtv_property_cache.voltage);
1294 break; 1294 break;
1295 case TV_GET_VOLTAGE: 1295 case DTV_GET_VOLTAGE:
1296 tvp->u.data = fe->tv_property_cache.voltage; 1296 tvp->u.data = fe->dtv_property_cache.voltage;
1297 break; 1297 break;
1298 case TV_SET_TONE: 1298 case DTV_SET_TONE:
1299 fe->tv_property_cache.sectone = tvp->u.data; 1299 fe->dtv_property_cache.sectone = tvp->u.data;
1300 r = dvb_frontend_ioctl_legacy(inode, file, FE_SET_TONE, 1300 r = dvb_frontend_ioctl_legacy(inode, file, FE_SET_TONE,
1301 (void *)fe->tv_property_cache.sectone); 1301 (void *)fe->dtv_property_cache.sectone);
1302 break; 1302 break;
1303 case TV_GET_TONE: 1303 case DTV_GET_TONE:
1304 tvp->u.data = fe->tv_property_cache.sectone; 1304 tvp->u.data = fe->dtv_property_cache.sectone;
1305 break; 1305 break;
1306 } 1306 }
1307 1307
@@ -1344,7 +1344,7 @@ static int dvb_frontend_ioctl_properties(struct inode *inode, struct file *file,
1344 struct dvb_device *dvbdev = file->private_data; 1344 struct dvb_device *dvbdev = file->private_data;
1345 struct dvb_frontend *fe = dvbdev->priv; 1345 struct dvb_frontend *fe = dvbdev->priv;
1346 int err = -EOPNOTSUPP; 1346 int err = -EOPNOTSUPP;
1347 tv_property_t *tvp; 1347 dtv_property_t *tvp;
1348 1348
1349 dprintk("%s\n", __func__); 1349 dprintk("%s\n", __func__);
1350 1350
@@ -1355,14 +1355,14 @@ static int dvb_frontend_ioctl_properties(struct inode *inode, struct file *file,
1355 1355
1356 /* TODO: ioctl userdata out of range check here */ 1356 /* TODO: ioctl userdata out of range check here */
1357 tvp = parg; 1357 tvp = parg;
1358 while(tvp->cmd != TV_SEQ_UNDEFINED) { 1358 while(tvp->cmd != DTV_SEQ_UNDEFINED) {
1359 tv_property_process(fe, tvp, inode, file); 1359 dtv_property_process(fe, tvp, inode, file);
1360 if( (tvp->cmd == TV_SEQ_TERMINATE) || (tvp->cmd == TV_SEQ_COMPLETE) ) 1360 if( (tvp->cmd == DTV_SEQ_TERMINATE) || (tvp->cmd == DTV_SEQ_COMPLETE) )
1361 break; 1361 break;
1362 tvp++; 1362 tvp++;
1363 } 1363 }
1364 1364
1365 if(fe->tv_property_cache.state == TV_SEQ_COMPLETE) { 1365 if(fe->dtv_property_cache.state == DTV_SEQ_COMPLETE) {
1366 printk("%s() Property cache is full, tuning\n", __FUNCTION__); 1366 printk("%s() Property cache is full, tuning\n", __FUNCTION__);
1367 } 1367 }
1368 err = 0; 1368 err = 0;
@@ -1545,7 +1545,7 @@ static int dvb_frontend_ioctl_legacy(struct inode *inode, struct file *file,
1545 case FE_SET_FRONTEND: { 1545 case FE_SET_FRONTEND: {
1546 struct dvb_frontend_tune_settings fetunesettings; 1546 struct dvb_frontend_tune_settings fetunesettings;
1547 1547
1548 if(fe->tv_property_cache.state == TV_SEQ_COMPLETE) { 1548 if(fe->dtv_property_cache.state == DTV_SEQ_COMPLETE) {
1549 if (dvb_frontend_check_parameters(fe, &fepriv->parameters) < 0) { 1549 if (dvb_frontend_check_parameters(fe, &fepriv->parameters) < 0) {
1550 err = -EINVAL; 1550 err = -EINVAL;
1551 break; 1551 break;
diff --git a/drivers/media/dvb/dvb-core/dvb_frontend.h b/drivers/media/dvb/dvb-core/dvb_frontend.h
index 61d53ee70f2a..f376f281cde2 100644
--- a/drivers/media/dvb/dvb-core/dvb_frontend.h
+++ b/drivers/media/dvb/dvb-core/dvb_frontend.h
@@ -170,8 +170,8 @@ struct dvb_frontend_ops {
170 struct dvb_tuner_ops tuner_ops; 170 struct dvb_tuner_ops tuner_ops;
171 struct analog_demod_ops analog_ops; 171 struct analog_demod_ops analog_ops;
172 172
173 int (*set_property)(struct dvb_frontend* fe, tv_property_t* tvp); 173 int (*set_property)(struct dvb_frontend* fe, dtv_property_t* tvp);
174 int (*get_property)(struct dvb_frontend* fe, tv_property_t* tvp); 174 int (*get_property)(struct dvb_frontend* fe, dtv_property_t* tvp);
175 int (*set_params)(struct dvb_frontend* fe); 175 int (*set_params)(struct dvb_frontend* fe);
176}; 176};
177 177
@@ -186,7 +186,7 @@ struct dvb_fe_events {
186 struct mutex mtx; 186 struct mutex mtx;
187}; 187};
188 188
189struct tv_frontend_properties { 189struct dtv_frontend_properties {
190 190
191 /* Cache State */ 191 /* Cache State */
192 u32 state; 192 u32 state;
@@ -233,7 +233,7 @@ struct dvb_frontend {
233 void *frontend_priv; 233 void *frontend_priv;
234 void *sec_priv; 234 void *sec_priv;
235 void *analog_demod_priv; 235 void *analog_demod_priv;
236 struct tv_frontend_properties tv_property_cache; 236 struct dtv_frontend_properties dtv_property_cache;
237}; 237};
238 238
239extern int dvb_register_frontend(struct dvb_adapter *dvb, 239extern int dvb_register_frontend(struct dvb_adapter *dvb,
diff --git a/drivers/media/dvb/frontends/cx24116.c b/drivers/media/dvb/frontends/cx24116.c
index 666a0d89e83c..f150fa24ff9f 100644
--- a/drivers/media/dvb/frontends/cx24116.c
+++ b/drivers/media/dvb/frontends/cx24116.c
@@ -776,7 +776,7 @@ error:
776static int cx24116_get_params(struct dvb_frontend* fe) 776static int cx24116_get_params(struct dvb_frontend* fe)
777{ 777{
778 struct cx24116_state *state = fe->demodulator_priv; 778 struct cx24116_state *state = fe->demodulator_priv;
779 struct tv_frontend_properties *cache = &fe->tv_property_cache; 779 struct dtv_frontend_properties *cache = &fe->dtv_property_cache;
780 780
781 dprintk("%s()\n",__func__); 781 dprintk("%s()\n",__func__);
782 782
@@ -796,7 +796,7 @@ static int cx24116_initfe(struct dvb_frontend* fe)
796 return cx24116_diseqc_init(fe); 796 return cx24116_diseqc_init(fe);
797} 797}
798 798
799static int cx24116_set_property(struct dvb_frontend *fe, tv_property_t* tvp) 799static int cx24116_set_property(struct dvb_frontend *fe, dtv_property_t* tvp)
800{ 800{
801 dprintk("%s(..)\n", __func__); 801 dprintk("%s(..)\n", __func__);
802 return 0; 802 return 0;
@@ -814,7 +814,7 @@ static int cx24116_set_params(struct dvb_frontend *fe)
814static int cx24116_set_frontend(struct dvb_frontend* fe, struct dvb_frontend_parameters *p) 814static int cx24116_set_frontend(struct dvb_frontend* fe, struct dvb_frontend_parameters *p)
815{ 815{
816 struct cx24116_state *state = fe->demodulator_priv; 816 struct cx24116_state *state = fe->demodulator_priv;
817 struct tv_frontend_properties *c = &fe->tv_property_cache; 817 struct dtv_frontend_properties *c = &fe->dtv_property_cache;
818 struct cx24116_cmd cmd; 818 struct cx24116_cmd cmd;
819 fe_status_t tunerstat; 819 fe_status_t tunerstat;
820 int ret, above30msps; 820 int ret, above30msps;
diff --git a/include/linux/dvb/frontend.h b/include/linux/dvb/frontend.h
index 4d3770021736..aeace74b5366 100644
--- a/include/linux/dvb/frontend.h
+++ b/include/linux/dvb/frontend.h
@@ -250,61 +250,61 @@ struct dvb_frontend_event {
250 * don't insert random new commands and break backwards 250 * don't insert random new commands and break backwards
251 * binary compatability. 251 * binary compatability.
252 */ 252 */
253typedef enum tv_cmd_types { 253typedef enum dtv_cmd_types {
254 TV_SEQ_UNDEFINED, 254 DTV_SEQ_UNDEFINED,
255 TV_SEQ_START, 255 DTV_SEQ_START,
256 TV_SEQ_CONTINUE, 256 DTV_SEQ_CONTINUE,
257 TV_SEQ_COMPLETE, 257 DTV_SEQ_COMPLETE,
258 TV_SEQ_TERMINATE, 258 DTV_SEQ_TERMINATE,
259 259
260 TV_SET_FREQUENCY, 260 DTV_SET_FREQUENCY,
261 TV_SET_MODULATION, 261 DTV_SET_MODULATION,
262 TV_SET_BANDWIDTH, 262 DTV_SET_BANDWIDTH,
263 TV_SET_INVERSION, 263 DTV_SET_INVERSION,
264 TV_SET_DISEQC_MASTER, 264 DTV_SET_DISEQC_MASTER,
265 TV_SET_SYMBOLRATE, 265 DTV_SET_SYMBOLRATE,
266 TV_SET_INNERFEC, 266 DTV_SET_INNERFEC,
267 TV_SET_VOLTAGE, 267 DTV_SET_VOLTAGE,
268 TV_SET_TONE, 268 DTV_SET_TONE,
269 TV_SET_PILOT, 269 DTV_SET_PILOT,
270 TV_SET_ROLLOFF, 270 DTV_SET_ROLLOFF,
271 271
272 TV_GET_FREQUENCY, 272 DTV_GET_FREQUENCY,
273 TV_GET_MODULATION, 273 DTV_GET_MODULATION,
274 TV_GET_BANDWIDTH, 274 DTV_GET_BANDWIDTH,
275 TV_GET_INVERSION, 275 DTV_GET_INVERSION,
276 TV_GET_DISEQC_SLAVE_REPLY, 276 DTV_GET_DISEQC_SLAVE_REPLY,
277 TV_GET_SYMBOLRATE, 277 DTV_GET_SYMBOLRATE,
278 TV_GET_INNERFEC, 278 DTV_GET_INNERFEC,
279 TV_GET_VOLTAGE, 279 DTV_GET_VOLTAGE,
280 TV_GET_TONE, 280 DTV_GET_TONE,
281 TV_GET_PILOT, 281 DTV_GET_PILOT,
282 TV_GET_ROLLOFF, 282 DTV_GET_ROLLOFF,
283 283
284 /* Basic enumeration set for querying unlimited capabilities */ 284 /* Basic enumeration set for querying unlimited capabilities */
285 TV_GET_FE_CAPABILITY_COUNT, 285 DTV_GET_FE_CAPABILITY_COUNT,
286 TV_GET_FE_CAPABILITY, 286 DTV_GET_FE_CAPABILITY,
287 287
288 /* New commands are always appended */ 288 /* New commands are always appended */
289 TV_SET_DELIVERY_SYSTEM, 289 DTV_SET_DELIVERY_SYSTEM,
290 TV_GET_DELIVERY_SYSTEM, 290 DTV_GET_DELIVERY_SYSTEM,
291 291
292 /* ISDB-T */ 292 /* ISDB-T */
293 TV_SET_ISDB_SEGMENT_NUM, 293 DTV_SET_ISDB_SEGMENT_NUM,
294 TV_GET_ISDB_SEGMENT_NUM, 294 DTV_GET_ISDB_SEGMENT_NUM,
295 TV_SET_ISDB_SEGMENT_WIDTH, 295 DTV_SET_ISDB_SEGMENT_WIDTH,
296 TV_GET_ISDB_SEGMENT_WIDTH, 296 DTV_GET_ISDB_SEGMENT_WIDTH,
297 TV_GET_ISDB_LAYERA_FEC, 297 DTV_GET_ISDB_LAYERA_FEC,
298 TV_GET_ISDB_LAYERA_MODULATION, 298 DTV_GET_ISDB_LAYERA_MODULATION,
299 TV_GET_ISDB_LAYERA_SEGMENT_WIDTH, 299 DTV_GET_ISDB_LAYERA_SEGMENT_WIDTH,
300 TV_GET_ISDB_LAYERB_FEC, 300 DTV_GET_ISDB_LAYERB_FEC,
301 TV_GET_ISDB_LAYERB_MODULATION, 301 DTV_GET_ISDB_LAYERB_MODULATION,
302 TV_GET_ISDB_LAYERB_SEGMENT_WIDTH, 302 DTV_GET_ISDB_LAYERB_SEGMENT_WIDTH,
303 TV_GET_ISDB_LAYERC_FEC, 303 DTV_GET_ISDB_LAYERC_FEC,
304 TV_GET_ISDB_LAYERC_MODULATION, 304 DTV_GET_ISDB_LAYERC_MODULATION,
305 TV_GET_ISDB_LAYERC_SEGMENT_WIDTH, 305 DTV_GET_ISDB_LAYERC_SEGMENT_WIDTH,
306 306
307} tv_cmd_types_t; 307} dtv_cmd_types_t;
308 308
309typedef enum fe_pilot { 309typedef enum fe_pilot {
310 PILOT_ON, 310 PILOT_ON,
@@ -337,7 +337,7 @@ typedef enum fe_delivery_system {
337 SYS_DAB, 337 SYS_DAB,
338} fe_delivery_system_t; 338} fe_delivery_system_t;
339 339
340struct tv_cmds_h { 340struct dtv_cmds_h {
341 char *name; /* A display name for debugging purposes */ 341 char *name; /* A display name for debugging purposes */
342 342
343 __u32 cmd; /* A unique ID */ 343 __u32 cmd; /* A unique ID */
@@ -357,13 +357,13 @@ typedef struct {
357 __u32 len; 357 __u32 len;
358 } buffer; 358 } buffer;
359 } u; 359 } u;
360} tv_property_t; 360} dtv_property_t;
361 361
362/* No more than 16 properties during any given ioctl */ 362/* No more than 16 properties during any given ioctl */
363typedef tv_property_t tv_properties_t[16]; 363typedef dtv_property_t dtv_properties_t[16];
364 364
365#define FE_SET_PROPERTY _IOW('o', 82, tv_properties_t) 365#define FE_SET_PROPERTY _IOW('o', 82, dtv_properties_t)
366#define FE_GET_PROPERTY _IOR('o', 83, tv_properties_t) 366#define FE_GET_PROPERTY _IOR('o', 83, dtv_properties_t)
367 367
368 368
369/** 369/**