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.
- 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@os.inf.tu-dresden.de http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers