Hallo Claus,
selbstverständlich
Die Lösung zum automatischen Bauen von MLD fehlt noch, aber händisch funktioniert es schon.
Daher mal ein Zwischenstand:
-Der Treiber findet den Xbox TV Tuner nicht
-Ursache: Er sucht die falschen USB IDs
-In der dib0700_devices.c steht nach dem Patchen:
.devices = {
{ "Microsoft Xbox One Digital TV Tuner",
{ &dib0700_usb_id_table[86], NULL },
{ NULL },
},
-Hier werden falsche Daten verwendet
Quelle dieser Daten ist:
/* 80 */{ USB_DEVICE(USB_VID_ELGATO, USB_PID_ELGATO_EYETV_DTT_2) },
{ USB_DEVICE(USB_VID_PCTV, USB_PID_PCTV_2002E) },
{ USB_DEVICE(USB_VID_PCTV, USB_PID_PCTV_2002E_SE) },
{ USB_DEVICE(USB_VID_PCTV, USB_PID_DIBCOM_STK8096PVR) },
{ USB_DEVICE(USB_VID_DIBCOM, USB_PID_DIBCOM_STK8096PVR) },
{ USB_DEVICE(USB_VID_HAMA, USB_PID_HAMA_DVBT_HYBRID) },
/* 85 */{ USB_DEVICE(USB_VID_HAMA, USB_PID_HAMA_DVBT_HYBRID) },
{ USB_DEVICE(USB_VID_MICROSOFT, USB_PID_XBOX_ONE_TUNER) },
{ 0 } /* Terminating entry */
Verwendet werden diese Daten:
/* 85 */{ USB_DEVICE(USB_VID_HAMA, USB_PID_HAMA_DVBT_HYBRID) },
Ursache: Dieser Eintrag ist doppelt! Dadurch ist 85 und 86 der Hama Stick!
Im Patch steht das sogar drin, dass er das tun soll:
/* DVB-USB and USB stuff follows */
struct usb_device_id dib0700_usb_id_table[] = {
@@ -3817,6 +3902,8 @@
{ USB_DEVICE(USB_VID_PCTV, USB_PID_DIBCOM_STK8096PVR) },
{ USB_DEVICE(USB_VID_DIBCOM, USB_PID_DIBCOM_STK8096PVR) },
{ USB_DEVICE(USB_VID_HAMA, USB_PID_HAMA_DVBT_HYBRID) },
+/* 85 */{ USB_DEVICE(USB_VID_HAMA, USB_PID_HAMA_DVBT_HYBRID) },
+ { USB_DEVICE(USB_VID_MICROSOFT, USB_PID_XBOX_ONE_TUNER) },
{ 0 } /* Terminating entry */
Händische Problembehebung:
-Löschen der Zeile { USB_DEVICE(USB_VID_HAMA, USB_PID_HAMA_DVBT_HYBRID) },
-cd /MLD/kernel/src/linux-4.14.2
-make modules
-die passenden Module ins Produktivsystem kopieren
-depmod
-Mit modprobe neu laden
Jetzt überarbeite ich den Patch nochmal und baue neu