Hello, My questions: Is I2C and the Real Time Clock stuff working for the MPC8540 in Kernel 2.6.10? Are there any hidden bugs/traps/features I need to tweak? Does anybody work successfully with the I2C in this configuration?
My problems: I try to get a I2C Philips PCF8563 Real Time Clock working which is connected to the I2C of my MPC8540 processor. The chip should be sw-compatible with the Epson RTC8564 component (according to the datasheets), so I tried to enable the MPC85xx I2C bus, the EPSON RTC8564 and the Kernel RTC support. I tried several configs - compiled i2c into the kernel or as a modules to load and unload them with debug=1 I cannot access /dev/misc/rtc with the hwclock (latest version=2.23): -----8<------------------------------------ hwclock -w hwclock: ioctl() (RTC_SET_TIME) to /dev/misc/rtc to set time failed, errno = Invalid argument (22). -----8<------------------------------------ Now I try to work with the modules and try to track down the problem: after a modprobe rtc8564: -----8<------------------------------------ i2c_adapter i2c-0: examining adapter i2c-core: driver unregistered: RTC8564 i2c-core: driver RTC8564 registered. i2c_adapter i2c-0: found normal i2c entry for adapter 0, addr 51 i2c_adapter i2c-0: master_xfer: with 1 msgs. Doing write 0 bytes to 0x51 - 1 of 1 messages rtc8564_attach: client=c02c1e00 rtc8564_attach: client.id=61440 i2c_adapter i2c-0: master_xfer: with 1 msgs. Doing write 2 bytes to 0x51 - 1 of 1 messages I2C: No RXAK rtc8564: cant init ctrl1 i2c-core: unregister_driver - looking for clients. i2c_adapter i2c-0: examining adapter i2c-core: driver unregistered: RTC8564 i2c_adapter i2c-0: adapter unregistered i2c-core: driver RTC8564 registered. -----8<------------------------------------ Module Size Used by rtc8564 6660 0 i2c_core 25264 1 rtc8564 -----8<------------------------------------ and after a modprobe i2c-mpc I get: -----8<------------------------------------ i2c_adapter i2c-0: found normal i2c entry for adapter 0, addr 51 i2c_adapter i2c-0: master_xfer: with 1 msgs. Doing write 0 bytes to 0x51 - 1 of 1 messages rtc8564_attach: client=c02c1200 rtc8564_attach: client.id=61440 i2c_adapter i2c-0: master_xfer: with 1 msgs. Doing write 2 bytes to 0x51 - 1 of 1 messages I2C: No RXAK rtc8564: cant init ctrl1 i2c_adapter i2c-0: registered as adapter #0 -----8<------------------------------------ Module Size Used by i2c_mpc 5376 0 rtc8564 6660 0 i2c_core 25264 2 i2c_mpc,rtc8564 -----8<------------------------------------ So, the output looks basically fine, except of the I2C: No RXAK rtc8564: cant init ctrl1 Which means that I don't get an ACK from my RTC. I connected an oscilloscope to the I2C - there is a lot of traffic. So I believe that the problem is more on the protocol side? Does somebody have any suggestions before I dig into the code? Thank you in advance! Best greets, Clemens Koller _______________________________ R&D Imaging Devices Anagramm GmbH Rupert-Mayer-Str. 45/1 81379 Muenchen Germany http://www.anagramm.de Phone: +49-89-741518-50 Fax: +49-89-741518-19