[1] Archiv / MLD 4.x / Raspberry PI / MLD 4.0 und PCTV 460e DVB-S2 Stick
 

Offline maz

  • Newbie
  • *
  • Posts: 8
    • View Profile
MLD 4.0 und PCTV 460e DVB-S2 Stick
« on: February 16, 2014, 13:11:39 »
Hallo!

ich habe geplant meinen Raspberry PI (Model B, UK-Version) mit einem PCTV 460e Stick zu betreiben. Leider bekomme ich den Stick nicht zum Laufen, offenbar gibt es ein Firmware- bzw. Treiberproblem, wie hier beschrieben: http://www.minidvblinux.de/forum/index.php/topic,5428.msg38498.html#msg38498 . Die Firmware-Datei tda10071 habe ich nach /lib/firmware kopiert.
Da ich den Stick gebraucht gekauft habe, dachte ich zuerst er ist defekt - unter Windows 7 läuft er aber einwandfrei.

Vielen Dank und Gruß
maz

Offline clausmuus

  • Administrator
  • Expert Member
  • ********
  • Posts: 20531
    • View Profile
    • ClausMuus.de
MLD 4.0 und PCTV 460e DVB-S2 Stick
« Reply #1 on: February 17, 2014, 11:23:11 »
Hi,

die Firmware dvb-fe-tda10071.fw ist sowieso schon dabei. Dadrann sollte es also nicht liegen. Kannst Du mir sagen, welchen Treiber Du benötigst?

Claus


EDIT: OK, ich hab selber nachgeschaut. Benötigt wird der Treiber em28xx. Magst Du mal per "lsmod" schauen ob der geladen wurde, und falls nicht, ob Du den per "modprobe em28xx" laden kannst. Falls nicht, was für ne Meldung bekommst Du, und was steht am Ende im /var/log/messages.
« Last Edit: February 17, 2014, 11:34:47 by clausmuus »
MLD 5.5 - Raspberry PI - 7" Touch TFT - Squeeze Play
MLD 6.5 - lirc yaUsbIR - OctopusNet - XFX GeForce 9300 mit Intel E3200 - 2GB RAM - 22TB HDD - Lian Li PC-C37B - Samsung LE40A559

Offline maz

  • Newbie
  • *
  • Posts: 8
    • View Profile
MLD 4.0 und PCTV 460e DVB-S2 Stick
« Reply #2 on: February 21, 2014, 19:00:42 »
Hi,

so jetzt bin ich mal zum Testen gekommen:
- Die Ausgabe von lsmod zeigt mir nur die beiden Module "uinput" und "videobuf2_memops".

- modprobe em28xx gibt folgende Ausgabe:
Code: [Select]
modprobe: can't load module videobuf2_vmalloc (kernel/drivers/media/v4l2-core/videobuf2-vmalloc.ko): unknown symbol in module, or unknown parameter
- Die letzten Zeile in /var/log/messages sind:
Code: [Select]
Feb 21 18:55:44 (none) user.info kernel: [  144.155986] btrfs: device fsid 8928dca9-6f50-4963-8672-3d74c0e500ca devid 1 transid 583 /dev/mmcblk0p2
Feb 21 18:55:47 (none) user.warn kernel: [  146.529595] videobuf2_vmalloc: Unknown symbol dma_buf_vmap (err 0)
Feb 21 18:55:47 (none) user.warn kernel: [  146.529718] videobuf2_vmalloc: Unknown symbol dma_buf_vunmap (err 0)
Feb 21 18:55:48 (none) user.warn kernel: [  147.711706] videobuf2_vmalloc: Unknown symbol dma_buf_vmap (err 0)
Feb 21 18:55:48 (none) user.warn kernel: [  147.711903] videobuf2_vmalloc: Unknown symbol dma_buf_vunmap (err 0)
Feb 21 18:55:50 (none) user.info kernel: [  149.426690] btrfs: device fsid 8928dca9-6f50-4963-8672-3d74c0e500ca devid 1 transid 583 /dev/mmcblk0p2
Feb 21 18:55:56 (none) user.info kernel: [  155.995735] btrfs: device fsid 8928dca9-6f50-4963-8672-3d74c0e500ca devid 1 transid 583 /dev/mmcblk0p2
Feb 21 18:56:01 (none) user.warn kernel: [  160.716053] videobuf2_vmalloc: Unknown symbol dma_buf_vmap (err 0)
Feb 21 18:56:01 (none) user.warn kernel: [  160.716177] videobuf2_vmalloc: Unknown symbol dma_buf_vunmap (err 0)
Feb 21 18:58:02 (none) user.warn kernel: [  282.228729] videobuf2_vmalloc: Unknown symbol dma_buf_vmap (err 0)
Feb 21 18:58:02 (none) user.warn kernel: [  282.228856] videobuf2_vmalloc: Unknown symbol dma_buf_vunmap (err 0)

