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: ============================================
sdtweak์ด pi4์ non-removable ํ๋๊ทธ๋ฅผ ์ค์ ํ์ง ๋ชปํ ์ง์ ์ ์ธ ์์ธ์ ๋ค์์ ์๋ฏธํ์ง ์๊ธฐ ๋๋ฌธ์ ๋๋ค.
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
์ ๋ํ ์กฐ๊ฑด๋ถ๋ก ๋ง๋๋ ๋ก๊ทธ ์คํธ์ ์ค์ด๊ธฐ ์ํ ๋๋ผ์ด๋ฒ ๋ณ๊ฒฝ์ผ ๊ฒ์
๋๋ค.
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์ต๋๊น?
๋ชจ๋ ๋ค์ด์คํธ๋ฆผ .dtbs์ sd_poll_once dtparams๋ฅผ ์ถ๊ฐํ๋ ์
๋ฐ์ดํธ๋ .dts ํ์ผ์ rpi-4.19.y๋ก ํธ์ํ์ต๋๋ค. ์ฌ๊ธฐ์์ bcm2711-rpi-4-b.dtb์ ๋ฏธ๋ฆฌ ๋น๋๋ ๋ฒ์ ์ ๊ฐ์ ธ์ฌ ์ ์์ต๋๋ค . dtparam=sd_poll_once
์ ํจ๊ป ์ฌ์ฉํ์ญ์์ค.
sd_poll_once
๋ฅผ ์ฌ์ฉํ ํ ์ด์ ๋
น์ LED๊ฐ ์๋ํ์ง ์์ต๋๋ค.
์๋ ํ์ธ์ @pelwell ๋์ 1์์ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ๋น๋๋ฅผ Google ๋๋ผ์ด๋ธ์ ํธ์ํ์ต๋๋ค. ์ฌ๊ธฐ์ ํจ์น๋ฅผ ๊ฒ์ํ ์ ์๋ ๊ธฐํ๊ฐ ์์ต๋๊น?
sdtweak ๋ฌธ์์์ ์ ์ ์๋ฏ์ด ์ ๊ณตํ๋ ๊ธฐ๋ฅ์ ์ด์ ๋ณด๋๋ณ dtparams๋ฅผ ํตํด ์ฌ์ฉํ ์ ์์ต๋๋ค.
dtparam=sd_poll_once
sdtweak์ ์ฌ์ค์ ๋ ์ด์ ์ฌ์ฉ๋์ง ์์ผ๋ฉฐ ๊ณต์์ ์ผ๋ก ์ฌ์ฉ๋์ง ์์ผ๋ฉฐ ์ ๊ฑฐ๋ฉ๋๋ค.