Invalid module format. WRT160NL with kernel 2.6.24.111

Post new topic   Reply to topic    DD-WRT Forum Forum Index -> Atheros WiSOC based Hardware
Author Message
fastest963
DD-WRT Novice


Joined: 02 Mar 2008
Posts: 28

PostPosted: Thu Apr 15, 2010 3:40    Post subject: Invalid module format. WRT160NL with kernel 2.6.24.111 Reply with quote
Hello, I'm trying to diagnose some connection problems I'm having with PPTP and I tried to download and insmod some modules from http://www.dd-wrt.com/dd-wrtv2/down.php?sort=name&path=downloads/others/eko/Public/modules/2.6.24.111/ but whenever I try to insmod them, I get invalid module format.

Code:
insmod: cannot insert 'nf_conntrack_pptp.ko': invalid module format


when I tried the nf_nat_pptp.ko module that is already on the router itself, I got:

Code:
insmod: cannot insert 'nf_nat_pptp.ko': unknown symbol in module


By the way here are the DD-WRT details:
Linux DD-WRT - WRT160NL 2.6.24.111 #1480 Wed Mar 24 10:30:31 CET 2010 mips unknown
DD-WRT v24-sp2 (03/24/10) std - build 14144

Thanks for the help!
-fastest963
Sponsor
weelkin
DD-WRT Novice


Joined: 09 Mar 2009
Posts: 9

PostPosted: Thu Apr 15, 2010 20:42    Post subject: Reply with quote
these modules from eko are just for mipsel based routers, not mips based (the endianess differs) you`ll have to compile these modules yourself.

First you`ll need the right sources get them via svn:

Code:
svn co -r "Your revision number" svn://svn.dd-wrt.com/DD-WRT/src/linux/pb42/linux-2.6.23/


next download the toolchains needed for cross compiling:

Code:
wget http://dd-wrt.com/dd-wrtv2/downloads/others/sourcecode/toolchains/current-toolchains.tar.bz2


unpack the toolchains and add the folder toolchain-mips-4.1.1 from the toolchain archive to your PATH variable :

Code:
 PATH=$PATH:"Path to toolchain-mips-4.1.1/bin folder"


Then go to your kernel sources folder and do
Code:
 cp .config_wrt160nl .config
to copy the build config for your router to the actual config.

then execute
Code:
 make menuconfig
and choose the modules you want to build.
At last execute
Code:
 make modules
to build your modules.

If you`re not familiar with building kernel modules I'll post a more detailed howto, but i`m a bit in a hurry now.

regards
weelkin
fastest963
DD-WRT Novice


Joined: 02 Mar 2008
Posts: 28

PostPosted: Thu Apr 15, 2010 21:21    Post subject: Reply with quote
weelkin wrote:

First you`ll need the right sources get them via svn:

Code:
svn co -r "Your revision number" svn://svn.dd-wrt.com/DD-WRT/src/linux/pb42/linux-2.6.23/



I'll try that but don't I need the ones for 2.6.24.111?

Well anyways, I tried building the modules and I got:
/root/DD-WRT/toolchain-mips-4.1.1/bin/mips-linux-uclibc-gcc: /root/DD-WRT/toolchain-mips-4.1.1/bin/mips-linux-uclibc-gcc: cannot execute binary file

/bin/sh: /root/DD-WRT/toolchain-mips-4.1.1/bin/mips-linux-uclibc-gcc: cannot execute binary file
make[1]: *** [arch/mips/kernel/asm-offsets.s] Error 126

How can I get the modules to compile on CentOS?

Thanks
fastest963
DD-WRT Novice


Joined: 02 Mar 2008
Posts: 28

PostPosted: Fri Apr 16, 2010 3:52    Post subject: Reply with quote
I managed to build a cross-compiler and get everything to work. Thanks for the help!
tathagata
DD-WRT User


Joined: 01 Apr 2008
Posts: 134

PostPosted: Wed Feb 23, 2011 5:44    Post subject: Reply with quote
Hi,
I want to compile it for WNDR3700. I have downloaded pb42 linux source code. But I cannot compile the code.

Could you please tell me how do you compile the total DD-WRT source code for ar71xx chipset ?
MoneyNutz
DD-WRT User


Joined: 16 Apr 2010
Posts: 98

PostPosted: Thu Jun 09, 2011 18:31    Post subject: Reply with quote
tathagata

see weelkin long post that is how you do it.

The modules can be forced loaded something like
insmod -fr /path/to/*.ko

Just run insmod --help to get correct options.
They need to be build for the same hardware and not a problem if modules are from a newer kernel, might give a error in a log but loads either way.

In android we add extra parameters in the init.rc script not sure what would work here to automate this during booting process.
MoneyNutz
DD-WRT User


Joined: 16 Apr 2010
Posts: 98

PostPosted: Thu Jun 09, 2011 18:40    Post subject: Reply with quote
fastest963 wrote:
weelkin wrote:

First you`ll need the right sources get them via svn:

Code:
svn co -r "Your revision number" svn://svn.dd-wrt.com/DD-WRT/src/linux/pb42/linux-2.6.23/



I'll try that but don't I need the ones for 2.6.24.111?

Well anyways, I tried building the modules and I got:
/root/DD-WRT/toolchain-mips-4.1.1/bin/mips-linux-uclibc-gcc: /root/DD-WRT/toolchain-mips-4.1.1/bin/mips-linux-uclibc-gcc: cannot execute binary file

/bin/sh: /root/DD-WRT/toolchain-mips-4.1.1/bin/mips-linux-uclibc-gcc: cannot execute binary file
make[1]: *** [arch/mips/kernel/asm-offsets.s] Error 126

How can I get the modules to compile on CentOS?

Thanks


I you need crossdev to be setup unless you have this already and the toolchain is bad then try codesourcery toolchains or cross dev your own.
How crossdev installs in CentOS no clue.

http://www.linuxquestions.org/questions/linux-embedded-78/how-to-make-cross-compilation-toolchain-for-mips-architecture-592182/

Post subject: MIPS/ Atheros Toolchain
http://www.dd-wrt.com/phpBB2/viewtopic.php?t=61112

http://elinux.org/Tool_Chain

Fedora crossdev
http://opencores.org/bug,view,1709

Codesourcery ELF
http://www.codesourcery.com/sgpp/lite/mips/portal/subscription3537

Codesourcery GNU/Linux
http://www.codesourcery.com/sgpp/lite/mips/portal/subscription3130
tathagata
DD-WRT User


Joined: 01 Apr 2008
Posts: 134

PostPosted: Thu Sep 22, 2011 4:59    Post subject: Reply with quote
I am able to compile DD-WRT using its toolchain.

But I am getting some strange problems in application.
The problem is that the permission of the executable are not same in "src/router/mips-uclibc/target" directory in build system (Linux PC) and in board. The permission of the executable are "?-w---x--x" in the board while in target directory in PC the permissions are "-rwxr-xr-x". As a result shell is showing error message "permission denied" whenever I am trying to execute any executable(except built-in commands) in the board (by system() or manually).
Any idea ?

Please check the boot log below.

<cut>
Starting kernel ...