Gruß maz

Offline maz

  • Newbie
  • *
  • Posts: 8
    • View Profile
MLD 4.0 und PCTV 460e DVB-S2 Stick
« Reply #3 on: March 03, 2014, 14:05:21 »
Hi,

schade dass sich hier nichts tut - wenn ich ich noch etwas zur Fehlersuche beitragen kann, bin ich dazu gerne bereit...
Ansonsten werde ich den Stick wohl wieder verkaufen müssen und auf einen Sundtek-Stick umsteigen.

Gruß maz

Offline clausmuus

  • Administrator
  • Expert Member
  • ********
  • Posts: 20531
    • View Profile
    • ClausMuus.de
MLD 4.0 und PCTV 460e DVB-S2 Stick
« Reply #4 on: March 03, 2014, 14:51:29 »
Hi,

dieses Problem war leider untergegangen. Lege mal bitte im Bugtracker nen Ticket an (gerne mit Link auf diesen Thrad), dann kümmere ich mich die nächsten Tage da drum und Du wirst per Mail informiert wenn sich was tut.

Claus
MLD 5.5 - Raspberry PI - 7" Touch TFT - Squeeze Play
MLD 6.5 - lirc yaUsbIR - OctopusNet - XFX GeForce 9300 mit Intel E3200 - 2GB RAM - 22TB HDD - Lian Li PC-C37B - Samsung LE40A559

Offline maz

  • Newbie
  • *
  • Posts: 8
    • View Profile
MLD 4.0 und PCTV 460e DVB-S2 Stick
« Reply #5 on: March 03, 2014, 15:49:14 »
Danke - hab ein Ticket angelegt.

Gruß maz

Offline Christian

  • MLD-Developer
  • Expert Member
  • ******
  • Posts: 1531
    • View Profile
    • http://www.minidvblinux.de
MLD 4.0 und PCTV 460e DVB-S2 Stick
« Reply #6 on: March 06, 2014, 08:49:09 »
Wir müssen im kernel den FLAG setzen:  CONFIG_DMA_SHARED_BUFFER

Dann tut auch deine Karte  ;D

Code: [Select]
#ifdef CONFIG_DMA_SHARED_BUFFER
struct dma_buf_attachment *dma_buf_attach(struct dma_buf *dmabuf,
                                                        struct device *dev);
void dma_buf_detach(struct dma_buf *dmabuf,
                                struct dma_buf_attachment *dmabuf_attach);
struct dma_buf *dma_buf_export(void *priv, const struct dma_buf_ops *ops,
                               size_t size, int flags);
int dma_buf_fd(struct dma_buf *dmabuf, int flags);
struct dma_buf *dma_buf_get(int fd);
void dma_buf_put(struct dma_buf *dmabuf);

struct sg_table *dma_buf_map_attachment(struct dma_buf_attachment *,
                                        enum dma_data_direction);
void dma_buf_unmap_attachment(struct dma_buf_attachment *, struct sg_table *,
                                enum dma_data_direction);
int dma_buf_begin_cpu_access(struct dma_buf *dma_buf, size_t start, size_t len,
                             enum dma_data_direction dir);
void dma_buf_end_cpu_access(struct dma_buf *dma_buf, size_t start, size_t len,
                            enum dma_data_direction dir);
void *dma_buf_kmap_atomic(struct dma_buf *, unsigned long);
void dma_buf_kunmap_atomic(struct dma_buf *, unsigned long, void *);
void *dma_buf_kmap(struct dma_buf *, unsigned long);
void dma_buf_kunmap(struct dma_buf *, unsigned long, void *);

int dma_buf_mmap(struct dma_buf *, struct vm_area_struct *,
                 unsigned long);
void *dma_buf_vmap(struct dma_buf *);
void dma_buf_vunmap(struct dma_buf *, void *vaddr);
#else
__________________________________________

"...ich schreibe 80% meiner Beiträge aus dem Kopf ... bitte nicht schlagen wenn mal ein Path nicht passt :) ..."

MFG Christian

Nokia Sat DBox2 + Multicam

Hardware VDR: ASUS E35M1-I Deluxe, 4GB RAM, ATI 6XXX onboard, TT S2-6400 FF, Samsung 500GB 2,5"


Offline clausmuus

  • Administrator
  • Expert Member
  • ********
  • Posts: 20531
    • View Profile
    • ClausMuus.de
