Kernel Source - Jumping Race (Jumping Sumo?)


#1

Hi all!

I would like to cross-compile my module against Kernel headers for the Jumping Race. I am wondering if I should use the same kernel source as is used for the Jumping Sumo? I have found it here, however, I believe the intention is to eventually move it to Github here

There does not appear to be any other links for the Jumping Race, and importantly i’d like to know if not only the Kernel sources are the same for the project, but the other libraries and also the linux.config file.

I will post my findings back here when I try it out myself, but perhaps someone has already had some success with this?

Happy hacking!

==update===
So what i’m going to try… My jumping Race was compiled with:

Linux version 2.6.36-102961-gf9f11f3 (fleprince@fr-pm-intc11-prd) (gcc version 4.6.3 (Sourcery CodeBench Lite 2012.03-57) ) #1 PREEMPT Thu Feb 9 20:38:58 CET 2017

But I cannot seem do be able to download this exact version. So what i’m going to do is download the newest version and try to install the gcc compiler 4.6.3 on it).

I have found a link to the Code Sourcery documentation for this release here but it does not include the software download.

Given the lack of available build tools from Code Sourcery, i’m going back to Ubuntu 12.04 (which includes 4.6.3 compiler) and using Eclipse… more to come.


Can I install 3G module to Jumping Sumo?
#2

Finally got around to getting this to work and it does! Next will be figuring out how to run this tethered so i don’t run out of batteries all the time!!!

  1. Installed Ubuntu 12.04 (32bit) on VirtualBox - this has the correct compiler which can easily be installed (4.6.3).
  2. Install both the gcc-4.6.3 compiler and the arm toolchain
  3. Download the kernel source from the above link
    

note, the download from the above link has incorrect naming extensions. You will likely need to gunzip rather than bzip2 to extract the files.
4. copy the kernel.config file from the archive over to a file called .config in the source directory.
5. make the modules_dependancies and build the module you have created.

The module loads in my Jumping Sumo (my original minidrone), i’m going to test this on my friends Jumping Race to see if it all still works fine. I’ll post the example kernel module source and the Makefile to build it here.


#3

Update.

I just had to make a simple change to the extra info part of the kernel src version. By changing the information at the top of the Makefile in the kernel source, then doing a build I managed to get this installing into the Jumping Race drone. It does make me wonder if there is a difference between the original source for the jumping sumo and the jumping race and I just haven’t stumbled upon it yet.

2.6.36-102961-gf9f11f3 preempt mod_unload ARMv5

I needed to add “-102961-gf9f11f3” to the extra version info at the start of the Makefile in the downloaded kernel source. Otherwise i could have force loaded the module, but thats just not nice!