Linux: sdtweak poll_once не работает на Pi 4

Созданный на 14 окт. 2019  ·  6Комментарии  ·  Источник: raspberrypi/linux

Когда сеть загружает pi для с dtoverlay=sdtweak,poll_once , карта все еще опрашивается, вызывая спам в журнале каждые 10 секунд:

[  144.474158] mmc0: Timeout waiting for hardware cmd interrupt.
[  144.474182] mmc0: sdhci: ============ SDHCI REGISTER DUMP ===========
[  144.474199] mmc0: sdhci: Sys addr:  0x00000000 | Version:  0x00001002
[  144.474205] mmc0: sdhci: Blk size:  0x00000000 | Blk cnt:  0x00000000
[  144.474213] mmc0: sdhci: Argument:  0x00000000 | Trn mode: 0x00000000
[  144.474221] mmc0: sdhci: Present:   0x1fff0001 | Host ctl: 0x00000001
[  144.474228] mmc0: sdhci: Power:     0x0000000f | Blk gap:  0x00000080
[  144.474234] mmc0: sdhci: Wake-up:   0x00000000 | Clock:    0x0000f447
[  144.474242] mmc0: sdhci: Timeout:   0x00000000 | Int stat: 0x00000000
[  144.474250] mmc0: sdhci: Int enab:  0x00ff1003 | Sig enab: 0x00ff1003
[  144.474257] mmc0: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000000
[  144.474262] mmc0: sdhci: Caps:      0x45ee6432 | Caps_1:   0x0000a525
[  144.474267] mmc0: sdhci: Cmd:       0x0000371a | Max curr: 0x00080008
[  144.474275] mmc0: sdhci: Resp[0]:   0x00000000 | Resp[1]:  0x00000000
[  144.474280] mmc0: sdhci: Resp[2]:   0x00000000 | Resp[3]:  0x00000000
[  144.474284] mmc0: sdhci: Host ctl2: 0x00000000
[  144.474288] mmc0: sdhci: ADMA Err:  0x00000000 | ADMA Ptr: 0x00000000
[  144.474293] mmc0: sdhci: ============================================

Все 6 Комментарий

Непосредственная причина того, что sdtweak не может установить несъемный флаг на pi4, заключается в том, что он не предназначен для:

pi<strong i="6">@raspberrypi</strong>:~ $ dtoverlay -h sdtweak
Name:   sdtweak

Info:   Tunes the bcm2835-sdhost SD/MMC driver
        N.B. This functionality is now available via the sd_* dtparams in the
        base DTB.
...

Что необходимо, так это общий sd_pollonce dtparam, который достаточно легко добавить. Тем не менее, это может быть не то, что вам нужно, потому что может плохо реагировать, когда SD-карта извлечена (или вставлена ​​​​с опозданием).

Возможно, что действительно необходимо, в дополнение к sd_pollonce , так это изменение драйвера, чтобы уменьшить спам в журнале, возможно, сделав его условным на sd_debug .

это можно решить, пожалуйста?

Я отправил обновленные файлы .dts в rpi-4.19.y, которые добавляют dtparams sd_poll_once ко всем нижестоящим .dtbs. Вы можете скачать готовую версию bcm2711-rpi-4-b.dtb здесь . Используйте с dtparam=sd_poll_once .

После использования sd_poll_once теперь не работает зеленый светодиод

Привет, @pelwell , в январе вы отправили сборку на Google Диск, которая устранила эту проблему. Есть возможность выложить патч здесь?

Как говорится в документации sdtweak, предоставляемые им функции теперь доступны через специфичные для платы dtparams:

dtparam=sd_poll_once

sdtweak фактически объявлен устаревшим и будет официально объявлен устаревшим и удаленным.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги