Kernel Hacking for IMX515 Tablet

KillerKink

Senior Member
Developer
Mar 16, 2011
361
77
I am looking to work with fellow hacker/modder/developer who are interested to get a working kernel for their imx515 tablet. It can also meant an educational discussion as part of learning process.

It my personal belief that we do not need to have the same exact imx515 hardware as most of core function of the tablet seem to be using freescale reference design.

We could at least work together to make the core compoents are workable and then help each other to potential work out their own hardware drivers.

I am no kernel expert but have some limited success in getting the freescale sources to work. I cant post the source here since Freescale need you to sign an online agreement before allowing you to download. You can get the source by creating an account.

By the way, I own an 8" resistive-based imx515 tablet.

Here's my high level accessment on the working function for my tablet based on zero modification of freescale source:

1. display - working
2. 2d/3d accleration - not sure
3. usb gadget - working
4. usb host - not working
5. power suspend - not working
6. resistive touchscreen - working
7. internal sd connected via sdhc.0- working obviously since it required for booting
8. wifi(ar6102) connected via sdhc.1 - not working
9. external sd connected via sdhc.2 - not working (source does not have sdhc.2 in the code)
10. sound - not sure
11. battery driver - not working
12. shutdown using mc13892 - not working
13. g-sensor(mma7660) - not working(source does not include the driver but there is source available in the wild but not tested)

The reason that I have not started messing with the kernel source codes is that it too massive work for me alone. A very good start is start classifying the tablet and identifying the common/uncommon hardware components.
 
Last edited:

bqq100

Member
Sep 14, 2011
2
0
The Linux kernel is distributed under the GPL so should be free to post the source code. I have the source for 2.6.31 (with 9.2 patches applied) in github. If Freescale disagrees, then their lawyers can send me a cease and desist order ;-)

https://github.com/bqq100/android_kernel_imx

O
ne interesting question is how the config files differ between devices. Can you post the .config file for your build and maybe even the stock .config file? Also which kernel Freescale SDK are you using?

Stock .config can be pulled by:
adb pull /proc/config.gz /home/user_name/android/kernel/cm-kernel/config.gz
cat config.gz | gunzip > .config
 

KillerKink

Senior Member
Developer
Mar 16, 2011
361
77
The Linux kernel is distributed under the GPL so should be free to post the source code. I have the source for 2.6.31 (with 9.2 patches applied) in github. If Freescale disagrees, then their lawyers can send me a cease and desist order ;-)

https://github.com/bqq100/android_kernel_imx

O
ne interesting question is how the config files differ between devices. Can you post the .config file for your build and maybe even the stock .config file? Also which kernel Freescale SDK are you using?

Stock .config can be pulled by:

bqq,

I do not want to get into a war on licensing issue which counterproductive. But if we should need to setup up a github, it might be good to seek clarification from freescale. Make peace not war. :)

On another note, Freescale is member of linaro and they have listed another version of their source(git.linaro.org Git) in their git repo. I have tried out their natty git which have a working usb host driver. We should be able to use that to find out why usb host does worked not in the android r10.x source. This lead me to believe that my tablet is using the reference design for the usb host and gadget port. But you should probably try it out to confirm on yours.


Yes, I am awared of the config.gz(which is how I realised that they are using richietech custom battery driver). Unfortunately, freescale release notes claim that battery status reporting is not accurate which I think also affected them. Its a good idea to consolidate that as well but we also need to do a full known hardware listing on each imx515 tablet that we want to work on. I have been using the r10.x source(currently using r10.2). r10.3 is out as well.

I will start posting the config.gz once I have access to my tablet. By the way goes your M10 have a working fastboot? If not, I can share ways that you might be able to get it working for you. Fastboot make it much easier to do kernel development. If you have a working uboot source, you can also enable framebuffer console which help but still not as good as serial console.

Update:

I have attached two copy of .config. 2.3.3-config is the stock 2.3.3 from one of the tablet which is good for reference but not so useful. One useful things is that it show use what are the new drivers that the manufacturer have developed.

r10.2-config is a bootable config from freescale r10.2 kernel source. I believe you can probably use it in r9.x but it will be better if we work on the same source.
 

Attachments

  • $2.3.3-config.zip
    15.7 KB · Views: 564
  • $r10.2-config.zip
    15.4 KB · Views: 530
Last edited:

bqq100

Member
Sep 14, 2011
2
0
Thanks I will check out the .config file you posted and see if/how it differs from the one I was using to build the kernel.

Right now my focus is really on getting gingerbread to work on 2.6.31 since I'm already most of the way there and I've had so little success with 2.6.35 and source built kernels.

Personally I'm quite happy with the way I've been flashing using MfgTool. I have profiles setup individually for kernel, u-boot, and system so I can flash one at a time without losing /data. Do you think there are any other advantages of fastboot?

How do you enabled framebuffer console in u-boot? I currently have u-boot working from source so I'd like to give that a try. Also I've tried both stock and source u-boot's with a source built kernel and neither work (both u-boots work with stock kernel).
 

KillerKink

Senior Member
Developer
Mar 16, 2011
361
77
the console device should be "tty0" and your kernel should already have the framebuffer console compiled in.

btw, it look like the response is lukewarm so I will shelf it in the mean time until I find the energy/time to pursue it.
 
Last edited:

Fox1

Member
Nov 6, 2011
1
0
Any news?
How to compile it?
I've a 9.7 version. The Tablet should work without Li-ion. Now it shutdown always.
Thanks
Fox1
 

KillerKink

Senior Member
Developer
Mar 16, 2011
361
77
Any news?
How to compile it?
I've a 9.7 version. The Tablet should work without Li-ion. Now it shutdown always.
Thanks
Fox1

Dont think anyone is working on the kernel. Huge tasks and especially difficult without hardware schematics.
 
Top