Reply
Thread Tools
BluesLee's Avatar
Posts: 411 | Thanked: 1,105 times | Joined on Jan 2010 @ Europe
#11
Originally Posted by sconf View Post
Did you compile against kernel-headers like MohammadAG suggested?

make EXTRAVERSION=.10power46 -C /usr/src/kernel-power-headers/ M=your_module_directory modules

or something like that...
[sbox-FREMANTLE_ARMEL: /usr/src/kernel-power-source] > make EXTRAVERSION=.10power46 -C /usr/src/kernel-power-headers/ M=/usr/src/kernel-power-headers/drivers/media/dvb/dvb-core/ modules
make: Entering directory `/targets/FREMANTLE_ARMEL/usr/src/kernel-power-headers'
Building modules, stage 2.
MODPOST 0 modules
make: Leaving directory `/targets/FREMANTLE_ARMEL/usr/src/kernel-power-headers'

[sbox-FREMANTLE_ARMEL: /usr/src/kernel-power-source] > ls /usr/src/kernel-power-headers/drivers/media/dvb/dvb-core/
Makefile Module.symvers modules.order

There are no relevant dvb header files there and according to
Mohammad there should'nt be ...


Blues
 

The Following User Says Thank You to BluesLee For This Useful Post:
Posts: 87 | Thanked: 56 times | Joined on Nov 2008
#12
You have the M="..." in headers directory. The way I get it compiled is

M=/usr/src/kernel-power-2.6.28/drivers/media/dvb/dvb-core

i.e. module directory is in full source directory. My problem is to get the Makefile there to actually compile the module. My solution is to edit the Makefile directly to have lines like

obj-m += dvb-core.o

There must be better way to accomplish that.

Last edited by sconf; 2011-01-14 at 08:01.
 

The Following 2 Users Say Thank You to sconf For This Useful Post:
BluesLee's Avatar
Posts: 411 | Thanked: 1,105 times | Joined on Jan 2010 @ Europe
#13
@sconf: that worked for dvb-core, thank you.

now i have a new issue compiling modules within drivers/media/dvb/dvb-usb:

Code:
[sbox-FREMANTLE_ARMEL: /usr/src/kernel-power-source/drivers/media/dvb/dvb-usb] > make EXTRAVERSION=.10power46 -C /usr/src/kernel-power-headers/ M=/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/
make: Entering directory `/targets/FREMANTLE_ARMEL/usr/src/kernel-power-headers'
  CC [M]  /usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dtt200u.o
In file included from /usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dtt200u.h:17,
                 from /usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dtt200u.c:14:
/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.h:18:26: error: dvb_frontend.h: No such file or directory
/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.h:19:23: error: dvb_demux.h: No such file or directory
/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.h:20:21: error: dvb_net.h: No such file or directory
/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.h:21:20: error: dmxdev.h: No such file or directory
/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.h:23:21: error: dvb-pll.h: No such file or directory
In file included from /usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dtt200u.h:17,
                 from /usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dtt200u.c:14:
/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.h:301: error: field 'dvb_adap' has incomplete type
/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.h:302: error: field 'dmxdev' has incomplete type
/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.h:303: error: field 'demux' has incomplete type
/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.h:304: error: field 'dvb_net' has incomplete type
/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.h:358: error: field 'i2c_adap' has incomplete type
/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dtt200u.c:21: warning: data definition has no type or storage class
/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dtt200u.c:21: warning: type defaults to 'int' in declaration of 'DVB_DEFINE_MOD_OPT_ADAPTER_NR'
/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dtt200u.c:21: warning: parameter names (without types) in function declaration
/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dtt200u.c: In function 'dtt200u_usb_probe':
/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dtt200u.c:107: error: 'adapter_nr' undeclared (first use in this function)
/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dtt200u.c:107: error: (Each undeclared identifier is reported only once
/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dtt200u.c:107: error: for each function it appears in.)
make[1]: *** [/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dtt200u.o] Error 1
make: *** [_module_/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb] Error 2
make: Leaving directory `/targets/FREMANTLE_ARMEL/usr/src/kernel-power-headers'
The compiler does not see the include files dvb_frontend.h etc
which are located in drivers/media/dvb/dvb-core though there
is a line

Code:
EXTRA_CFLAGS += -Idrivers/media/dvb/dvb-core/ -Idrivers/media/dvb/frontends/
in the Makefile?! This looks like