[ 0.000000] Linux version 2.6.34.10-svn17487 (tatha@localhost.localdomain) (gcc version 4.1.2) #5 Thu Sep 8 17:50:54 IST 2011
[ 0.000000] bootconsole [early0] enabled
[ 0.000000] CPU revision is: 00019374 (MIPS 24Kc)
[ 0.000000] booting platform Atheros AR7161 rev 2 (0xaa)
[ 0.000000] Determined physical RAM map:
[ 0.000000] memory: 08000000 @ 00000000 (usable)
[ 0.000000] Zone PFN ranges:
[ 0.000000] Normal 0x00000000 -> 0x00008000
[ 0.000000] Movable zone start PFN for each node
[ 0.000000] early_node_map[1] active PFN ranges
[ 0.000000] 0: 0x00000000 -> 0x00008000
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 32512
[ 0.000000] Kernel command line: console=ttyS0,115200 root=1f02 rootfstype=squashfs noinitrd init=/sbin/init
[ 0.000000] PID hash table entries: 512 (order: -1, 2048 bytes)
[ 0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
[ 0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.000000] Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes.
[ 0.000000] Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32 bytes
[ 0.000000] Writing ErrCtl register=00000000
[ 0.000000] Readback ErrCtl register=00000000
[ 0.000000] Memory: 126612k/131072k available (2287k kernel code, 4460k reserved, 568k data, 148k init, 0k highmem)
[ 0.000000] NR_IRQS:128
[ 0.000000] irq init done
[ 0.000000] plat_time_init: plat time init done
[ 0.000000] Calibrating delay loop... 452.19 BogoMIPS (lpj=2260992)
[ 0.250000] Mount-cache hash table entries: 512
[ 0.250000] NET: Registered protocol family 16
[ 3.250000] registering PCI controller with io_map_base unset
[ 3.260000] bio: create slab <bio-0> at 0
[ 3.270000] usbcore: registered new interface driver usbfs
[ 3.270000] usbcore: registered new interface driver hub
[ 3.280000] usbcore: registered new device driver usb
[ 3.340000] no in flash calibration fata found, no fix required
[ 3.400000] no in flash calibration fata found, no fix required
[ 3.410000] pci 0000:00:00.0: BAR 0: assigned [mem 0x10000000-0x1000ffff]
[ 3.410000] pci 0000:00:00.0: BAR 0: set to [mem 0x10000000-0x1000ffff] (PCI address [0x10000000-0x1000ffff]
[ 3.420000] pci 0000:00:01.0: BAR 0: assigned [mem 0x10010000-0x1001ffff]
[ 3.420000] pci 0000:00:01.0: BAR 0: set to [mem 0x10010000-0x1001ffff] (PCI address [0x10010000-0x1001ffff]
[ 3.430000] fixup irq: got 48
[ 3.430000] fixup irq: got 49
[ 3.430000] Switching to clocksource MIPS
[ 3.440000] NET: Registered protocol family 2
[ 3.440000] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 3.450000] TCP established hash table entries: 4096 (order: 3, 32768 bytes)
[ 3.460000] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
[ 3.460000] TCP: Hash tables configured (established 4096 bind 4096)
[ 3.470000] TCP reno registered
[ 3.470000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 3.480000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 3.480000] NET: Registered protocol family 1
[ 3.490000] gpio_proc: module loaded and /proc/gpio/ created
[ 3.490000] wl0gpio_proc: module loaded and /proc/wl0gpio/ created
[ 3.500000] AR7100 GPIOC major 0
[ 3.500000] init_vdso successfull
[ 3.510000] squashfs: version 3.0 (2006/03/15) Phillip Lougher
[ 3.510000] msgmni has been set to 247
[ 3.520000] io scheduler noop registered
[ 3.520000] io scheduler deadline registered (default)
[ 3.530000] Serial: 8250/16550 driver, 1 ports, IRQ sharing disabled
[ 3.540000] serial8250.0: ttyS0 at MMIO 0x18020000 (irq = 19) is a 16550A
[ 3.540000] console [ttyS0] enabled, bootconsole disabled
[ 3.540000] console [ttyS0] enabled, bootconsole disabled
[ 3.550000] guessed flashsize = 16M
[ 3.560000] scanning for root partition
[ 3.570000] bootloader size = 70000
[ 3.580000]
[ 3.580000] found squashfs at 170000
[ 3.580000] Creating 8 MTD partitions on "ar7100-nor0":
[ 3.590000] 0x000000000000-0x000000070000 : "RedBoot"
[ 3.590000] 0x000000070000-0x000001000000 : "linux"
[ 3.600000] 0x000000170000-0x000000420000 : "rootfs"
[ 3.600000] mtd: partition "rootfs" set to be root filesystem
[ 3.610000] 0x000000420000-0x000000fe0000 : "ddwrt"
[ 3.620000] 0x000000fe0000-0x000000ff0000 : "nvram"
[ 3.620000] 0x000000ff0000-0x000001000000 : "FIS directory"
[ 3.630000] 0x000000ff0000-0x000001000000 : "board_config"
[ 3.630000] 0x000000000000-0x000001000000 : "fullflash"
[ 3.640000] PPP generic driver version 2.4.2
[ 3.640000] PPP Deflate Compression module registered
[ 3.650000] PPP BSD Compression module registered
[ 3.650000] PPP MPPE Compression module registered
[ 3.660000] NET: Registered protocol family 24
[ 3.660000] PPPoL2TP kernel driver, V1.0
[ 3.670000] IMQ driver loaded successfully.
[ 3.670000] Hooking IMQ before NAT on PREROUTING.
[ 3.680000] Hooking IMQ after NAT on POSTROUTING.
[ 3.680000] tun: Universal TUN/TAP device driver, 1.6
[ 3.690000] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
[ 3.690000] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 5.600000] ar71xx-ehci ar71xx-ehci.0: Atheros AR71xx built-in EHCI controller
[ 5.600000] ar71xx-ehci ar71xx-ehci.0: new USB bus registered, assigned bus number 1
[ 5.640000] ar71xx-ehci ar71xx-ehci.0: irq 3, io mem 0x1b000000
[ 5.660000] ar71xx-ehci ar71xx-ehci.0: USB 2.0 started, EHCI 1.00
[ 5.660000] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[ 5.670000] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 5.680000] usb usb1: Product: Atheros AR71xx built-in EHCI controller
[ 5.680000] usb usb1: Manufacturer: Linux 2.6.34.10-svn17487 ehci_hcd
[ 5.690000] usb usb1: SerialNumber: platform
[ 5.690000] hub 1-0:1.0: USB hub found
[ 5.700000] hub 1-0:1.0: 2 ports detected
[ 5.700000] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 5.710000] ar71xx-ohci ar71xx-ohci.0: Atheros AR71xx built-in OHCI controller
[ 5.720000] ar71xx-ohci ar71xx-ohci.0: new USB bus registered, assigned bus number 2
[ 5.720000] ar71xx-ohci ar71xx-ohci.0: irq 22, io mem 0x1c000000
[ 5.790000] usb usb2: New USB device found, idVendor=1d6b, idProduct=0001
[ 5.800000] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 5.800000] usb usb2: Product: Atheros AR71xx built-in OHCI controller
[ 5.810000] usb usb2: Manufacturer: Linux 2.6.34.10-svn17487 ohci_hcd
[ 5.820000] usb usb2: SerialNumber: platform
[ 5.820000] hub 2-0:1.0: USB hub found
[ 5.820000] hub 2-0:1.0: 2 ports detected
[ 5.830000] usbcore: registered new interface driver usbserial
[ 5.840000] USB Serial support registered for generic
[ 5.840000] usbcore: registered new interface driver usbserial_generic
[ 5.850000] usbserial: USB Serial Driver core
[ 5.850000] USB Serial support registered for GSM modem (1-port)
[ 5.860000] usbcore: registered new interface driver option
[ 5.860000] option: v0.7.2:USB Driver for GSM modems
[ 5.870000] USB Serial support registered for pl2303
[ 5.870000] usbcore: registered new interface driver pl2303
[ 5.880000] pl2303: Prolific PL2303 USB to serial adaptor driver
[ 5.890000] USB Serial support registered for Sierra USB modem
[ 5.890000] usbcore: registered new interface driver sierra
[ 5.900000] sierra: v.1.7.16:USB Driver for Sierra Wireless USB modems
[ 5.900000] Software Watchdog Timer: 0.07 initialized. soft_noboot=0 soft_margin=60 sec (nowayout= 0)
[ 5.930000] u32 classifier
[ 5.930000] input device check on
[ 5.930000] Actions configured
[ 5.940000] Netfilter messages via NETLINK v0.30.
[ 5.940000] nf_conntrack version 0.5.0 (1978 buckets, 7912 max)
[ 5.950000] CONFIG_NF_CT_ACCT is deprecated and will be removed soon. Please use
[ 5.950000] nf_conntrack.acct=1 kernel parameter, acct=1 nf_conntrack module option or
[ 5.960000] sysctl net.netfilter.nf_conntrack_acct=1 to enable it.
[ 5.970000] nf_conntrack_rtsp v0.6.21 loading
[ 5.970000] nf_nat_rtsp v0.6.21 loading
[ 5.980000] ip_tables: (C) 2000-2006 Netfilter Core Team
[ 5.980000] IPP2P v0.8.2 loading
[ 5.990000] TCP bic registered
[ 5.990000] TCP cubic registered
[ 5.990000] TCP westwood registered
[ 6.000000] TCP highspeed registered
[ 6.000000] TCP hybla registered
[ 6.000000] TCP htcp registered
[ 6.010000] TCP vegas registered
[ 6.010000] TCP veno registered
[ 6.010000] TCP scalable registered
[ 6.020000] TCP lp registered
[ 6.020000] TCP yeah registered
[ 6.020000] TCP illinois registered
[ 6.020000] NET: Registered protocol family 17
[ 6.030000] 802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com>
[ 6.040000] All bugs added by David S. Miller <davem@redhat.com>
[ 6.070000] Broken NVRAM found, recovering it (Magic FFFFFFFF)
[ 6.080000] VFS: Mounted root (squashfs filesystem) readonly on device 31:2.
[ 6.090000] Freeing unused kernel memory: 148k freed
start service
starting Architecture code for pb42
[ 6.610000] Algorithmics/MIPS FPU Emulator v1.5
sh: startservice: Permission denied
sh: startservice: Permission denied
[ 6.750000] Kernel panic - not syncing: Attempted to kill init!
[ 6.760000] Rebooting in 5 seconds..

</cut>
Display posts from previous:    Page 1 of 1
Post new topic   Reply to topic    DD-WRT Forum Forum Index -> Atheros WiSOC based Hardware All times are GMT

Navigation

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You cannot download files in this forum