Ошибки MMC при выполнении настройки

Я разрабатываю драйвер MMC в Linux. Теперь моя система может стабильно загружаться через eMMC и SD-карту. Но во время загрузки я увидел некоторые ошибки, генерируемые на консоли.

[ 0.889357] mmc0: tuning execution failed: -5
[ 0.903700] mmc0: error -5 whilst initialising SD card

с некоторыми журналами отладки,

[ 0.976730] [DEBUG] mmc_sd_init_card
[ 1.143724] [DEBUG] mmc_execute_tuning
[ 1.219758] [DEBUG] tmio_mmc_execute_tuning: Tuning procedure failed = -5
[ 1.253255] [DEBUG] mmc_sd_init_uhs_card: err=-5

Ошибка возникла из-за инициализации SD-карты (UHS).

Несмотря на ошибку, я все еще мог использовать SD-карту и eMMC после завершения загрузки системы.

Я немного неоднозначно отношусь к ошибке "настройка выполнения". Кто может объяснить это и предложить исправление? Спасибо!


person Thảo M. Hoàng    schedule 12.03.2019    source источник


Ответы (1)


Более подробную информацию я искал в спецификации SD-карты.

https://www.sdcard.org/downloads/pls/index.html

И выяснить, какие патчи могут решить мою проблему.

https://patchwork.kernel.org/patch/9963437/

https://patchwork.kernel.org/patch/9998159/

На моей плате есть:

  + sdhi0: used for sdcard 4-bit bus width 
  + sdhi2: used for on-board 8bit eMMC
  + sd-uhs-sdr50: SD UHS SDR50 speed is supported
  + sd-uhs-sdr104: SD UHS SDR104 speed is supported
  + mmc-hs200-1_8v: eMMC HS200 mode(1.8V I/O) is supported
  + mmc-hs400-1_8v: eMMC HS400 mode(1.8V I/O) is supported
person Thảo M. Hoàng    schedule 13.03.2019