Code:
dvb-usb-objs = dvb-usb-firmware.o dvb-usb-init.o dvb-usb-urb.o dvb-usb-i2c.o dvb-usb-dvb.o dvb-usb-remote.o usb-urb.o
#obj-$(CONFIG_DVB_USB) += dvb-usb.o
obj-m += dvb-usb.o

dvb-usb-dtt200u-objs = dtt200u.o dtt200u-fe.o
#obj-$(CONFIG_DVB_USB_DTT200U) += dvb-usb-dtt200u.o
obj-m += dvb-usb-dtt200u.o

EXTRA_CFLAGS += -Idrivers/media/dvb/dvb-core/ -Idrivers/media/dvb/frontends/
# due to tuner-xc3028
EXTRA_CFLAGS += -Idrivers/media/common/tuners

Blues
 

The Following User Says Thank You to BluesLee For This Useful Post:
Posts: 87 | Thanked: 56 times | Joined on Nov 2008
#14
The relative directory paths in EXTRA_CFLAGS will make compile look for the files in kernel-headers directory tree. The files are found only in full kernel-source tree. Edit the EXTRA_CFLAGS to contain absolute path to full kernel-source tree

EXTRA_CFLAGS += -I/usr/src/kernel-power-source/drivers/...

Again, I suspect there is a better way to accomplish this without Makefile editing, but this should get you forward.
 

The Following 2 Users Say Thank You to sconf For This Useful Post:
BluesLee's Avatar
Posts: 411 | Thanked: 1,105 times | Joined on Jan 2010 @ Europe
#15
Originally Posted by sconf View Post
The relative directory paths in EXTRA_CFLAGS will make compile look for the files in kernel-headers directory tree. The files are found only in full kernel-source tree. Edit the EXTRA_CFLAGS to contain absolute path to full kernel-source tree

EXTRA_CFLAGS += -I/usr/src/kernel-power-source/drivers/...

Again, I suspect there is a better way to accomplish this without Makefile editing, but this should get you forward.
Thanks, it get me forward but i now get again undefined symbol
errors ehen inserting dvb-usb.ko. Maybe there is a problem
with the DVB capability of the stock power kernel and i need
to compile my own one?

p.s. The below warnings during compilation are critical.

Code:
[sbox-FREMANTLE_ARMEL: /usr/src/kernel-power-source] > make EXTRAVERSION=.10power46 -C /usr/src/kernel-power-headers/ M=/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/
make: Entering directory `/targets/FREMANTLE_ARMEL/usr/src/kernel-power-headers'
  Building modules, stage 2.
  MODPOST 2 modules
WARNING: "dvb_dmx_init" [/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.ko] undefined!
WARNING: "dvb_unregister_adapter" [/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.ko] undefined!
WARNING: "dvb_register_frontend" [/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.ko] undefined!
WARNING: "dvb_unregister_frontend" [/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.ko] undefined!
WARNING: "dvb_net_release" [/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.ko] undefined!
WARNING: "dvb_frontend_detach" [/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.ko] undefined!
WARNING: "dvb_dmxdev_release" [/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.ko] undefined!
WARNING: "dvb_dmx_swfilter" [/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.ko] undefined!
WARNING: "dvb_net_init" [/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.ko] undefined!
WARNING: "dvb_dmx_release" [/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.ko] undefined!
WARNING: "dvb_dmx_swfilter_204" [/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.ko] undefined!
WARNING: "dvb_register_adapter" [/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.ko] undefined!
WARNING: "dvb_dmxdev_init" [/usr/src/kernel-power-source/drivers/media/dvb/dvb-usb/dvb-usb.ko] undefined!
make: Leaving directory `/targets/FREMANTLE_ARMEL/usr/src/kernel-power-headers'
Blues
 

The Following User Says Thank You to BluesLee For This Useful Post:
Posts: 87 | Thanked: 56 times | Joined on Nov 2008
#16
Uh-oh, it is starting to get real mess. If you add

KBUILD_EXTRA_SYMBOLS=/usr/src/kernel-power-source/drivers/media/dvb/dvb-core/Module.symvers

to the command line or Makefile, you get rid of the warnings. The two other modules depend on the dvb-core module.
 