MLD 4.0 und PCTV 460e DVB-S2 Stick
« Reply #7 on: March 06, 2014, 11:02:50 »
Wo hast Du denn das nun wieder gefunden,...

EDIT:
Das ist aber schon im DVB-Treiber gesetzt...

Claus
« Last Edit: March 06, 2014, 11:19:36 by clausmuus »
MLD 5.5 - Raspberry PI - 7" Touch TFT - Squeeze Play
MLD 6.5 - lirc yaUsbIR - OctopusNet - XFX GeForce 9300 mit Intel E3200 - 2GB RAM - 22TB HDD - Lian Li PC-C37B - Samsung LE40A559

Offline Christian

  • MLD-Developer
  • Expert Member
  • ******
  • Posts: 1531
    • View Profile
    • http://www.minidvblinux.de
MLD 4.0 und PCTV 460e DVB-S2 Stick
« Reply #8 on: March 06, 2014, 12:03:15 »
die dma_buf datei aus dem Kernel benötigt auch den FLAG

kernel ..... drivers/base/dma-buf.c / .h

http://www.minidvblinux.de/git/?a=viewblob&p=kernel&h=25f4c6f51736a912a41a8950ec94305282799c97&hb=44f7521f6830bfc0c9900c6b72532c59613118aa&f=src/linux_arm.config

Code: [Select]
# Generic Driver Options
#
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
CONFIG_DEVTMPFS=y
# CONFIG_DEVTMPFS_MOUNT is not set
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_FW_LOADER=y
CONFIG_FIRMWARE_IN_KERNEL=y
CONFIG_EXTRA_FIRMWARE=""
CONFIG_FW_LOADER_USER_HELPER=y
# CONFIG_DEBUG_DRIVER is not set
# CONFIG_DEBUG_DEVRES is not set
# CONFIG_SYS_HYPERVISOR is not set
# CONFIG_GENERIC_CPU_DEVICES is not set
# CONFIG_DMA_SHARED_BUFFER is not set

btw: im nicht rpi zweig ist der flag gesetzt
« Last Edit: March 06, 2014, 12:05:18 by Christian »
__________________________________________

"...ich schreibe 80% meiner Beiträge aus dem Kopf ... bitte nicht schlagen wenn mal ein Path nicht passt :) ..."

MFG Christian

Nokia Sat DBox2 + Multicam

Hardware VDR: ASUS E35M1-I Deluxe, 4GB RAM, ATI 6XXX onboard, TT S2-6400 FF, Samsung 500GB 2,5"


Offline clausmuus

  • Administrator
  • Expert Member
  • ********
  • Posts: 20531
    • View Profile
    • ClausMuus.de
MLD 4.0 und PCTV 460e DVB-S2 Stick
« Reply #9 on: March 06, 2014, 12:38:48 »
Bevor wir hier völlig an einander vorbei reden: Der Treiber wird gebaut, lässt sich aber lediglich nicht laden.

Claus
MLD 5.5 - Raspberry PI - 7" Touch TFT - Squeeze Play
MLD 6.5 - lirc yaUsbIR - OctopusNet - XFX GeForce 9300 mit Intel E3200 - 2GB RAM - 22TB HDD - Lian Li PC-C37B - Samsung LE40A559

Offline Christian

  • MLD-Developer
  • Expert Member
  • ******
  • Posts: 1531
    • View Profile
    • http://www.minidvblinux.de
MLD 4.0 und PCTV 460e DVB-S2 Stick
« Reply #10 on: March 06, 2014, 13:25:42 »
An der Fehlermelung

Code: [Select]
Feb 21 18:56:01 (none) user.warn kernel: [  160.716053] videobuf2_vmalloc: Unknown symbol dma_buf_vmap (err 0)
Feb 21 18:56:01 (none) user.warn kernel: [  160.716177] videobuf2_vmalloc: Unknown symbol dma_buf_vunmap (err 0)

erkennt man aber das der videobuf2_vmalloc das Symbol nicht hat. Ist es nicht so, dass der den dma_buf brauch, welcher nur gebaut wird wenn wir den auch gleich beim Kernel Bau aktivieren. Schaust du in die .c Files siehst du das der dma_buf.h Header genutzt wird.

Hier wird der DMA zusammen gebaut: https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/tree/drivers/base?id=refs/tags/v3.13.5

Makefile:

Code: [Select]
obj-$(CONFIG_DMA_SHARED_BUFFER) += dma-buf.o reservation.o


