xistor 910619de4c fix missing semicolon 1 年之前
..
Makefile 426205e2a3 Added makefiles for LLVM Clang 5 年之前
Makefile.clang 9c5c2813a0 Update QEMU command in all README and Makefile 2 年之前
Makefile.gcc 9c5c2813a0 Update QEMU command in all README and Makefile 2 年之前
OLVASSEL.md 7ace64ba9f Initial commit 6 年之前
README.md 4ad8b7002a Function -> Functions 2 年之前
delays.c 910619de4c fix missing semicolon 1 年之前
delays.h 7ace64ba9f Initial commit 6 年之前
gpio.h 7ace64ba9f Initial commit 6 年之前
kernel8.img 8ce0f75b47 Recompiled with latest gcc 4 年之前
link.ld 7ace64ba9f Initial commit 6 年之前
main.c 7ace64ba9f Initial commit 6 年之前
mbox.c 214885df63 compute the mailbox cmd only once 6 年之前
mbox.h 7ace64ba9f Initial commit 6 年之前
sd.c 0c0b9a5b21 Fixed newline 6 年之前
sd.h 7ace64ba9f Initial commit 6 年之前
start.S ea4691947c Improve comments wrt stack setup 3 年之前
uart.c 8a80ab88b9 Clearified mbox call in uart per issue #49 6 年之前
uart.h 7ace64ba9f Initial commit 6 年之前

README.md

Tutorial 0B - Read Sector

So far we have linked our data (pixmap, font) to the kernel image. It is time to read data from the SD card. For this tutorial we're implementing a real driver for read sector function.

Sd.h, sd.c

Well, it would be nice to have a mailbox for reading and writing sectors, but there isn't. So we have to talk directly to the EMMC, which is tricky and boring. We have to handle all kinds of cards. But finally, we have two functions.

sd_init() initialize EMMC for SD card read.

sd_readblock(lba,buffer,num) read num blocks (sectors) from the SD card into buffer starting at sector lba.

Main

We read a block after the bss segment in memory, and then we dump it to the console. The read function will display detailed information on the EMMC communication.