El 7 de marzo de 2019 23:38:47 CET, kbuild test robot <[email protected]> escribió:
>Hi Jose,
>
>Thank you for the patch! Yet something to improve:
>
>[auto build test ERROR on linuxtv-media/master]
>[also build test ERROR on v5.0 next-20190306]
>[if your patch is applied to the wrong git tree, please drop us a note
>to help improve the system]
>
>url:
>https://github.com/0day-ci/linux/commits/Jose-Alberto-Reguero/init-i2c-already-in-it930x_frontend_attach/20190308-055354
>base: git://linuxtv.org/media_tree.git master
>config: nds32-allyesconfig (attached as .config)
>compiler: nds32le-linux-gcc (GCC) 6.4.0
>reproduce:
>wget
>https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross
>-O ~/bin/make.cross
> chmod +x ~/bin/make.cross
> # save the attached .config to linux build tree
> GCC_VERSION=6.4.0 make.cross ARCH=nds32
>
>All errors (new ones prefixed by >>):
>
>drivers/media/usb/dvb-usb-v2/af9035.c: In function
>'af9035_read_config':
>>> drivers/media/usb/dvb-usb-v2/af9035.c:877:54: error:
>'USB_PID_AVERMEDIA_TD310' undeclared (first use in this function)
>(le16_to_cpu(d->udev->descriptor.idProduct) ==
>USB_PID_AVERMEDIA_TD310)) {
> ^~~~~~~~~~~~~~~~~~~~~~~
I missed a part of the patch. I resend the series.
Jose Alberto
>drivers/media/usb/dvb-usb-v2/af9035.c:877:54: note: each undeclared
>identifier is reported only once for each function it appears in
> In file included from drivers/media/usb/dvb-usb-v2/af9035.h:26:0,
> from drivers/media/usb/dvb-usb-v2/af9035.c:22:
> drivers/media/usb/dvb-usb-v2/af9035.c: At top level:
>>> drivers/media/usb/dvb-usb-v2/af9035.c:2137:38: error:
>'USB_PID_AVERMEDIA_TD310' undeclared here (not in a function)
> { DVB_USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_TD310,
> ^
>drivers/media/usb/dvb-usb-v2/dvb_usb.h:105:16: note: in definition of
>macro 'DVB_USB_DEVICE'
> .idProduct = (prod), \
> ^~~~
>
>vim +/USB_PID_AVERMEDIA_TD310 +877
>drivers/media/usb/dvb-usb-v2/af9035.c
>
> 833
> 834 static int af9035_read_config(struct dvb_usb_device *d)
> 835 {
> 836 struct usb_interface *intf = d->intf;
> 837 struct state *state = d_to_priv(d);
> 838 int ret, i;
> 839 u8 tmp;
> 840 u16 tmp16;
> 841
> 842 /* Demod I2C address */
> 843 state->af9033_i2c_addr[0] = 0x1c;
> 844 state->af9033_i2c_addr[1] = 0x1d;
>845 state->af9033_config[0].adc_multiplier =
>AF9033_ADC_MULTIPLIER_2X;
>846 state->af9033_config[1].adc_multiplier =
>AF9033_ADC_MULTIPLIER_2X;
> 847 state->af9033_config[0].ts_mode = AF9033_TS_MODE_USB;
> 848 state->af9033_config[1].ts_mode = AF9033_TS_MODE_SERIAL;
> 849 state->it930x_addresses = 0;
> 850
> 851 if (state->chip_type == 0x9135) {
> 852 /* feed clock for integrated RF tuner */
> 853 state->af9033_config[0].dyn0_clk = true;
> 854 state->af9033_config[1].dyn0_clk = true;
> 855
> 856 if (state->chip_version == 0x02) {
> 857 state->af9033_config[0].tuner =
> AF9033_TUNER_IT9135_60;
> 858 state->af9033_config[1].tuner =
> AF9033_TUNER_IT9135_60;
> 859 } else {
> 860 state->af9033_config[0].tuner =
> AF9033_TUNER_IT9135_38;
> 861 state->af9033_config[1].tuner =
> AF9033_TUNER_IT9135_38;
> 862 }
> 863
> 864 if (state->no_eeprom) {
> 865 /* Remote controller to NEC polling by default
> */
> 866 state->ir_mode = 0x05;
> 867 state->ir_type = 0x00;
> 868
> 869 goto skip_eeprom;
> 870 }
> 871 } else if (state->chip_type == 0x9306) {
> 872 /*
> 873 * IT930x is an USB bridge, only single demod-single
> tuner
> 874 * configurations seen so far.
> 875 */
>876 if ((le16_to_cpu(d->udev->descriptor.idVendor) ==
>USB_VID_AVERMEDIA) &&
>> 877 (le16_to_cpu(d->udev->descriptor.idProduct) ==
>USB_PID_AVERMEDIA_TD310)) {
> 878 state->it930x_addresses = 1;
> 879 }
> 880 return 0;
> 881 }
> 882
> 883 /* Remote controller */
> 884 state->ir_mode = state->eeprom[EEPROM_IR_MODE];
> 885 state->ir_type = state->eeprom[EEPROM_IR_TYPE];
> 886
> 887 if (state->dual_mode) {
> 888 /* Read 2nd demodulator I2C address. 8-bit format on
> eeprom */
> 889 tmp = state->eeprom[EEPROM_2ND_DEMOD_ADDR];
> 890 if (tmp)
> 891 state->af9033_i2c_addr[1] = tmp >> 1;
> 892
> 893 dev_dbg(&intf->dev, "2nd demod I2C addr=%02x\n",
> 894 state->af9033_i2c_addr[1]);
> 895 }
> 896
> 897 for (i = 0; i < state->dual_mode + 1; i++) {
> 898 unsigned int eeprom_offset = 0;
> 899
> 900 /* tuner */
> 901 tmp = state->eeprom[EEPROM_1_TUNER_ID + eeprom_offset];
> 902 dev_dbg(&intf->dev, "[%d]tuner=%02x\n", i, tmp);
> 903
> 904 /* tuner sanity check */
> 905 if (state->chip_type == 0x9135) {
> 906 if (state->chip_version == 0x02) {
> 907 /* IT9135 BX (v2) */
> 908 switch (tmp) {
> 909 case AF9033_TUNER_IT9135_60:
> 910 case AF9033_TUNER_IT9135_61:
> 911 case AF9033_TUNER_IT9135_62:
> 912 state->af9033_config[i].tuner =
> tmp;
> 913 break;
> 914 }
> 915 } else {
> 916 /* IT9135 AX (v1) */
> 917 switch (tmp) {
> 918 case AF9033_TUNER_IT9135_38:
> 919 case AF9033_TUNER_IT9135_51:
> 920 case AF9033_TUNER_IT9135_52:
> 921 state->af9033_config[i].tuner =
> tmp;
> 922 break;
> 923 }
> 924 }
> 925 } else {
> 926 /* AF9035 */
> 927 state->af9033_config[i].tuner = tmp;
> 928 }
> 929
> 930 if (state->af9033_config[i].tuner != tmp) {
>931 dev_info(&intf->dev, "[%d] overriding tuner
>from %02x to
>%02x\n",
> 932 i, tmp, state->af9033_config[i].tuner);
> 933 }
> 934
> 935 switch (state->af9033_config[i].tuner) {
> 936 case AF9033_TUNER_TUA9001:
> 937 case AF9033_TUNER_FC0011:
> 938 case AF9033_TUNER_MXL5007T:
> 939 case AF9033_TUNER_TDA18218:
> 940 case AF9033_TUNER_FC2580:
> 941 case AF9033_TUNER_FC0012:
> 942 state->af9033_config[i].spec_inv = 1;
> 943 break;
> 944 case AF9033_TUNER_IT9135_38:
> 945 case AF9033_TUNER_IT9135_51:
> 946 case AF9033_TUNER_IT9135_52:
> 947 case AF9033_TUNER_IT9135_60:
> 948 case AF9033_TUNER_IT9135_61:
> 949 case AF9033_TUNER_IT9135_62:
> 950 break;
> 951 default:
>952 dev_warn(&intf->dev, "tuner id=%02x not
>supported, please
>report!",
> 953 tmp);
> 954 }
> 955
> 956 /* disable dual mode if driver does not support it */
> 957 if (i == 1)
> 958 switch (state->af9033_config[i].tuner) {
> 959 case AF9033_TUNER_FC0012:
> 960 case AF9033_TUNER_IT9135_38:
> 961 case AF9033_TUNER_IT9135_51:
> 962 case AF9033_TUNER_IT9135_52:
> 963 case AF9033_TUNER_IT9135_60:
> 964 case AF9033_TUNER_IT9135_61:
> 965 case AF9033_TUNER_IT9135_62:
> 966 case AF9033_TUNER_MXL5007T:
> 967 break;
> 968 default:
> 969 state->dual_mode = false;
>970 dev_info(&intf->dev, "driver does not
>support 2nd tuner and
>will disable it");
> 971 }
> 972
> 973 /* tuner IF frequency */
> 974 tmp = state->eeprom[EEPROM_1_IF_L + eeprom_offset];
> 975 tmp16 = tmp << 0;
> 976 tmp = state->eeprom[EEPROM_1_IF_H + eeprom_offset];
> 977 tmp16 |= tmp << 8;
> 978 dev_dbg(&intf->dev, "[%d]IF=%d\n", i, tmp16);
> 979
> 980 eeprom_offset += 0x10; /* shift for the 2nd tuner
> params */
> 981 }
> 982
> 983 skip_eeprom:
> 984 /* get demod clock */
> 985 ret = af9035_rd_reg(d, 0x00d800, &tmp);
> 986 if (ret < 0)
> 987 goto err;
> 988
> 989 tmp = (tmp >> 0) & 0x0f;
> 990
> 991 for (i = 0; i < ARRAY_SIZE(state->af9033_config); i++) {
> 992 if (state->chip_type == 0x9135)
> 993 state->af9033_config[i].clock =
> clock_lut_it9135[tmp];
> 994 else
> 995 state->af9033_config[i].clock =
> clock_lut_af9035[tmp];
> 996 }
> 997
> 998 state->no_read = false;
>999 /* Some MXL5007T devices cannot properly handle tuner I2C read
>ops. */
> 1000 if (state->af9033_config[0].tuner == AF9033_TUNER_MXL5007T &&
> 1001 le16_to_cpu(d->udev->descriptor.idVendor) ==
> USB_VID_AVERMEDIA)
> 1002
> 1003 switch (le16_to_cpu(d->udev->descriptor.idProduct)) {
> 1004 case USB_PID_AVERMEDIA_A867:
> 1005 case USB_PID_AVERMEDIA_TWINSTAR:
> 1006 dev_info(&intf->dev,
>1007 "Device may have issues with I2C read
>operations. Enabling
>fix.\n");
> 1008 state->no_read = true;
> 1009 break;
> 1010 }
> 1011
> 1012 return 0;
> 1013
> 1014 err:
> 1015 dev_dbg(&intf->dev, "failed=%d\n", ret);
> 1016
> 1017 return ret;
> 1018 }
> 1019
>
>---
>0-DAY kernel test infrastructure Open Source Technology
>Center
>https://lists.01.org/pipermail/kbuild-all Intel
>Corporation
--
Enviado desde mi dispositivo Android con K-9 Mail. Por favor, disculpa mi
brevedad.