Code: [Select]
> Symbol: VIDEOBUF2_VMALLOC [=n]
>   │ Type  : tristate
>   │   Defined at drivers/media/v4l2-core/Kconfig:75
>   │   Depends on: MEDIA_SUPPORT [=y]
>   │   Selects: VIDEOBUF2_CORE [=y] && VIDEOBUF2_MEMOPS [=n] &&
> DMA_SHARED_BUFFER [=y]
>   │   Selected by: USB_VIDEO_CLASS [=n] && USB [=y] && MEDIA_SUPPORT
> [=y] && MEDIA_USB_SUPPORT [=n] && MEDIA_CAMERA_SUPPORT [=y] || USB_PWC
> [=n] && USB [=y] && MEDIA_SUPPORT [=y] && MEDIA_USB_SUPPORT [=n] &&
> MEDIA_CAMERA_SUPPORT [=y] && VIDEO_V4L2 [=y] || VIDEO_STK1160 [=n] &&
> USB [=y] && MEDIA_SUPPORT [=y] && MEDIA_USB_SUPPORT [=n] &&
> MEDIA_ANALOG_TV_SUPPORT [=n] && VIDEO_DEV [=y] && I2C [=y] ||
> VIDEO_EM28XX [=n] && USB [=y] && MEDIA_SUPPORT [=y] &&
> MEDIA_USB_SUPPORT [=n] && (MEDIA_CAMERA_SUPPORT [=y]
« Last Edit: March 06, 2014, 16:02:36 by Christian »
__________________________________________

"...ich schreibe 80% meiner Beiträge aus dem Kopf ... bitte nicht schlagen wenn mal ein Path nicht passt :) ..."

MFG Christian

Nokia Sat DBox2 + Multicam

Hardware VDR: ASUS E35M1-I Deluxe, 4GB RAM, ATI 6XXX onboard, TT S2-6400 FF, Samsung 500GB 2,5"


Offline clausmuus

  • Administrator
  • Expert Member
  • ********
  • Posts: 20531
    • View Profile
    • ClausMuus.de
MLD 4.0 und PCTV 460e DVB-S2 Stick
« Reply #11 on: March 06, 2014, 16:53:45 »
OK, ich glaube ich hab's gefunden. Es muss im Kernel DRM aktiviert werden, damit das CONFIG_DMA_SHARED_BUFFER Flag gesetzt ist, und somit das fehlende dma-buf (und dessen Symbole) kompiliert wird. Mir war bisher nicht bewusst, dass man Treiber kompilieren kann, für die zwingend erforderliche Abhängigkeiten nicht erfüllt sind...
Ich lass nun nen neuen Kernel bauen. Das wird vermutlich bis Morgen Abend dauern. Ich versuche es erst mal ohne nen kompletten clean, was deutlich schneller gehen würde. Ich habe allerdings keine große Hoffnung, dass das zum gewünschten Ergebnis führt.

Nun ist also erst mal Geduld gefordert, bis getestet werden kann, ob's geholfen hat.

Claus
MLD 5.5 - Raspberry PI - 7" Touch TFT - Squeeze Play
MLD 6.5 - lirc yaUsbIR - OctopusNet - XFX GeForce 9300 mit Intel E3200 - 2GB RAM - 22TB HDD - Lian Li PC-C37B - Samsung LE40A559

Offline maz

  • Newbie
  • *
  • Posts: 8
    • View Profile
MLD 4.0 und PCTV 460e DVB-S2 Stick
« Reply #12 on: March 06, 2014, 19:33:15 »
Vielen Dank schon mal für die Mühe, ich werde es voraussichtlich am Samstag dann testen können.

Gruß maz

Offline clausmuus

  • Administrator
  • Expert Member
  • ********
  • Posts: 20531
    • View Profile
    • ClausMuus.de
MLD 4.0 und PCTV 460e DVB-S2 Stick
« Reply #13 on: March 07, 2014, 00:35:19 »
So, es gibt nun neue Images und damit müsste der Treiber nun funktionieren. Ich konnte den jedenfalls fehlerfrei laden.
Die Pakete haben aber keine neue Versionsnummer bekommen. Somit ist nen Update nicht möglich. Ne neue Versionsnummer macht nen kompletten Neubau der Kernel Pakete nötig, was erst Morgen Abend fertig sein wird.

Claus
MLD 5.5 - Raspberry PI - 7" Touch TFT - Squeeze Play
MLD 6.5 - lirc yaUsbIR - OctopusNet - XFX GeForce 9300 mit Intel E3200 - 2GB RAM - 22TB HDD - Lian Li PC-C37B - Samsung LE40A559

[1] Archiv / MLD 4.x / Raspberry PI / MLD 4.0 und PCTV 460e DVB-S2 Stick
 



Users Online Users Online

0 Members and 1 Guest are viewing this topic.