Add eMMC support for TH1520 boards

On Thu, Sep 21, 2023 at 8:51 PM Drew Fustini <dfustini@baylibre.com> wrote:
>
> This series adds support for the eMMC on the BeagleV Ahead and the
> Sipeed LicheePi 4A. This allows the kernel to boot with the rootfs on
> eMMC.
>
> I tested on top of v6.6-rc2 with this config [1]. I was able to boot
> both the Ahead [2] and LPi4a [3] from eMMC. The following prerequisites
> are required:
>
> [PATCH v2] riscv: dts: thead: set dma-noncoherent to soc bus [4]
>
> I pushed a branch [5] with this patch series and the above patch for
> those that find a git branch easier to test.
>
> Please note that only the MMC controller connected to the eMMC device
> is enabled in the device trees for these two boards. I did not yet
> attempt to configure and use the microSD card slot. My preference is to
> address that in a future patch series.
>
> References:
> [1] gist.github.com/pdp7/5fbdcf2a65eb1abdd3a29d519c19cdd2
> [2] gist.github.com/pdp7/91a801a5f8d1070c53509eda9800ad78
> [3] gist.github.com/pdp7/1445c3c991e88fd69c60165cef65726a
> [4] lore.kernel.org/linux-riscv/20230912072232.2455-1-jszhang@kernel.org/
> [5] github.com/pdp7/linux/tree/b4/th1520-mmc

This patchset came out very nice!

v6.6-rc2 with Last RFC v2:

[ 4.066630] mmc0: SDHCI controller on ffe7080000.mmc
[ffe7080000.mmc] using PIO

debian@BeagleV:~$ sudo hdparm -tT /dev/mmcblk0

/dev/mmcblk0:
Timing cached reads: 1516 MB in 2.00 seconds = 758.09 MB/sec
Timing buffered disk reads: 84 MB in 3.01 seconds = 27.94 MB/sec

vs v6.6-rc2 with this patchset:

[ 4.096837] mmc0: SDHCI controller on ffe7080000.mmc
[ffe7080000.mmc] using DMA

debian@BeagleV:~$ sudo hdparm -tT /dev/mmcblk0

/dev/mmcblk0:
Timing cached reads: 1580 MB in 2.00 seconds = 790.97 MB/sec
Timing buffered disk reads: 418 MB in 3.00 seconds = 139.11 MB/sec

Regards,


Robert Nelson
rcn-ee.com/

Read more here: Source link