I share a document to access HW on L4 Linux.

Yunchuan Geng yunchuan.geng at nomovok.com
Wed Aug 6 12:42:06 CEST 2014


Hi L4 hackers,

Finally, solved this problem myself.
The device name should use that declared in platform_device_id in driver 
source. it was "imx1-i2c" or "imx21-i2c" rather than "imx-i2c".

-Yunchuan


On 08/06/2014 01:04 PM, Yunchuan Geng wrote:
> Hi,
>
> I realized I have make a mistake on i2c memory map and irq number.
> I corrected them, but still the same.
>
> Just update the infomation.
>
>
> IO      | P6Device: l4linux ""
> IO      |   P6Device: (noname) "L40009"
> IO      |   P6Device: imx-i2c.dev "imx-i2c.2"
> IO      | <0x145d0>    IOMEM [000000021a8000-000000021abfff 4000] 
> non-pref (3)
> IO      | <0x14628>    IRQ [00000000000046-00000000000046 1] none 
> (32bit) ()
> IO      | Real Hardware -----------------------------------
> IO      | P6Device: System Bus ""
> IO      | Hw::Device[System Bus]
> IO      |   P6Device: i2c "imx-i2c.2"
> IO      |   Hw::Device[i2c]
> IO      | <0x145d0>    IOMEM [000000021a8000-000000021abfff 4000] 
> non-pref (3)
> IO      | <0x14628>    IRQ [00000000000046-00000000000046 1] none 
> (32bit) ()
>
> .....................
>
> l4linux | Device scan:
> l4linux |   Device: (noname)
> l4linux |   Device: imx-i2c.dev
> l4linux |     MEM: 021a8000 - 021abfff
> l4linux |     IRQ: 00000046 - 00000046
> l4linux | Device scan done.
>
> --yunchuan
>
> On 08/06/2014 12:43 PM, Yunchuan Geng wrote:
>> hi, L4 hackers and Taeung,
>>
>> I am a newbie of L4Linux ,and I appreciate you share 
>> The_Guide_to_access_HW_on_L4Linux_v1.0.pdf through the following thread.
>>
>> https://os.inf.tu-dresden.de/pipermail/l4-hackers/2014/006463.html
>>
>> I followed the guide to access my i2c HW on Freescale i.MX6 Quad 
>> SABRE SD board. Got some progress, but still I can not have
>> imx-i2c driver probe function called.
>>
>> This is what I have achieved from the log.
>>
>> The I2C device is registered to IO server
>> IO      | P6Device: l4linux ""
>> IO      |   P6Device: (noname) "L40009"
>> IO      |   P6Device: imx-i2c.dev "imx-i2c.2"
>> IO      | <0x145d0>    IOMEM [000000021a8000-000000021a8fff 1000] 
>> non-pref (3)
>> IO      | <0x14628>    IRQ [0000000000002e-0000000000002e 1] none 
>> (32bit) ()
>> IO      | Real Hardware -----------------------------------
>> IO      | P6Device: System Bus ""
>> IO      | Hw::Device[System Bus]
>> IO      |   P6Device: i2c "imx-i2c.2"
>> IO      |   Hw::Device[i2c]
>> IO      | <0x145d0>    IOMEM [000000021a8000-000000021a8fff 1000] 
>> non-pref (3)
>> IO      | <0x14628>    IRQ [0000000000002e-0000000000002e 1] none 
>> (32bit) ()
>>
>>
>>
>> and the device is scaned by L4Linux
>>
>> l4linux | Device scan:
>> l4linux |   Device: (noname)
>> l4linux |   Device: imx-i2c.dev
>> l4linux |     MEM: 021a8000 - 021a8fff
>> l4linux |     IRQ: 0000002e - 0000002e
>> l4linux | Device scan done.
>>
>>
>>
>> This is what I have modified.
>> 1. Modified mach_setup.c file and double check device name is 
>> identical to that defined. which is "imx-i2c".
>> 2. Also checked argument in l4x_register_platform_device_callback() 
>> function are same as 'imx-i2c.dev', which mentioned on page 10 of the 
>> guide.
>> 3. Added i2c driver ./l4linux/drivers/i2c/busses/i2c-imx.c
>>
>> Anything else I am missing?
>>
>> I appreciate any help from you guys.
>>
>> -Yunchuan
>>
>>
>>
>> _______________________________________________
>> l4-hackers mailing list
>> l4-hackers at os.inf.tu-dresden.de
>> http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
>
>
> _______________________________________________
> l4-hackers mailing list
> l4-hackers at os.inf.tu-dresden.de
> http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers




More information about the l4-hackers mailing list