The Following 2 Users Say Thank You to sconf For This Useful Post:
BluesLee's Avatar
Posts: 411 | Thanked: 1,105 times | Joined on Jan 2010 @ Europe
#17
Originally Posted by sconf View Post
Uh-oh, it is starting to get real mess. If you add

KBUILD_EXTRA_SYMBOLS=/usr/src/kernel-power-source/drivers/media/dvb/dvb-core/Module.symvers

to the command line or Makefile, you get rid of the warnings. The two other modules depend on the dvb-core module.
Thank you, I successfully loaded the modules on the N900, the DVB-T LED is on, see the tail of dmesg.

Code:
[32276.193328] usb 1-1:1.0: uevent
[32276.193572] dvb_usb_dtt200u 1-1:1.0: usb_probe_interface
[32276.193603] dvb_usb_dtt200u 1-1:1.0: usb_probe_interface - got id
[32276.193664] dvb-usb: found a 'WideView WT-220U PenType Receiver (Typhoon/Freecom)' in cold state, will try to load a firmware
[32276.193725] usb 1-1: firmware: requesting dvb-usb-wt220u-02.fw
[32276.487792] dvb-usb: downloading firmware from file 'dvb-usb-wt220u-02.fw'
[32276.528381] /home/builder2/maemo-fremantle-armel-extras-devel/work/kernel-power-2.6.28/drivers/usb/core/inode.c: creating file '023'
[32276.534576] usb 1-1: New USB device found, idVendor=14aa, idProduct=0222
[32276.534637] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[32276.534667] hub 1-0:1.0: state 7 ports 1 chg 0000 evt 0002
[32276.534759] hub 1-0:1.0: port 1 enable change, status 00000503
Now, i have some other issues as mplayer tells me that "DVB CONFIGURATION IS EMPTY" though i copied over my channels.conf to ~/.mplayer/channels.conf. This may due to the fact that /dev/dvb is not present after inserting the dvb modules?!


Blues
 

The Following User Says Thank You to BluesLee For This Useful Post:
BluesLee's Avatar
Posts: 411 | Thanked: 1,105 times | Joined on Jan 2010 @ Europe
#18
hello,

here are some news: I found a script which automatically
generates the directory structure in /dev/dvb.

the command "mplayer dvb://" with user seems to work as
it gives me the same outputs as on my desktop (searching
for frequency etc). unfortunatly it crashes and the device reboots.

Blues
 

The Following 2 Users Say Thank You to BluesLee For This Useful Post:
Posts: 468 | Thanked: 610 times | Joined on Jun 2006
#19
It may be a bit overkill, but I finally figured out how to compile my own powerkernel in scratchbox and install it on my phone.

In the Fremantle Armel target get the source and make a installable debian package:

Code:
fakeroot apt-get update
apt-get source kernel-power
cd kernel-power-2.6.28/
fakeroot apt-get build-dep kernel-power
dpkg-buildpackage -rfakeroot -uc -us -sa
Make sure you have the extras-devel repository included in /etc/apt/sources.list for the latest version of kernel-power.

next copy the packages to your phone and install:
Code:
sudo gainroot
dpkg -i kernel-power_2.6.28-maemo46_armel.deb
dpkg -i kernel-power-modules_2.6.28-maemo46_armel.deb
dpkg -i kernel-power-flasher_2.6.28-maemo46_armel.deb
dpkg -i kernel-power-bootimg_2.6.28-maemo46_armel.deb
Next step will be changing some of the settings and adding dvb-t modules.
 

The Following 3 Users Say Thank You to Bernard For This Useful Post:
Posts: 468 | Thanked: 610 times | Joined on Jun 2006
#20
Originally Posted by BluesLee View Post
hello,

the command "mplayer dvb://" with user seems to work as
it gives me the same outputs as on my desktop (searching
for frequency etc). unfortunatly it crashes and the device reboots.

Blues

I finally compiled the modules for the latest power kernel for my PCTV Picostick and nanostick.

The nanostick seems to work!
But the performance of the High bitrate streams is a bit much for the N900!

strangely enough the picostick seemed to work once, and now seems to crash and reboot the N900.

Also the Nanostick seems to work fine without external power (something I didn't expect)

I'll post much more info later this week.


 

The Following User Says Thank You to Bernard For This Useful Post:
Reply

Thread Tools

 
Forum Jump


All times are GMT. The time now is 09:47.