ID Artikel: 000073938 Jenis Konten: Pemecahan Masalah Terakhir Ditinjau: 26/06/2019

Mengapa saya melihat U-boot hang saat mengaktifkan beberapa kontroler I2C pada driver I2C?

Lingkungan

    Intel® Quartus® II Edisi Berlangganan
BUILT IN - ARTICLE INTRO SECOND COMPONENT
Deskripsi

Dalam SOCEDS 16.1 (U-boot v2013.01.01), jika Anda mengaktifkan konfigurasi multi-bus I2C dalam driver I2C seperti yang ditunjukkan di bawah ini:

#define CONFIG_I2C_MULTI_BUS 1

 

U-boot akan macet dan berhenti mencetak pesan di konsol seperti yang ditunjukkan di bawah ini:

U-Boot 2013.01.01-svn7578 (01 Feb 2019 - 14:17:54)

CPU: Altera Platform SOCFPGA

BOARD: Altera Board SOCFPGA Cyclone V

I2C:

 

Jika konfigurasi CONFIG_I2C_MULTI_BUS dihidupkan, variabel statis bus_initialized dalam driver I2C (designware_i2c.c) akan digunakan sebelum bagian BSS diinisialisasi.
Hal ini mengakibatkan operasi penulisan yang tidak terduga dan menyebabkan sistem hang.

Resolusi

Driver I2C (designware_i2c.c) telah diperbarui dalam U-boot v2015.01 yang menghapus penggunaan variabel statis dan CONFIG_I2C_MULTI_BUS.

Untuk beberapa kontroler I2C yang mendukung dalam U-boot, gunakan versi U-boot v2015.01 atau di atasnya.

Produk Terkait

Artikel ini berlaku untuk 1 produk

Perangkat yang Dapat Diprogram Intel®

1

Konten pada halaman ini adalah kombinasi terjemahan manusia dan komputer dari konten asli berbahasa Inggris. Konten ini disediakan untuk kenyamanan Anda dan hanya untuk informasi umum dan tidak boleh dianggap lengkap atau akurat. Jika ada kontradiksi antara versi bahasa Inggris halaman ini dan terjemahannya, versi bahasa Inggris yang akan mengatur dan mengendalikan. Lihat versi bahasa Inggris halaman ini.