Quantcast
Channel: Raspberry Pi Forums
Viewing all articles
Browse latest Browse all 4151

Bare metal, Assembly language • Re: sdhost access on rpi4

$
0
0
I noticed that only emmc2 uses the `brcm,bcm2711`, and the others use `brcm,bcm2835`.
Is it because there is no emmc2 in RPi3?
RPi3 uses sdhost to drive the sd card?
the entire pi0-pi3 family only had sdhost and sdhci

originally, pi1 drove the sd with sdhci, linux already had the drivers, and it only needed one

then with the pi3, they needed SDIO for the wifi, and only sdhci worked
and the sdhost drivers got added to linux, to take over the SD card role
and i assume testing revealed sdhost was faster then sdhci, so sdhost became the default

sdhost and sdhci are 50mhz SDR
but emmc2 on the pi4 is 50mhz DDR, so it can move twice the data
emmc2 also has an 8bit bus, so the CM4 with an emmc can move double again, vs the pi4
Can the sdhci and sdhost drivers of rpi3 be used directly(or a little change) on rpi4?
yeah, the drivers should work without any changes
but some arent routed to the right pins, and will need hardware to make it work
and keep in mind, the pinmux changes

rpi4-gpio-mux.png
this is a diagram i made a few years back, on all of the pinmux stuff for the pi4

you can see how sdhost can go to bank0 or bank2
sdhci can go to bank0, bank1, bank2, or the uSD slot
and emmc2 can only go to the uSD slot

https://github.com/librerpi/rpi-open-fi ... xt#L63-L71
bit0 of 0x7e2000d0 decides if the uSD is served by emmc2 or sdhci

the red paths in the graph are used by the firmware during boot
and the green paths by linux
Thank you so much for your detailed reply! :D

Statistics: Posted by yangn0 — Fri Mar 22, 2024 5:08 am



Viewing all articles
Browse latest Browse all 4151

Trending Articles