> From: Hannu Vuolasaho <vuokkose...@gmail.com>
> Date: Wed, 13 Dec 2017 21:51:43 +0200
> 
> Hello!
> 
> I have OpenBSD running on the RPi 3. Unfortunately SD card isn't supported
> so I run from USB stick like everybody else. My blazing fast USB stick is
> really slow on RPi :( So I have some motivation to scratch my itch.
> 
> I have some really early porting success with NetBSD SD card driver (my
> first in OpenBSD) from:
> 
> http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/arm/broadcom/bcm2835_sdhost.c?rev=1.4&content-type=text/x-cvsweb-markup&only_with_tag=MAIN
> 
> Currently it does one thing. It shows up in dmesg. I would like to have
> some help. How the bus which the NetBSD driver talks to is implemented in
> OpenBSD is the main question. Do I have to make a lot of changes for it?

Warning!  The Pi has *two* different SD/SDIO controllers.  Which one
is actually used to drive the card in the uSD slot depends on the
firmware and/or the device tree.  You probably should check that the
controller you're writing the driver for is indeed used for the uSD
slot.  I also believe only one of the controllers has a DMA engine,
which is pretty much essential for getting decent performance.  I
think the other controller can use an external DMA engine, but at that
point things become really complicated.

That said, NetBSD's SD/MMC stack is derived from OpenBSD's code so
porting drivers should be relatively easy.

Reply via email to