Hi Guennadi,
Guennadi Liakhovetski wrote:
> I uploaded my current patch-stack for the i.MX31 Camera Sensor Interface
> to http://gross-embedded.homelinux.org/~lyakh/i.MX31-20090124/ (to be
> submitted later, hopefully for 2.6.30). As stated in -base-unknown,
> these patches shall be used on top of the
> git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx.git tree
> "upstream" branch.
>
I have tested your patchset on our mx31moboard system. However, I would
like some precisions on how things should be registered.
>From what I have seen in the code and is confirmed in the log below, we
have a mx3_camera platform device that is registered and matched with
the mx3_camera driver (please note the filter drop, is that normal ?
Should some other things be registered ?)
> kobject:kobject: 'mx3_camera' (bf008008): kobject_add_internal: parent:
> 'module', set: 'module'
> kobject:kobject: 'holders' (c7963360): kobject_add_internal: parent:
> 'mx3_camera', set: ''
> kobject_uevent:kobject: 'mx3_camera' (bf008008): kobject_uevent_env
>
> kobject:kobject: 'mx3_camera' (bf008008): fill_kobj_path: path =
> '/module/mx3_camera'
> kobject:kobject: 'notes' (c79632e0): kobject_add_internal: parent:
> 'mx3_camera', set: ''
> bus:bus: 'platform': add driver mx3-camera
>
> kobject:kobject: 'mx3-camera' (c798d0c0): kobject_add_internal: parent:
> 'drivers', set: 'drivers'
> dd:bus: 'platform': driver_probe_device: matched device mx3-camera.0 with
> driver mx3-camera
> dd:bus: 'platform': really_probe: probing driver mx3-camera with device
> mx3-camera.0
> core:device: 'camera_host0': device_add
>
> kobject:kobject: 'camera_host0' (c889e07c): kobject_add_internal: parent:
> 'mx3-camera.0', set: 'devices'
> kobject_uevent:kobject: 'camera_host0' (c889e07c): kobject_uevent_env
>
> kobject_uevent:kobject: 'camera_host0' (c889e07c): kobject_uevent_env: filter
> function caused the event to drop!
> dd:driver: 'mx3-camera.0': driver_bound: bound to device 'mx3-camera'
>
> dd:bus: 'platform': really_probe: bound device mx3-camera.0 to driver
> mx3-camera
> kobject_uevent:kobject: 'mx3-camera' (c798d0c0): kobject_uevent_env
>
> kobject:kobject: 'mx3-camera' (c798d0c0): fill_kobj_path: path =
> '/bus/platform/drivers/mx3-camera'
The soc-camera also creates a bus. However, even with a capture device
driver loaded (let's say mt9m001 for instance), I have nothing in
/sys/bus/soc-camera/devices (that's where the capture devices should be
regitered thanks to the soc_camera_device_register() call if I have
understood correctly).
Furthermore, in /sys/bus/soc-camera/drivers, I only have the "dummy"
camera driver that is declared in the soc_camera.c file. Shouldn't I
have something related to mx3-camera there thanks to the the
soc_camera_host_register call (although of course the mx3-camera driver
already is registered with the mx3-camera platform_device) as you can
see it (like something related to camera_host0):
> r...@mx31moboard:~/cam_test# ls -al /sys/bus/platform/devices/mx3-camera.0/
> drwxr-xr-x3 root root0 Oct 16 13:51 .
> drwxr-xr-x9 root root0 Oct 16 13:51 ..
> lrwxrwxrwx1 root root0 Oct 16 13:52 bus ->
> ../../../bus/platform
> drwxr-xr-x2 root root0 Oct 16 13:52 camera_host0
> lrwxrwxrwx1 root root0 Oct 16 13:52 driver ->
> ../../../bus/platform/drivers/mx3-camera
> -r--r--r--1 root root 4096 Oct 16 13:52 modalias
> lrwxrwxrwx1 root root0 Oct 16 13:52 subsystem ->
> ../../../bus/platform
> -rw-r--r--1 root root 4096 Oct 16 13:52 uevent
Is all this correct so far, and I would need further declarations in my
platform devices for the things to be registered together ? I have
attached you the file where I do the initializations related to the
mx3_camera device and the sensor we want to test against so that you
can check (we are testing with a mt9m001 device atm, but we are
targeting a mt9t031 that's why the mixed names). I have tried to copy
this from what is done with the pxa.
Thank you for your explainations and best regards.
Val
--
Valentin Longchamp, PhD Student, EPFL-STI-LSRO1
valentin.longch...@epfl.ch, Phone: +41216937827
http://people.epfl.ch/valentin.longchamp
MEA3485, Station 9, CH-1015 Lausanne
/*
* Copyright (C) 2009 Valentin Longchamp, EPFL Mobots group
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published