El Lunes, 12 de Marzo de 2007, Antti P Miettinen escribió: > Patrick Boettcher <patrick.boettcher@xxxxxxx> writes: > > I think you simply made a mistake extracting the firmware from the log. > > Definitely. One particularly stupid mistake seems to be that the fw > loader wants addresses to be little endian but in the trace they show > as big endian. So the addresses in my fw are swapped :-) > I you want to use the windows firmware you can try the attached patch. It only works with the 0x9950 card. Jose Alberto
diff -r 04775fe614d6 linux/drivers/media/dvb/dvb-usb/dib0700_core.c --- a/linux/drivers/media/dvb/dvb-usb/dib0700_core.c Sun Apr 15 06:09:56 2007 -0700 +++ b/linux/drivers/media/dvb/dvb-usb/dib0700_core.c Wed Apr 18 16:17:10 2007 +0200 @@ -264,7 +264,7 @@ static int dib0700_probe(struct usb_inte const struct usb_device_id *id) { int i; -#if 0 +#if 1 struct usb_device *udev = interface_to_usbdev(intf); if (udev->actconfig->desc.bNumInterfaces == 2) { diff -r 04775fe614d6 linux/drivers/media/dvb/dvb-usb/dib0700_devices.c --- a/linux/drivers/media/dvb/dvb-usb/dib0700_devices.c Sun Apr 15 06:09:56 2007 -0700 +++ b/linux/drivers/media/dvb/dvb-usb/dib0700_devices.c Thu Apr 19 14:08:40 2007 +0200 @@ -272,7 +272,7 @@ struct usb_device_id dib0700_usb_id_tabl { USB_DEVICE(USB_VID_DIBCOM, USB_PID_DIBCOM_STK7700P_PC) }, { USB_DEVICE(USB_VID_HAUPPAUGE, USB_PID_HAUPPAUGE_NOVA_T_500) }, - { USB_DEVICE(USB_VID_HAUPPAUGE, USB_PID_HAUPPAUGE_NOVA_T_500_2) }, + { USB_DEVICE(USB_VID_HAUPPAUGE, USB_PID_HAUPPAUGE_NOVA_T_500_2_COLD) }, { USB_DEVICE(USB_VID_HAUPPAUGE, USB_PID_HAUPPAUGE_NOVA_T_STICK) }, { USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_VOLAR) }, { USB_DEVICE(USB_VID_COMPRO, USB_PID_COMPRO_VIDEOMATE_U500) }, @@ -280,6 +280,7 @@ struct usb_device_id dib0700_usb_id_tabl { USB_DEVICE(USB_VID_LEADTEK, USB_PID_WINFAST_DTV_DONGLE_STK7700P) }, { USB_DEVICE(USB_VID_HAUPPAUGE, USB_PID_HAUPPAUGE_NOVA_T_STICK_2) }, { USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_VOLAR_2) }, + { USB_DEVICE(USB_VID_HAUPPAUGE, USB_PID_HAUPPAUGE_NOVA_T_500_2_WARM) }, { } /* Terminating entry */ }; MODULE_DEVICE_TABLE(usb, dib0700_usb_id_table); @@ -293,6 +294,14 @@ MODULE_DEVICE_TABLE(usb, dib0700_usb_id_ .size_of_priv = sizeof(struct dib0700_state), \ .i2c_algo = &dib0700_i2c_algo, \ .identify_state = dib0700_identify_state + +#define DIB0700_DEFAULT_DEVICE_PROPERTIES_2 \ + .caps = DVB_USB_IS_AN_I2C_ADAPTER, \ + .usb_ctrl = DEVICE_SPECIFIC, \ + .firmware = "dvb-usb-dib0700-01.fw", \ + .download_firmware = dib0700_download_firmware, \ + .size_of_priv = sizeof(struct dib0700_state), \ + .i2c_algo = &dib0700_i2c_algo #define DIB0700_DEFAULT_STREAMING_CONFIG(ep) \ .streaming_ctrl = dib0700_streaming_ctrl, \ @@ -348,7 +357,7 @@ struct dvb_usb_device_properties dib0700 { NULL }, } } - }, { DIB0700_DEFAULT_DEVICE_PROPERTIES, + }, { DIB0700_DEFAULT_DEVICE_PROPERTIES_2, .num_adapters = 2, .adapter = { @@ -368,8 +377,8 @@ struct dvb_usb_device_properties dib0700 .num_device_descs = 1, .devices = { { "Hauppauge Nova-T 500 Dual DVB-T", - { &dib0700_usb_id_table[2], &dib0700_usb_id_table[3], NULL }, - { NULL }, + { &dib0700_usb_id_table[3], NULL }, + { &dib0700_usb_id_table[11], NULL }, }, } } diff -r 04775fe614d6 linux/drivers/media/dvb/dvb-usb/dvb-usb-ids.h --- a/linux/drivers/media/dvb/dvb-usb/dvb-usb-ids.h Sun Apr 15 06:09:56 2007 -0700 +++ b/linux/drivers/media/dvb/dvb-usb/dvb-usb-ids.h Thu Apr 19 14:07:34 2007 +0200 @@ -102,7 +102,8 @@ #define USB_PID_WINTV_NOVA_T_USB2_COLD 0x9300 #define USB_PID_WINTV_NOVA_T_USB2_WARM 0x9301 #define USB_PID_HAUPPAUGE_NOVA_T_500 0x9941 -#define USB_PID_HAUPPAUGE_NOVA_T_500_2 0x9950 +#define USB_PID_HAUPPAUGE_NOVA_T_500_2_COLD 0x9950 +#define USB_PID_HAUPPAUGE_NOVA_T_500_2_WARM 0x9951 #define USB_PID_HAUPPAUGE_NOVA_T_STICK 0x7050 #define USB_PID_HAUPPAUGE_NOVA_T_STICK_2 0x7060 #define USB_PID_AVERMEDIA_VOLAR 0xa807
_______________________________________________ linux-dvb mailing list linux-dvb@xxxxxxxxxxx http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb