2009-07-28 14 views
7

Nielegalna odpowiedź tutaj sprawiła, że ​​zastanawiam się this.I2C odpytywanie polub w Linuksie

ja już obarczony urządzenia (Analog Devices 525x) że (w karcie, str 16)

wyłącza interfejsu I2C w wewnętrznym [EEPROM] cyklu zapisu.

To nie wydaje się sprawiedliwe, jak w „Dostaję się z kanapy teraz, więc nie używaj go na chwilę, bo niech jeden rip w siedzisku”. Szczerze mówiąc, dlaczego to był mój problem?

W każdym razie, karta katalogowa sugeruje, że odpowiedzią jest odpytywanie - wejście do jądra systemu Linux ... czy bitowy sterownik GPIO systemu Linux GPIO zapewnia mechanizm do tego? Zasadniczo wyślij adres z ustawionym bitem zapisu i rób tak, aż pojawi się ACK.

Używam 2.6.14 na ARM z powrotem przeniesiony bitowy sterownik GPIO (od 2.6.19 myślę).

Odpowiedz

1

Nie wydaje się zbyt półki, ale

Prawdopodobnie będzie trzeba spojrzeć na konieczności modyfikacji protokołu flagę jak flagą I2C_M_NOSTART tylko innym, w swoich poprawek. Przynajmniej jest sposób, aby to zrobić (wprawdzie niechlujnie)

Mam nadzieję, że nie musisz umieszczać normalnego urządzenia i2c na tym samym autobusie.

Szczerze mówiąc, dostawcy sprzętu robią takie rzeczy przez cały czas. Uważają, że problem został "rozwiązany", o ile stanie się on twój.

Widzę dużo uszkodzonego I2C, a Ty możesz sprawić, że życie będzie przyjemniejsze dla innych ludzi.

0

Wygląda na to, że trzeba przepisać sterownik jądra dla systemu I2C, aby to umożliwić?

Co się stanie, jeśli chodzi o aktualizację jądra i zobacz, co się stało od wersji 2.6.14, która jest już dość starą wersją jądra.

+0

To zastrzeżona rzecz dostarczana z platformą; byłoby całkiem sporo wysiłku, aby przesłać do portu wszystkie dyskretne zmiany. 2.6.14. ++ zachowuje się rozsądnie, więc nie ma zbytniej motywacji poza tym, co tu zamieszczono. – Jamie