[Gta04-owner] Camera and PVR/SGX patches for Kernel 3.7 - need help

Dr. H. Nikolaus Schaller hns at goldelico.com
Sun Jan 27 15:08:46 CET 2013


Hi all,
I have finally found some time to patch Neils 3.7 kernel to include
the OV9655 and the PVR/SGX drivers like the old hw-validation kernel
did.

And I have added the panel driver for the OpenPhoenux 3704 device.

But only the last one works.

a) the OV9655 can be compiled, modprobed and shows up in
lsmod - but nothing significant happens. It also loads nearly 10
other modules for soc_camera and v4l2.

It does neither call the driver's probe() function nor the power
on/off management code that I have added to the gta04 board
file.

Does anyone know if the camera-soc interface really works for
OMAP3? And what has to be done in addition to adding the
driver structures in the board file to initialize it?

Another note: the ov9655.c I have created is more or less a
copy of the ov9640.c which appears to have almost the same
register set - but since I have only a ov9640.h and no data
sheet, the differences in detail are not clear. So it is not clear
if the driver itself configures the camera correctly. But before
it is probed that is a lower priority obstacle.

One more note: this implementation approach is completely different
from the old hw-validation kernel, where we did have a special
TI image processing kernel driver and the ov9655 defined
there only shares some initialization bit patterns.


b) I have downloaded the latest Graphics_SDK_4_08_00_01.bin
from TI, unpacked and have done the same integration approach
as for the 2.6.32 kernel.

After fixing the Makefile and the -D options plus some (minor?) changes
to cope with kernel source changes after Linux 3.4 it finally compiled
fine, but the kernel does not boot any more:


Environment size: 2996/131068 bytes
lcm state set to deep-standby
display power off
## Booting kernel from Legacy Image at 82000000 ...
   Image Name:   Linux-3.7.0-offmode-gta04
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    3191216 Bytes = 3 MiB
   Load Address: 80008000
   Entry Point:  80008000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.

---- here it hangs ----


What I had to do is to configure video/gpudrm and PCI support to get it compiled.

Especially the PCI thing is a little weird, since the TI SDK comes with a stub
library that should replace everything from PCI. But that one doesn't compile.

After deconfiguring SGX, DRM, PCI, it still compiles and now, the kernel boots again.


The complete source tree is available here:

<http://git.goldelico.com/?p=gta04-kernel.git;a=shortlog;h=refs/heads/hw-validation-3.x>
<https://github.com/goldelico/gta04-kernel/commits/hw-validation-3.x>

(you need to actively configure SGX530 first).

Any ideas how to debug these issues? Anyone trying his/her luck?

Nikolaus



More information about the Gta04-owner mailing list