2009-07-28 26 views
7

Phản hồi mờ nhạt ở đây khiến tôi tự hỏi this.I2C write thừa nhận bỏ phiếu trong Linux Kernel

Tôi đã gánh với một thiết bị (Analog Devices 525x) đó (từ các bảng dữ liệu, pg 16):

vô hiệu hóa giao diện I2C trong nội bộ [EEPROM] viết chu kỳ.

Đó dường như không công bằng, như trong "Tôi nhận ra chiếc ghế dài bây giờ, do đó, không sử dụng nó trong một thời gian vì tôi để cho một rip trong đệm ghế". Thành thật mà nói, tại sao đó lại là vấn đề của tôi?

Dù sao, bảng dữ liệu gợi ý rằng xác nhận bỏ phiếu là câu trả lời - nhập hạt nhân Linux ... bit Linux GPIO đã băm trình điều khiển I2C có cung cấp cơ chế để thực hiện việc này không? Về cơ bản, gửi một địa chỉ với bộ ghi bit và tiếp tục làm như vậy cho đến khi ACK xuất hiện.

Tôi đang sử dụng 2.6.14 trên ARM với trình điều khiển băm bit GPIO được chuyển về sau (từ 2.6.19 tôi nghĩ).

Trả lời

1

Nó không có vẻ quá ra khỏi kệ, nhưng

Bạn có thể sẽ cần phải nhìn vào có một lá cờ sửa đổi giao thức như Cờ I2C_M_NOSTART chỉ khác nhau, trong các bản vá lỗi của bạn. Ít nhất có một cách để làm điều đó (thừa nhận một cách lộn xộn)

Tôi hy vọng vì lợi ích của bạn, bạn không cần phải đặt một thiết bị i2c bình thường trên cùng một xe buýt.

Thành thật mà nói, các nhà cung cấp phần cứng làm những việc như thế này mọi lúc. Họ xem xét vấn đề "giải quyết" miễn là nó trở thành của bạn.

Tôi thấy rất nhiều I2C bị hỏng ở đó và bạn có thể làm cho cuộc sống đẹp hơn cho người khác.

0

Có vẻ như bạn cần phải viết lại trình điều khiển hạt nhân cho hệ thống I2C để cho phép điều này?

Ngoài ra, còn việc nâng cấp hạt nhân và xem điều gì đã xảy ra kể từ 2.6.14, đây là phiên bản hạt nhân cũ.

+0

Đó là một thứ độc quyền được vận chuyển cùng với nền tảng; nó sẽ là một nỗ lực khá lớn để chuyển tiếp tất cả các thay đổi rời rạc. 2.6.14 ++ đang hoạt động hợp lý nên không có nhiều khuyến khích ngoài những gì được đăng ở đây. – Jamie

Các vấn đề liên quan