Hi Jay Eggert,

Reg: v4l2_driver: Unknown symbol video_devdata

 Please follow the steps provided in v4l2 kernel inbuilt configuration
selection from user-manual (refer figures provided in the manual).

 If you wish to load the v4l2 layer using module.
Then please follow this steps

modprobe videodev
This command will need following modules available in
/lib/modules/<kernel_ver>/driver/media/video

1. videodev.ko
2. v4l1_compat.ko

Reg: appropriate change in the "phys_end_kernel"

   Reserved memory layout got changed in the newer version of camera driver.

 /*
 * Modified version:
 * etc/rc5.d/S30gstti-init
 *
 * # Start Addr    Size    Description
 * # -------------------------------------------
 * # 0x80000000    93 MB   Linux
 * # 0x85D00000     6 MB   e-con camera
 * # 0x86300000    16 MB   CMEM
 * # 0x87300000    13 MB   CODEC SERVER
 */

To make the version 5.0 camera driver load successfully make the u-boot memory argument look like this instead of mem=122M

    mem=93M@0x80000000 mem=128M@0x88000000

Note:
  Camera driver Version 5.0 have a specific feature of using dynamic reserved memory allocation at loading time.

Example:
    insmod v4l2_driver.ko phy_addr_start=0x85D00000 phy_addr_end=0x862FFFFF

Reg:
Function        : init_plat_res
    Make use of .config provided in the deliverable and select the kenrel configuration accordingly. It seams the patch not applied successfully

Note:
  These informations are already shared in the old nabble forums in the following links
    1. http://old.nabble.com/Econ-camera---i2c-bus-td29601984.html
    2. http://old.nabble.com/Econ-Camera-driver-problem-td28901585.html

Thanks and regards,
Ananth
.

On Thursday 18 November 2010 08:14 PM, Jay Eggert wrote:
 Hi everyone, and particularly the e-con people;

I'm having a problem installing the e-con camera driver Version 5.0 with;
kernel 2.6.34-r90, a slightly modified omap3-desktop-image, and an Overo
Fire / Tobi processor.

Per the user guide I applied the patch, configured the kernel, and compiled
the driver with no problems except for two warnings from the compile which I
believe are harmless(?) 
      WARNING: modpost: Found 2 section mismatch(es).
      To see full details build your kernel with:
       'make CONFIG_DEBUG_SECTION_MISMATCH=y'

However, when I try the "insmod v4l4_driver.ko" command I have the following
two issues:

First I found that I needed to do a #modprobe videodev command, before
issuing the insmod command, without it I get the following errors: 
     v4l2_driver: Unknown symbol video_devdata
     v4l2_driver: Unknown symbol video_unregister_device
     v4l2_driver: Unknown symbol video_device_alloc
     v4l2_driver: Unknown symbol video_register_device
     v4l2_driver: Unknown symbol video_usercopy
     v4l2_driver: Unknown symbol video_device_release
Again I expect this is normal and I'll use modprobe to do the final boot
install, which should take care of this.

Second, and most important,  is that when I then do the insmod it fails with
the  dmesg output shown below.

As you can see it is complaining about an overlap between the camera
reserved area and the kernel physical memory space. 

I have tried both mem=122M and mem=120M settings in the boot arguments and
saw an appropriate change in the "phys_end_kernel" value. But I think I
would need to take it down to 78M to eliminate the error - which does not
seem reasonable. 

So, any ideas and/or fixes come to mind?

Thanks,
Jay Eggert

Boot arguments:
mem=120M
i2carg=3,100
mmcargs=setenv bootargs console=ttyS2,115200n8 mpurate=500 vram=12M mem=120M
i2c_bus=3,100 omapfb.mode=dvi:1024x768MR-16@60 omapfb.debug=y
omapdss.def_disp=dvi root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait

dmesg output:
Linux video capture interface: v2.00
Driver Module info : V4l2 driver module
Version info : 5.0

Memory overlap detected between camera reserved memory and kernel memory
phy_addr_start  0x85d00000 
phy_addr_end    0x862fffff 
phys_end_kernel 0x87800000 

Using Reserved memory for V4l2 driver module
>From Start address - 0x85d00000 
To End address - 0x862fffff 
<7>-------------------------------------------------------------------------------
<7>ERROR!
<7>From            : V4l2 driver module
<7>File            :
/home/vpnldev/gumstix/econ_gumstix/software/OMAP_gumstix_cam_software_ver_5.0/source/driver/init_module.c
<7>Function        : init_plat_res
<7>Line number     : 69
<7>Error name      : 1. PORT_OPEN_ERROR 2. FAIL 3.EPERM
<7>Error number Dec: -1 Hex: 0xFFFFFFFF 
<7>Reason          : 1. unknown cause of failure                            
         2. Failed to open the port may be driver is not properly inserted
or file not found                
         3. Operation not permitted
<7>------------------------------------------------------------------------------
<7>-------------------------------------------------------------------------------
<7>ERROR!
<7>From            : V4l2 driver module
<7>File            :
/home/vpnldev/gumstix/econ_gumstix/software/OMAP_gumstix_cam_software_ver_5.0/source/driver/init_module.c
<7>Function        : isp_probe_late_init
<7>Line number     : 292
<7>Error name      : 1. PORT_OPEN_ERROR 2. FAIL 3.EPERM
<7>Error number Dec: -1 Hex: 0xFFFFFFFF 
<7>Reason          : 1. unknown cause of failure                            
         2. Failed to open the port may be driver is not properly inserted
or file not found                
         3. Operation not permitted
<7>------------------------------------------------------------------------------
<7>-------------------------------------------------------------------------------
<7>ERROR!
<7>From            : V4l2 driver module
<7>File            :
/home/vpnldev/gumstix/econ_gumstix/software/OMAP_gumstix_cam_software_ver_5.0/source/driver/init_module.c
<7>Function        : cam_driver_init
<7>Line number     : 504
<7>Error name      : 1. PORT_OPEN_ERROR 2. FAIL 3.EPERM
<7>Error number Dec: -1 Hex: 0xFFFFFFFF 
<7>Reason          : 1. unknown cause of failure                            
         2. Failed to open the port may be driver is not properly inserted
or file not found                
         3. Operation not permitted
<7>------------------------------------------------------------------------------